Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
droidlysis — Ferramenta automatizada de pré-análise para aplicativos Android que desmonta amostras, extrai propriedades por meio de correspondência de padrões configurável e organiza a saída para engenharia reversa e análise de malware aceleradas. | Kitploit
Ferramentas/GitHubGitHub/cryptax/droidlysis
Segurança AndroidAnálise EstáticaEngenharia ReversaColeta de InformaçõesAnálise de MalwareSegurança Móvel
GitHubcryptax/droidlysis

droidlysis

Ferramenta automatizada de pré-análise para aplicativos Android que desmonta amostras, extrai propriedades por meio de correspondência de padrões configurável e organiza a saída para engenharia reversa e análise de malware aceleradas.

Ver Repositório
3114914há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

DroidLysis

DroidLysis é uma ferramenta de pré-análise para aplicativos Android: ela executa tarefas repetitivas e tediosas que normalmente faríamos no início de qualquer engenharia reversa. Ela descompila a amostra Android, organiza a saída em diretórios e procura por pontos suspeitos no código para analisar. A saída ajuda o engenheiro reverso a acelerar os primeiros passos da análise.

O DroidLysis pode ser usado em pacotes Android (apk), executáveis Dalvik (dex), arquivos Zip (zip), arquivos Rar (rar) ou diretórios de arquivos.

Instalando o DroidLysis

  1. Instale os pacotes de sistema necessários
sudo apt-get install default-jre git python3 python3-pip unzip wget libmagic-dev libxml2-dev libxslt-dev
  1. Instale as ferramentas de descompilação Android
  • Apktool ,
  • Baksmali, e opcionalmente
  • Dex2jar e
$ mkdir -p ~/softs
$ cd ~/softs
$ wget https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.9.3.jar
$ wget https://bitbucket.org/JesusFreke/smali/downloads/baksmali-2.5.2.jar
$ wget https://github.com/pxb1988/dex2jar/releases/download/v2.4/dex-tools-v2.4.zip
$ unzip dex-tools-v2.4.zip 
$ rm -f dex-tools-v2.4.zip 
  1. Obtenha o DroidLysis do repositório Git (preferido) ou via pip

Instale a partir do Git em um ambiente virtual Python (python3 -m venv, ou ambientes virtuais pyenv etc).

$ python3 -m venv venv
$ source ./venv/bin/activate
(venv) $ pip3 install git+https://github.com/cryptax/droidlysis

Alternativamente, você pode instalar o DroidLysis diretamente do PyPi (pip3 install droidlysis).

  1. Configure conf/general.conf. Em particular, certifique-se de alterar /home/axelle pelos diretórios apropriados.
[tools]
apktool = /home/axelle/softs/apktool_2.9.3.jar
baksmali = /home/axelle/softs/baksmali-2.5.2.jar
dex2jar = /home/axelle/softs/dex-tools-v2.4/d2j-dex2jar.sh
keytool = /usr/bin/keytool
...
  1. Execute:
python3 ./droidlysis3.py --help

Configuração

O arquivo de configuração é ./conf/general.conf (você pode mudar para outro arquivo com a opção --config). Aqui você configura a localização de várias ferramentas externas (ex: Apktool), o nome dos arquivos de padrões (por padrão ./conf/smali.conf, ./conf/wide.conf, ./conf/arm.conf, ./conf/kit.conf) e o nome do arquivo de banco de dados (usado apenas se você especificar --enable-sql)

Certifique-se de especificar os caminhos corretos para as ferramentas de descompilação, senão o DroidLysis não as encontrará.

Uso

O DroidLysis usa Python 3. Para iniciá-lo e obter opções:

droidlysis --help

Por exemplo, teste no APK do Signal:

droidlysis --input Signal-website-universal-release-6.26.3.apk --output /tmp --config /PATH/TO/DROIDLYSIS/conf/general.conf

O DroidLysis gera:

  • Um resumo no console (veja imagem acima)
  • A amostra descompactada e pré-processada em um subdiretório do seu diretório de saída. O subdiretório é nomeado usando o nome do arquivo da amostra e a soma sha256. Por exemplo, se analisarmos o aplicativo Signal e definirmos --output /tmp, a análise será escrita em /tmp/Signalwebsiteuniversalrelease4.52.4.apk-f3c7d5e38df23925dd0b2fe1f44bfa12bac935a6bc8fe3a485a4436d4487a290.
  • Um banco de dados (por padrão, SQLite droidlysis.db) contendo as propriedades que notou.

