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.
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:
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.
Com a extensão do Quark-Engine no APKLab é possível analisar o aplicativo de forma muito mais rápida:
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.