O malware para Android está constantemente em mudança. Quase todos os dias podemos observar diferentes campanhas que tentam distribuir malwares com o intuito de roubar dados de acesso e informações, espionar ou até mesmo exibir anúncios maliciosos. Em 2022, vimos diversos tipos de aplicativos maliciosos, desde falsos aplicativos de carteiras de criptomoedas, como foi o caso da Coinbase, até trojans bancários, ou mesmo aplicativos VPN utilizados em campanhas de espionagem.

Embora a análise de aplicativos no Android seja quase sempre uma atividade complexa, desta vez separamos novas ferramentas que podem ajudar na execução de tarefas de análise de malware.

JADX

É uma ferramenta de linha de comando com uma interface gráfica. Ela permite descompilar aplicativos APK e obter recursos como o arquivo AndroidManifest.xml. Esta ferramenta também tem um desofuscador que facilita o trabalho do analista de malware.

Jadx en acción

O Jadx em ação.

Quark-Engine

O Quark-Engine é um sistema de pontuação de malware para Android que permite que o analista tenha uma visão geral do aplicativo. O curioso sobre esta ferramenta é que os seus desenvolvedores se basearam no direito penal de Taiwan para programar a lógica de pontuação e determinar o grau de perigo que o aplicativo analisado por ter. Por exemplo, Taiwan divide esta análise em cinco etapas, portanto, o Quark-Engine divide a atividade maliciosa de uma aplicação em cinco etapas:

Cinco etapas de actividad maliciosa que evalua Quark-Engine

Cinco etapas da atividade maliciosa avaliadas pelo Quark-Engine.

Desta forma, o Quark-Engine nos dá uma primeira abordagem para descobrir quão malicioso é o aplicativo analisado.

APKLab

É uma ferramenta projetada para o Virtual Studio Code que integra outras ferramentas, tais como Quark-Engine, APKtool, JADX, entre outras. Ela facilita a análise devido a sua interface integrada, da qual é possível renomear várias classes, funções e variáveis. Além disso, com o APKLab é possível facilmente "construir" o .apk novamente com as modificações dentro do arquivo para facilitar a análise de um malware específico.

Vale lembrar que se há uma coisa que os cibercriminosos gostam de fazer, é ofuscar o código do malware - e isto não é uma exceção no Android. Mas graças à interface amigável do APKLab, o analista pode rapidamente cruzar e renomear classes e métodos.

APKLab en acción

O APKLab em ação.

Com a extensão do Quark-Engine no APKLab é possível analisar o aplicativo de forma muito mais rápida:

Extensión de Quark-Engine en APKLab

Extenção do Quark-Engine no APKLab.

Dexcalibur

A engenharia reversa é um processo complexo; entretanto, existem ferramentas como o Dexcalibur que permitem a automação da instrumentação dinâmica alavancando o Frida. O Dexcalibur analisa estaticamente, gera hooks e até mesmo salva os dados interceptados. O principal objetivo do Dexcalibur é fornecer ao analista uma ferramenta de uso simples para criar hooks e procurar padrões dentro do arquivo malicioso.

Medusa

Assim como o Dexcalibur, o Medusa é um framework escrito em Python de instrumentação binária baseada no Frida.

Através do Medusa, a automação de vários processos e técnicas pode ser modularizada durante a análise do aplicativo malicioso selecionado.

Runtime Mobile Security (RMS)

O Runtime Mobile Security (RMS) é um framework usado pelo Frida para analisar aplicativos tanto no Android quanto no iOS. Através do RMS é possível visualizar rapidamente as classes que são carregadas juntamente com seus métodos.  Desta forma, é fácil acompanhar os argumentos que são selecionados ao executar o aplicativo.

Funcionamento do Frida

Além das várias ferramentas que estão sendo projetadas para facilitar a análise de malwares no Android, é fundamental contar com um entendimento geral de como o Frida funciona, já que se trata da principal ferramenta na qual as outras ferramentas se baseiam. Para isso, confira a documentação oficial do Frida.