Opções

Obtenha o uso com droidlysis --help

  • A entrada pode ser um arquivo ou um diretório de arquivos para pesquisar recursivamente. O DroidLysis sabe como processar pacotes Android, executáveis DEX, ODEX e ARM, ZIP, RAR. O DroidLysis não falhará em outros tipos de arquivos (a menos que haja um bug...), mas não conseguirá entender o conteúdo.

  • Ao processar diretórios de arquivos, geralmente é muito útil mover amostras processadas para outro local para saber o que foi processado. Isso é tratado pela opção --movein. Além disso, se você estiver interessado apenas em estatísticas, provavelmente deve limpar o diretório de saída que contém informações detalhadas para cada amostra: esta é a opção --clearoutput. Se você quiser armazenar todas as estatísticas em um banco de dados SQL, use --enable-sql (veja aqui)

  • A análise do DroidLysis não inspeciona SDKs de terceiros conhecidos por padrão, ou seja, por exemplo, não reportará nenhuma atividade suspeita destes. Se você quiser que eles sejam inspecionados, use a opção --no-kit-exception. Isso geralmente cria muito mais propriedades detectadas para a amostra, pois SDKs (ex: publicidade) usam muitas APIs sinalizadas (obter localização GPS, obter IMEI, obter IMSI, HTTP POST...).

Diretório de saída da amostra (--output DIR)

Este diretório contém (quando aplicável):

  • Um AndroidManifest.xml legível
  • Recursos legíveis em res
  • Bibliotecas lib, recursos assets
  • Código Smali descompilado: smali (e outros)
  • Informações de metadados do pacote: META-INF
  • Conteúdo do pacote quando simplesmente descompactado em ./unzipped
  • Executável DEX classes.dex (e outros), e convertido para jar: classes-dex2jar.jar, e desjarrado em ./unjarred

Os seguintes arquivos são gerados pelo DroidLysis:

  • autoanalysis.md: lista cada padrão que o DroidLysis detectou e onde.
  • report.md: o mesmo que foi impresso no console

Se você não precisar que o diretório de saída da amostra seja gerado, use a opção --clearoutput.

Importar rastreadores do Exodus etc (--import-exodus)

$ python3 ./droidlysis3.py --import-exodus --verbose
Processing file: ./droidurl.pyc ...
DEBUG:droidconfig.py:Reading configuration file: './conf/./smali.conf'
DEBUG:droidconfig.py:Reading configuration file: './conf/./wide.conf'
DEBUG:droidconfig.py:Reading configuration file: './conf/./arm.conf'
DEBUG:droidconfig.py:Reading configuration file: '/home/axelle/.cache/droidlysis/./kit.conf'
DEBUG:droidproperties.py:Importing ETIP Exodus trackers from https://etip.exodus-privacy.eu.org/api/trackers/?format=json
DEBUG:connectionpool.py:Starting new HTTPS connection (1): etip.exodus-privacy.eu.org:443
DEBUG:connectionpool.py:https://etip.exodus-privacy.eu.org:443 "GET /api/trackers/?format=json HTTP/1.1" 200 None
DEBUG:droidproperties.py:Appending imported trackers to /home/axelle/.cache/droidlysis/./kit.conf

Rastreadores do Exodus que não estão presentes no seu kit.conf inicial são adicionados a ~/.cache/droidlysis/kit.conf. Compare os 2 arquivos e verifique quais rastreadores você deseja adicionar.

Banco de dados SQLite{#sqlite_database}

Se você quiser processar um diretório de amostras, provavelmente vai gostar de armazenar as propriedades que o DroidLysis encontrou em um banco de dados, para analisar e consultar facilmente os resultados. Nesse caso, use a opção --enable-sql. Isso despejará automaticamente todos os resultados em um banco de dados chamado droidlysis.db, em uma tabela chamada samples. Cada entrada na tabela é relativa a uma determinada amostra. Cada coluna são propriedades que o DroidLysis rastreia.

Por exemplo, para recuperar todos os nomes de arquivo, soma SHA256 e propriedades smali do banco de dados:

Baixar ferramenta