Prérequis pour l'analyse mobile
Vue d'ensemble
Ostorlab effectue une analyse statique, dynamique et comportementale des applications mobiles. Ces capacités utilisent un large spectre de moteurs, d'outils et de techniques pour contourner les contraintes des applications en production et évaluer leur sécurité.
Nous recommandons généralement de tester les applications avec l'ensemble des protections activées pour valider l'impact de ces protections, ainsi que de les désactiver pour comparer si des vulnérabilités supplémentaires ont été détectées ou manquées en raison de ces protections.
Mécanismes de protection affectant les tests
1. Obfuscation
L'obfuscation de code transforme le code source lisible en une version fonctionnellement équivalente mais difficile à comprendre, rendant la rétro-ingénierie (reverse engineering) plus complexe.
Impact sur les tests : L'obfuscation de code rend les traces d'appels (stack traces) difficiles à lire par les développeurs pour savoir où appliquer les correctifs.
2. Épinglage TLS
L'épinglage de certificat (TLS Pinning) valide que l'application communique uniquement avec des serveurs légitimes en codant en dur le certificat ou la clé publique du serveur attendu.
Impact sur les tests : Peut empêcher l'interception du trafic dans de très rares cas. Ostorlab dispose de contournements robustes du TLS Pinning.
3. Protection à l'exécution
Les mécanismes de protection à l'exécution détectent et empêchent les tentatives de falsification, de débogage ou d'instrumentation pendant l'exécution de l'application.
Impact sur les tests : Empêche l'instrumentation ou le patching de l'application pour l'analyse dynamique.
4. Prévention du mode développeur
Détection et blocage des paramètres de développement, du débogage USB et des connexions de débogage qui pourraient être utilisés pour l'analyse de l'application.
Impact sur les tests : Empêche l'utilisation de protocoles de débogage pour l'instrumentation de l'application.
5. Désactivation des captures d'écran
Fonctionnalité de sécurité qui empêche la capture d'écran de l'application.
Impact sur les tests : Empêche de prendre des captures d'écran et peut légèrement entraver l'exploration et le crawling automatisés de l'application.
Approche de test recommandée
- Exécuter avec toutes les protections activées
- Exécuter avec la détection du mode développeur désactivée (le cas échéant)
- Exécuter avec toutes les protections désactivées
Cette approche en trois phases garantit une évaluation de sécurité complète en validant l'efficacité des protections tout en identifiant l'ensemble des vulnérabilités potentielles.