L'évaluation de la vulnérabilité et les tests de pénétration (VA/PT) sont courants pour toutes les applications mobiles critiques.

On comprend mieux pourquoi cette pratique recommandée pour les services en ligne a également été appliquée aux applications mobiles. Si vous installez un code qui traite des données sensibles, des transactions et des adresses IP sur des appareils non gérés - ce qui est le cas de la plupart des applications mobiles - vous devez d'abord vérifier qu'il ne présente pas de faiblesses évidentes en matière de sécurité.

Qu'est-ce que la VA/PT ?

L'évaluation des vulnérabilités analyse votre application et vous fournit un rapport sur les erreurs de codage et les oublis qui pourraient être exploités par un pirate informatique. Le test de pénétration tente, de manière contrôlée, d'exploiter les vulnérabilités. En tant que développeur de l'application, vous avez ainsi la possibilité de corriger ces faiblesses avant la publication de l'application.

Les VA/PT adoptent deux approches différentes : les tests statiques et les tests dynamiques, qui présentent tous deux des avantages et des inconvénients. Les tests statiques de sécurité des applications (SAST) analysent votre code et votre progiciel - ils lisent effectivement votre code et recherchent des modèles connus pour entraîner des faiblesses en matière de sécurité ; tandis que les tests dynamiques de sécurité des applications (DAST) exécutent votre application dans un environnement aussi proche que possible de l'environnement de production - ils examinent comment l'application interagit avec l'environnement d'exécution et vérifient si des interfaces exploitables sont exposées.

Comme les applications mobiles ne sont pas des entités fixes mais évoluent rapidement dans le temps - toutes les 2 semaines n'est pas rare - les tests VA/PT tendent à être un processus automatisé qui s'intègre dans votre pipeline de construction. Ceci est particulièrement vrai pour SAST.

Jusqu'à présent, tout va bien, alors quel est le problème ?

La plupart des solutions automatisées de VA/PT traitent votre application comme une boîte fermée. Même lorsque le service VA/PT a accès à votre code pour les tests en boîte blanche, il suppose qu'un attaquant ne peut cibler que les interfaces et les comportements externes de l'application.

Ce point de vue était peut-être valable pour les services en ligne lorsque le logiciel était installé dans l'infrastructure informatique (sur site ou cloud), mais ce n'est pas ainsi qu'un pirate voit votre application mobile. Lorsque l'application est installée sur les appareils des utilisateurs finaux, un pirate voit un livre ouvert, prêt à être désossé et manipulé. Les outils disponibles gratuitement permettent rapidement à quiconque de retirer une application d'un téléphone et de l'ouvrir.

Vulnérabilités de type "jour zéro

La rétro-ingénierie signifie qu'un pirate peut trouver dans votre code des vulnérabilités de type "zero-day" dont le VA/PT choisi n'a pas connaissance. Il peut également trouver des secrets, tels que des clés d'API et des clés cryptographiques, qui lui permettent de déverrouiller d'autres parties de votre écosystème.

Comme si cela ne suffisait pas, les malfaiteurs manipuleront le comportement de notre application. Cela prend souvent la forme d'attaques de type "man-in-the-device", où un attaquant peut prendre le contrôle de votre application en cours d'exécution.

Deux des attaques les plus courantes de l'homme dans l'appareil que Verimatrix observe actuellement sont les suivantes :

  • Les attaques par superposition: les logiciels malveillants placent une fenêtre ou un écran invisible au-dessus de l'application en cours d'exécution afin de capturer les données saisies et de siphonner les données sensibles.
  • Fermes d'émulateurs - permettant aux attaquants d'automatiser des attaques à grande échelle.

Pour fermer le livre et se défendre contre ces attaques, il faut faire en sorte que les applications se défendent elles-mêmes, en allant au-delà du renforcement des interfaces de l'application et en renforçant le code lui-même. C'est là qu'intervient le Software Shielding. Les solutions de blindage de niveau entreprise sont là pour protéger votre application une fois qu'elle est déployée dans la nature. Elles intègrent des couches de protection dans votre code - telles que l'obscurcissement avancé, les contrôles de l'environnement d'exécution et la validation de l'intégrité - afin de contrecarrer les attaques par rétro-ingénierie du code et de les empêcher d'utiliser des techniques d'homme dans l'appareil pour prendre le contrôle de l'application.

Une bonne solution de blindage professionnel transformera votre application mobile en la boîte verrouillée que votre solution VA/PT pense qu'elle est.

C'est pour ces raisons que l'OWASP Mobile Top 10 recommande de renforcer votre code et de rechercher les vulnérabilités.

VA/PT peut vous dire que votre application est vulnérable à une attaque de type man-in-the-middle ; mais vous avez besoin de Shielding pour vous défendre contre l'ingénierie inverse et les attaques de type man-in-the-device.

Pour découvrir à quel point il peut être facile de protéger votre application, pourquoi ne pas essayer Verimatrix XTD Prevent (anciennement App Shield) dès aujourd'hui ?

Découvrez comment nous pouvons vous aider à protéger votre entreprise :

- Applications mobiles et API
- Contenu vidéo
- Paiements numériques