Sobre o projeto
Jadart é um descompilador Flutter que recebe um APK, IPA ou libapp.so puro e produz uma árvore de classes, corpos de métodos como pseudo-Dart, o pool de strings, tabelas de dados incorporadas e nomes de origem para chamadas virtuais. Destina-se a engenheiros reversos e revisores de segurança que auditam aplicações Flutter distribuídas, onde a compilação AOT oculta a lógica mas deixa estruturas recuperáveis.
A ferramenta enfatiza a honestidade: nunca imprime um palpite confiante. Instruções não modeladas são impressas como arm64 bruto, argumentos de chamada não reconstruíveis são impressos como (...), campos sem nome são renderizados como field_0x8, e formatos de lançamento Dart não registrados geram um erro tipado. As lacunas são visíveis por design.
As principais capacidades incluem recuperação em camadas: Tier 0 esqueletos de classe/método/campo com hierarquias de superclasse resolvidas; Tier 1 arm64 por função com alvos de chamada direta nomeados e constantes ObjectPool resolvidas; Tier 2 reconstrução de fluxo de controle em if/else e loops; Tier 3 elevação de expressões via interpretação abstrata; Tier 3.1 argumentos de chamada a partir da aridade de registradores do chamado; Tier 3.2 stubs de runtime da VM renderizados como operações de código-fonte; Tier 3.3 chamadas virtuais/de interface com deslocamentos de receptor e seletor; Tier 3.4 deslocamentos de seletor resolvidos para nomes de origem via corroboração entre classes.
Suporta Android arm64, x86_64, iOS/macOS arm64 e Android arm32 (parcial), cobrindo Dart 2.19.6 até 3.12.2 ao longo de dezoito épocas de formato. O desempenho é rápido: informações em 0,04s, exportação completa em 4,55s em fixtures de teste. Inclui portões de verificação byte-exatos, um oráculo diferencial e uma skill de agente de codificação para engenharia reversa de Flutter. A CLI oferece comandos como info, verify, classes, decompile, lift, strings, constants, xrefs, export, symbols e hook (Frida).
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.