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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
ASC — Front-end rápido de descompilador de APK Android que consulta diretamente artefatos DEX compilados, extraindo classes e referências cruzadas em milissegundos sem pré-processamento. | Kitploit
Ferramentas/GitHubGitHub/mg1937/asc
Segurança AndroidAnálise EstáticaAnálise de CódigoAnálise Dinâmica de Código (DAST)Pentesting de Apps MóveisEngenharia ReversaSegurança MóvelUtilitários e FrameworksAnálise de Binários
GitHubmg1937/asc

ASC

Front-end rápido de descompilador de APK Android que consulta diretamente artefatos DEX compilados, extraindo classes e referências cruzadas em milissegundos sem pré-processamento.

2.1k28717há 3 diasRevisado 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
Ver Repositório

Droid ASC: Otimização do Compilador R8 como Primitiva de Descompilação

https://blackhat.com/europe/arsenal/schedule/index.html#droid-asc-r8-compiler-optimization-as-a-decompiler-primitive-54834

Ao descompilar APKs Android massivos, o procedimento padrão é esperar. Esperamos que as ferramentas consumam gigabytes de RAM, inflem completamente os artefatos e gastem dezenas de minutos construindo índices globais pesados e referências cruzadas... Tudo isso apenas para garantir buscas rápidas de código posteriormente, mas aqui está a contradição. Um artefato compilado já é altamente estruturado, os descompiladores modernos nunca utilizam isso, eles desperdiçam enormes quantidades de tempo e memória reconstruindo um banco de dados inflado de relacionamentos de código sobre dados já estruturados. Essa abordagem de engenharia desafia o bom senso. Quando posso extrair diretamente qualquer relacionamento de código do APK em milissegundos, esse pré-processamento ainda tem algum valor?

Em vez de forçar os descompiladores a um pré-processamento pesado, escolhemos consultar o artefato compilado diretamente como um banco de dados. Construímos um motor sem estado e sem sobrecarga que extrai e pesquisa código sob demanda em milissegundos. Neste briefing, exploraremos a engenharia subjacente necessária para contornar os gargalos tradicionais. Demonstraremos como abandonar a inflação completa sondando diretamente dentro do bitstream Deflate, construindo tabelas de consulta Huffman densas para extrair metadados principais sem tocar em blocos de dados irrelevantes. Além disso, explicaremos detalhes de otimização do compilador R8, especialmente como a realocação determinística de constantes e a deduplicação de instruções deixam para trás layouts físicos altamente concentrados, nós weaponizamos esse comportamento do compilador para executar buscas cruzadas de código entre DEX extremamente rápidas. Para mapear esses deslocamentos brutos de bytecode de volta para métodos, projetamos uma primitiva de localização de instruções O(1), alcançando resolução de métodos em tempo constante sem construir tabelas de mapeamento pesadas. Finalmente, ao atingir um alvo, o Droid ASC extrai apenas os bytecodes específicos e suas dependências, reconstruindo dinamicamente um DEX mínimo e autoconsistente inteiramente em memória para descompilação instantânea.

Demonstraremos essa arquitetura ao vivo contra um APK comercial de 352MB. O Droid ASC executa buscas globais de referências cruzadas em 1,79 segundos e descompila classes alvo em 177 milissegundos usando apenas 141MB de RAM. Ao tratar o artefato como um banco de dados somente leitura e operar com zero pré-processamento, devolvemos o descompilador à sua essência central. Ele não é mais uma ferramenta de indexação inflada, mas um motor de descompilação sob demanda extremamente rápido que redefine fundamentalmente como analisamos código compilado.

Benchmark

Benchmark

https://github.com/user-attachments/assets/4c4a6813-8561-490c-a573-ef113da861b6

Instalação

# from PyPI
pip install droidasc

# or from source
pip install .

Após a instalação, o comando CLI droidasc fica disponível globalmente:

usage: droidasc [-h] {getclass,listclass,getmanifest,findrefs} ...

ASC tooling entry.

positional arguments:
  {getclass,listclass,getmanifest,findrefs}
    getclass            Locate the target class in APK, extract one DEX in memory, then decompile.
    listclass           List classes defined across all DEX entries in APK.
    getmanifest         Decode AndroidManifest.xml from APK and print it as XML.
    findrefs            Find code references for string/type/method/field across all DEX entries in APK.

options:
  -h, --help            show this help message and exit

examples:
  droidasc app.apk --gui
  droidasc getclass app.apk Lcom/poc/Main; -o Main.java
  droidasc getclass app.apk com.poc.Main --threads 16
  droidasc listclass app.apk -o classes.txt
  droidasc listclass app.apk --prefix com.poc
  droidasc getmanifest app.apk -o AndroidManifest.xml
  droidasc findrefs app.apk string token -o string_refs.txt
  droidasc findrefs app.apk type com.poc.Main
  droidasc findrefs app.apk method onCreate --class com.poc.Main
  droidasc findrefs app.apk method notify --class MainActivity --fuzzy-class -o method_refs.txt
  droidasc findrefs app.apk field apiKey -o field_refs.txt

listclass imprime descritores de classe Dalvik na ordem de definição do APK/DEX, um por linha. Com -o, a saída é escrita no arquivo selecionado em vez de stdout. --prefix com.poc filtra por Lcom/poc; um prefixo já normalizado como Lcom/poc é mantido inalterado.

Você também pode usar python main.py como antes — ele delega para o mesmo ponto de entrada.

Patrocinadores

PatrocinadorValor
HTTChina5000¥
c01ns11.9¥
gguowang AND cococount2¥
Ylarod50.11¥

Obrigado a todos os patrocinadores pelo seu apoio!

O ASC foi construído com a esperança de que possa genuinamente ajudar todos a melhorar seu fluxo de trabalho de engenharia reversa — desde acelerar as partes tediosas até tornar o impossível algo rotineiro.

Agradecimentos

Agradecimentos ao projeto Androguard por fornecer a base de engenharia reversa Android e análise DEX usada pelo Droid ASC.

Baixar ferramenta