Droidefense (originalmente chamado atom: analysis through observation machine) é o codinome para aplicativos Android / análise de malware / reversing tool. Em outras palavras, o Droidefense é um framework para análise de malware em Android, construído com foco em questões de segurança e truques que o pesquisador de malware tem sobre o trabalho diário.
Para as situações em que o malware possui rotinas anti análise, o Droidefense tenta contorná-las para chegar ao código e à rotina do “malfeitor”. Às vezes, essas técnicas podem ser detecção de máquina virtual, detecção de emulador, verificação de auto certificado, pipes detection, tracer pid check e assim por diante.
O Droidefense usa uma ideia inovadora em que o código não é descompilado em vez de visualizado. Isso nos permite obter a visão global do workflow de execução do código com 100% de precisão nas informações coletadas. Com esta situação, ele gera um relatório em HTML com os resultados para uma fácil compreensão.
Recursos do Droidefense
- .apk unpacker
- .apk resource decoder
- .apk file enumeration
- Classificação e identificação de arquivo .apk
- Decodificador xml binário
- Processamento na memória usando um sistema de arquivos virtual
- Recurso de fuzzing e hashing
- Calculadora de entropia
- Code dump nativo
- Análise de certificados
- Detecção de certificado de depuração
- Análise opcode
- Detecção de opcode não utilizada
- Análise androidManifest.xml
- Análise de estrutura interna
- Análise de fluxo bytecode dalvik
- Implementação de análise multipath (não testada)
- Geração de CFG
- Simple reflection resolver
- String classification
- Geração de workflow simulado
- Mecanismo de regras dinâmicas
Módulos Droidefense
- PSCout data module
- Full Android manifest parser, baseado na documentação oficial da SDK v23
- Plugins
- Machine Learning (baseado em Weka)
Plugins Droidefense
- Plugin de detector de arquivos ELF ocultos;
- Plugin de detector de arquivos APK ocultos;
- Plugin de detecção de aplicativo UID;
- Plugin de privacidade.
Como usar o Droidefense?
TL;DR
java -jar droidefense-cli-1.0-SNAPSHOT.jar -i /path/to/your/sample.apk
Utilização detalhada do Droidefense
java -jar droidefense-cli-1.0-SNAPSHOT.jar
________ .__ .___ _____
\______ \_______ ____ |__| __| _/_____/ ____\____ ____ ______ ____
| | \_ __ \/ _ \| |/ __ |/ __ \ __\/ __ \ / \ / ___// __ \
| ` \ | \( <_> ) / /_/ \ ___/| | \ ___/| | \\___ \\ ___/
/_______ /__| \____/|__\____ |\___ >__| \___ >___| /____ >\___ >
\/ \/ \/ \/ \/ \/ \/
* Current build: 2018_03_09__09_17_34
* Check out on Github: https://github.com/droidefense/
* Report your issue: https://github.com/droidefense/engine/issues
* Lead developer: @zerjioang
usage: droidefense
-d,--debug print debugging information
-h,--help print this message
-i,--input input .apk a ser analisado
-o,--output selecione a saída preferida:
json
json.min
html
-p,--profile Aguarde o profiler da JVM
-s,--show mostrar o relatório gerado após o scan
-u,--unpacker selecione descompactador preferido:
zip
memapktool
-v,--verbose seja detalhado
-V,--version mostra a informação atual da versão
Informações úteis
Download – Droidefense
Você pode baixar o Droidfense diretamente por este link (76,9 Mb) ou acessar o projeto oficial no GitHub.
EXTRA: Não deixe de conferir
- AFD Summit 2018 – Evento sobre Investigação e Perícia Forense
- Ferramenta forense open source para extração de artefatos em sistema Mac OS X
- RFC 3227 em Português – Diretrizes para Coleta e Arquivamento de Evidências
.
* * * * *
.
Disclaimer: Todas as informações aqui contidas são para fins didáticos e não para causar danos e prejuízos para alguém, usem sempre o conhecimento aqui compartilhado com ética e responsabilidade. Não nos responsabilizamos pela utilização indevida do conteúdo aqui exposto. Leia mais no aviso legal em nosso site.
.
Tradução por Tiago Souza
Imagem deste post: banco de imagens Pixabay (TheDigitalArtist)
.