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
android-reverse-engineering-skill — Descompila arquivos Android APK/XAPK/JAR/AAR e extrai APIs HTTP, padrões de autenticação e fluxos de chamada usando jadx, com recuperação de nomes Kotlin resistente a R8 para pesquisa de segurança e testes de penetração. | Kitploit
Ferramentas/GitHubGitHub/simoneavogadro/android-reverse-engineering-skill
Segurança AndroidAnálise EstáticaAnálise de VulnerabilidadesPentesting de Apps MóveisEngenharia ReversaTestes de Segurança de APIsColeta de InformaçõesTestes de Penetração

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
Segurança Móvel
Análise de Binários
Aprendizado e Educação
GitHubsimoneavogadro/android-reverse-engineering-skill

android-reverse-engineering-skill

Descompila arquivos Android APK/XAPK/JAR/AAR e extrai APIs HTTP, padrões de autenticação e fluxos de chamada usando jadx, com recuperação de nomes Kotlin resistente a R8 para pesquisa de segurança e testes de penetração.

Ver Repositório
6.7k73770há 8 diasRevisado pelo Kitploit

Engenharia Reversa de Android & Extração de API — skill do Claude Code

License: Apache-2.0 GitHub stars GitHub last commit

Uma skill do Claude Code que descompila arquivos Android APK/XAPK/JAR/AAR e extrai as APIs HTTP usadas pelo app — endpoints Retrofit, chamadas OkHttp, URLs hardcoded, padrões de autenticação — para que você possa documentá-los e reproduzi-los sem o código-fonte original.

Suporte de primeira classe a Kotlin: apps Android modernos são Kotlin/KMP, fortemente ofuscados com R8. Esta skill recupera os nomes originais das classes Kotlin a partir dos metadados que o R8 não consegue remover, e extrai APIs de Ktor, Apollo (GraphQL) e Koin — não apenas da stack clássica Retrofit/OkHttp. Veja Recuperação de nomes Kotlin abaixo.

Suporte a Windows / PowerShell (experimental): Os scripts *.ps1 que acompanham os scripts bash são uma contribuição recente da comunidade, ainda em fase de estabilização. Para quaisquer problemas, por favor abra uma issue neste repositório (não nos forks upstream dos contribuidores): os scripts PowerShell são mantidos aqui por @SimoneAvogadro.

Índice

  • O que faz
  • Requisitos
  • Instalação
  • Uso
  • Estrutura do Repositório
  • Referências
  • Agradecimentos
  • Aviso Legal
  • Licença

O que faz

CapacidadeDescrição
Fingerprint primeiro (Fase 0)Faça a triagem de um APK/XAPK em segundos — detecte o framework (Flutter / React Native / Cordova / Xamarin / Kotlin nativo), a stack HTTP, o nível de ofuscação e as libs nativas antes de gastar tempo com uma descompilação completa
DescompilarArquivos APK, XAPK, JAR e AAR usando jadx e Fernflower/Vineflower (engine única ou comparação lado a lado)
Recuperar nomes KotlinReconstrua os nomes originais das classes *Repository / *ViewModel / *UseCase a partir de binários ofuscados pelo R8 usando metadados Kotlin que o R8 não consegue remover
Extrair APIsRetrofit, OkHttp, Volley e stacks modernas Kotlin/KMP: Ktor, Apollo (GraphQL), Koin DI — endpoints, URLs hardcoded, cabeçalhos de autenticação, tokens e esquemas de assinatura de requisição HMAC
Rastrear fluxos de chamadaDe Activities/Fragments através de ViewModels e repositórios até as chamadas HTTP
Analisar estruturaManifest, pacotes, padrões de arquitetura
Lidar com ofuscaçãoExtração de caminhos/URLs resistente ao R8, além de estratégias para navegar na saída do ProGuard/R8

Requisitos

Obrigatórios:

  • Java JDK 17+
  • jadx (CLI)

Opcionais (recomendados):

  • Vineflower ou Fernflower — melhor saída em código Java complexo
  • dex2jar — necessário para usar o Fernflower em arquivos APK/DEX

Consulte plugins/android-reverse-engineering/skills/android-reverse-engineering/references/setup-guide.md para instruções detalhadas de instalação.

Instalação

Do GitHub (recomendado)

Dentro do Claude Code, execute:

/plugin marketplace add SimoneAvogadro/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

A skill ficará permanentemente disponível em todas as sessões futuras.

De um clone local

git clone https://github.com/SimoneAvogadro/android-reverse-engineering-skill.git

Então, no Claude Code:

/plugin marketplace add /path/to/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill

Uso

Comando slash

/decompile path/to/app.apk

Isso executa o fluxo de trabalho completo: verificação de dependências, descompilação e análise inicial da estrutura.

Linguagem natural

A skill é ativada por frases como:

  • "Decompile this APK"
  • "Reverse engineer this Android app"
  • "Extract API endpoints from this app"
  • "Follow the call flow from LoginActivity"
  • "Analyze this AAR library"

Scripts manuais

Os scripts também podem ser usados de forma autônoma:

# Check dependencies
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/check-deps.sh

# Install a missing dependency (auto-detects OS and package manager)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh jadx
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/install-dep.sh vineflower

# Fingerprint an APK/XAPK BEFORE decompiling (Phase 0 triage):
# framework, HTTP stack, obfuscation level, native libs, notable SDKs
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/fingerprint.sh app.apk

# Decompile APK with jadx (default)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app.apk

# Decompile XAPK (auto-extracts and decompiles each APK inside)
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh app-bundle.xapk

# Decompile with Fernflower
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine fernflower library.jar

# Run both engines and compare
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/decompile.sh --engine both --deobf app.apk

# Find API calls — defaults to a full scan across every supported stack
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --retrofit
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --urls

# Modern Kotlin/KMP stacks and obfuscation-resistant extraction
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --ktor    # Ktor client
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --apollo  # Apollo / GraphQL
bash plugins/android-reverse-engineering/skills/android-reverse-engineering/scripts/find-api-calls.sh output/sources/ --paths   # quoted path literals that survive R8 inlining

Recuperação de nomes Kotlin (desofuscação R8)

A maioria dos apps Kotlin/KMP do mundo real passa pelo R8, então as classes descompiladas saem como a.b.c. O R8 renomeia os símbolos da JVM, mas não consegue remover as strings de metadados do Kotlin — o runtime do Kotlin (reflexão, corrotinas) precisa dos nomes totalmente qualificados originais em tempo de execução. Esta skill minera essas anotações @DebugMetadata / @Metadata para reconstruir um mapa de nomes de classes ofuscado → real. Em um app típico, ela recupera ~100% das classes *Repository / *ViewModel / *UseCase / *Impl que você realmente quer ler.

Baixar ferramenta