
Analyse forensique pour le désassemblage, le réassemblage, la rétro-ingénierie et l'audit d'applications Android
BogusMips est écrit en Rust et permet d'analyser dans quelle mesure votre application Android peut être désassemblée. Il vous permet d'ouvrir le fichier *.apk ou *.xapk de votre application pour voir dans quelle mesure votre application peut être désassemblée.

*.apk ou *.xapk avec File → Open… (⌘O / Ctrl+O), en le déposant sur la fenêtre, ou comme argument en ligne de commande.classes*.dex, regroupées par paquet Java et désassemblées en smali.resources.arsc décodé dans les fichiers res/values*/*.xml à partir desquels il a été compilé (chaînes, couleurs, dimens, styles, attrs, tableaux, pluriels, …) plus public.xml avec chaque ID de ressource..smali ; les fichiers de ressources générés en XML ; les APK contenus dans un XAPK en .apk.AndroidManifest.xml, res/**/*.xml) est décodé. Les références de ressources sont résolues en noms (@string/app_name, @android:style/Theme), et les valeurs d'attributs en leurs noms symboliques (protectionLevel="signature").AndroidManifest.xml, resources.arsc) et le trafic réseau HTTP/HTTPS capturé. Configurable avec Grok (xAI), Gemini (Google), Claude (Anthropic), OpenAI (ChatGPT), ou tout endpoint personnalisé compatible OpenAI (par ex. Ollama, OpenRouter). L'agent dispose d'outils intégrés (search_package, list_nodes, read_node, list_network_flows, inspect_network_flow) pour rechercher et lire de manière autonome les classes, les ressources et les flux réseau capturés.
La vue Network (⇧⌘N) est un sniffer de trafic épuré, à la manière de Postman. Il démarre un émulateur Android (AVD), achemine le trafic de l'invité via un proxy man-in-the-middle intégré, installe l'APK/XAPK ouvert, le lance et capture ses requêtes HTTP et HTTPS en direct. Les requêtes capturées apparaissent dans une liste à gauche ; en sélectionner une affiche sa requête/réponse complète (en-têtes et corps, pretty / raw / hex) dans l'éditeur, avec les détails de timing et de connexion dans le panneau d'informations.

Le déchiffrement HTTPS complet nécessite une image d'émulateur rootable (google_apis / aosp_atd, pas google_apis_playstore), car le CA du proxy doit être installé comme ancre de confiance système. Au démarrage, BogusMips active adb root et installe son CA généré (un CA éphémère, par session, au format PEM) dans les magasins de confiance système et Conscrypt (APEX). Sur Android 14+ (API 34+), ces magasins résident dans des espaces de noms de montage par processus, le CA est donc placé dans un répertoire overlay — réétiqueté avec le contexte SELinux system_security_cacerts_file (à la fois les fichiers et le répertoire, sinon les applications se voient refuser l'accès) — et monté par bind sur les magasins dans l'espace de noms de montage de chaque processus via nsenter. L'application cible est installée et lancée après cela, afin qu'elle se fork à neuf et que son HTTPS via le magasin de confiance système soit déchiffré. Les certificats feuilles par hôte sont éphémères et envoyés sans le CA dans la chaîne, pour satisfaire les clients qui imposent la validité maximale de 398 jours des certificats.
Mises en garde — ce qui ne peut pas être déchiffré :