Android anti-root bypass : deux approches, un même résultat
5 mars 2026
Lors d’un pentest mobile, tomber sur une application qui bloque tout accès dès qu’elle détecte un environnement rooté ou virtualisé est monnaie courante. La question qui suit est toujours la même : comment on passe outre ?
Dans ce cas client, publié dans son intégralité sur le blog de SysDream, filiale cyber de Hub One, nos consultants se sont retrouvés face à une application Android intégrant la librairie RootBeer — recommandée par l’OWASP dans son référentiel MASTG — affichant un message d’erreur explicite au démarrage dès lors que le terminal ne répond pas aux critères attendus. Objectif : contourner cette détection pour pouvoir auditer l’application dans de vraies conditions.
Deux approches ont été mises en œuvre.
- La première est statique : elle passe par la décompilation de l’APK, l’analyse du bytecode Smali et l’identification précise des instructions conditionnelles responsables de la décision de blocage. Une fois la logique comprise, une modification chirurgicale suffit, avant de recompiler et de re-signer le package pour le rendre à nouveau installable. Rien de spectaculaire dans la démarche, mais une bonne connaissance de la structure interne d’un APK et du fonctionnement de la machine virtuelle Dalvik est indispensable pour ne pas se perdre en chemin.
- La seconde approche est dynamique, et repose sur Frida, un framework d’instrumentation largement utilisé en audit mobile. Plutôt que de modifier le binaire, il s’agit ici d’intervenir directement à l’exécution : on s’attache à la fonction ciblée, on observe son comportement en temps réel, puis on force sa valeur de retour. L’application tourne, les logs internes continuent d’indiquer une détection root… mais la protection ne produit plus aucun effet. Un écart intéressant entre ce que l’application croit faire et ce qu’elle fait réellement.
Au-delà de la démonstration technique, ce cas client illustre une limite bien connue des équipes sécurité : les mécanismes anti-root et anti-VM sont des obstacles, pas des remparts. Ils s’inscrivent dans une logique de défense en profondeur et doivent être combinés à d’autres contrôles, vérification d’intégrité, anti-debug, obfuscation, Google Play Integrity API, pour avoir un impact réel sur la surface d’attaque.
L’outillage complet, les étapes détaillées et les captures sont disponibles dans l’analyse publiée sur le blog de SysDream. Une lecture utile si vous auditez des applications mobiles ou si vous cherchez à mieux comprendre ce que vaut réellement votre stack de protection Android.
Lire l’article complet sur le blog SysDream
