
Análise forense para desmontagem, remontagem, engenharia reversa e auditoria de aplicativos Android
BogusMips é escrito em Rust e permite realizar análises sobre até que ponto seu aplicativo Android pode ser desmontado. Ele permite abrir o arquivo *.apk ou *.xapk do seu aplicativo para ver até que ponto seu aplicativo pode ser desmontado.

*.apk ou *.xapk com File → Open… (⌘O / Ctrl+O), arrastando-o para a janela ou como argumento de linha de comando.classes*.dex, agrupadas por pacote Java e desmontadas para smali.resources.arsc decodificado nos arquivos res/values*/*.xml a partir dos quais foi compilado (strings, colors, dimens, styles, attrs, arrays, plurals, …) mais public.xml com todos os IDs de recursos..smali; arquivos de recursos gerados como XML; APKs contidos num XAPK como .apk.AndroidManifest.xml, res/**/*.xml) é decodificado. As referências a recursos são resolvidas para nomes (@string/app_name, @android:style/Theme), e os valores dos atributos para os seus nomes simbólicos (protectionLevel="signature").AndroidManifest.xml, resources.arsc) e o tráfego de rede HTTP/HTTPS capturado. Configurável com Grok (xAI), Gemini (Google), Claude (Anthropic), OpenAI (ChatGPT) ou qualquer endpoint personalizado compatível com OpenAI (por exemplo, Ollama, OpenRouter). O agente tem ferramentas integradas (search_package, list_nodes, read_node, list_network_flows, inspect_network_flow) para pesquisar e ler autonomamente classes, recursos e fluxos de rede capturados.
A vista Network (⇧⌘N) é um sniffer de tráfego simplificado, ao estilo do Postman. Inicia um emulador Android (AVD), encaminha o tráfego do convidado através de um proxy man-in-the-middle integrado, instala o APK/XAPK aberto, inicia-o e captura os seus pedidos HTTP e HTTPS em tempo real. Os pedidos capturados aparecem numa lista à esquerda; selecionar um mostra o seu pedido/resposta completo (cabeçalhos e corpo, pretty / raw / hex) no editor, com detalhes de temporização e conexão no painel de informações.

A descriptografia HTTPS completa requer uma imagem de emulador com root (google_apis / aosp_atd, não google_apis_playstore), porque o CA do proxy deve ser instalado como âncora de confiança do sistema. Ao iniciar, o BogusMips ativa o adb root e instala o seu CA gerado (um CA de curta duração, por sessão, em formato PEM) nos armazenamentos de confiança do sistema e do Conscrypt (APEX). No Android 14+ (API 34+), esses armazenamentos residem em namespaces de montagem por processo, pelo que o CA é colocado num diretório overlay — reetiquetado com o contexto SELinux system_security_cacerts_file (tanto os ficheiros como o diretório, caso contrário as apps ficam sem acesso) — e montado por bind sobre os armazenamentos no namespace de montagem de cada processo via nsenter. A app alvo é instalada e lançada depois disto, para que faça fork de novo e o seu HTTPS com o armazenamento de confiança do sistema seja descriptografado. Os certificados folha por host são de curta duração e enviados sem o CA na cadeia, para satisfazer clientes que impõem a validade máxima de certificado de 398 dias.
Ressalvas — o que não pode ser descriptografado: