Aikido La sécurité pentest IA s'intègre à la pile que vous utilisez déjà. Même si vous êtes attaché à votre code actuel et à vos outils de sécurité d'cloud , vous pouvez y ajouter pentest IA pour détecter les failles logiques complexes que les outils déterministes ne parviennent pas à repérer.
Si vous souhaitez approfondir vos tests d'intrusion ou tester chaque nouvelle version, vous recherchez peut-être une solution allant au-delà du recours à des testeurs manuels. Lorsque la First National Bank of America a dû tester la sécurité d'un nouveau portail client dans des délais serrés, son équipe a mis en place un test d'intrusion basé sur l'IA d'Aikido , qui s'est déroulé en moins d'une journée. Le test s'est achevé en 1 heure et 40 minutes et a permis de détecter une faille de gravité élevée, que la banque a corrigée avant la mise en service du portail. Chaque test ne prenant que quelques heures, les équipes peuvent en lancer un dès qu'une modification est apportée à l'application, et chaque test génère un rapport prêt à être utilisé pour un audit.
Les lecteurs qui sont encore en train de choisir un fournisseur devraient consulter le guide d'achat de l'pentest IA , mais si vous envisagez sérieusement d'opter pour Aikido, poursuivez votre lecture.
{{cta}}
Ce dont vous avez besoin pour réaliser un test d'intrusion IA « Aikido »
Facultatif mais recommandé : les tests « white box » (qui consistent à donner à un testeur d'intrusion IA l'accès aux référentiels connectés) permettent de détecter davantage de vulnérabilités que les tests « black box » pour un même nombre de crédits. Aikido Infinite (pentest continu) effectue des tests d'intrusion sur les différences (diffs) des nouveaux déploiements.
Commencez par un test d'intrusion
Vous n'avez pas besoin d'adopter d'autre produit d'Aikido pour réaliser un premier test d'intrusion, et tous les outils qui composent déjà votre infrastructure peuvent rester exactement où ils sont. Pour les tests d'intrusion sur les applications web et les API, la majeure partie de la configuration se résume à deux décisions : quelle application vous souhaitez tester et quels sont les domaines concernés.
Nous vous recommandons d'effectuer le test d'intrusion sur un environnement de préproduction ou de test qui reproduit fidèlement l'environnement de production, mais qui utilise des données de test. Cela permet d'isoler les tests de votre application en production et permet aux agents de mener le test dans son intégralité sans risque pour les utilisateurs réels ou les données.
Aikido vous demande également de fournir aux agents des identifiants de connexion et un compte pour chaque rôle utilisateur, par exemple un utilisateur standard et un administrateur ; ceux-ci peuvent ainsi accéder aux zones protégées de l'application et vérifier si un rôle peut accéder aux données appartenant à un autre. Sans ces identifiants, le test ne permet de voir que ce qu'un visiteur anonyme pourrait voir.
La connexion de vos dépôts est facultative, mais elle influe sur ce que le test peut détecter. Les tests « white box », qui permettent d’accéder au code source, sont bien plus approfondis que les tests qui n’y ont pas recours ; sur plus de 1 000 tests d’intrusion, les tests « white box » ont permis de détecter 7 fois plus de vulnérabilités que les tests « grey box ».
Cette profondeur s'est également confirmée dans l'expérience client de la First National Bank of America ( Aikido). La First National Bank of America a lancé son premier test d'intrusion moins d'un jour après avoir décidé d'utiliser Aikido, et l'ingénieur chargé de la gestion des identités et des accès de la banque a attribué l'impact des résultats à l'approche « boîte blanche », les agents disposant du contexte de chaque dépôt.
« Le fait de pouvoir faire analyser nos dépôts par l’ Aikido , tout en disposant de ce contexte, nous a permis d’identifier des mesures correctives très efficaces. Grâce à ces informations de fond, on obtient des résultats bien plus approfondis… Nous avons détecté [une vulnérabilité de gravité élevée] avant même qu’elle ne soit en production. C’est clairement un atout pour nous. »
Les documents de configuration présentent en détail chaque évaluation et chaque option d'accès.
Choisir les cibles du test d'intrusion
Les termes relatifs aux tests d'intrusion sont souvent utilisés de manière imprécise ; il est donc utile de partir de ce que vous souhaitez tester, puis de remonter jusqu'à la dénomination correspondante.
Si vous souhaitez effectuer des tests à chaque déploiement, ajoutez pentest continu avec Aikido Infinite
Pour les organisations qui ont besoin de tests continus, Aikido Infinite permet d’effectuer des tests d’intrusion en continu à mesure que l’application évolue. Il utilise la dernière évaluation complète comme référence et surveille les branches que vous configurez. Lorsqu’un changement semble avoir une incidence sur la sécurité, il lance des agents ciblés, soit au moment du déploiement, soit selon un calendrier que vous définissez.
Avant de l'activer, assurez-vous que les bonnes personnes disposent des autorisations nécessaires, que les branches ou le calendrier correspondent au mode de déploiement de votre équipe, que les agents peuvent toujours accéder à l'application et que vous disposez de suffisamment de crédits pour les tests prévus. Les dépôts doivent également être connectés, car Infinite les consulte pour déterminer les modifications à tester.
Comment intégrer les résultats d'pentest IA s dans votre processus de sécurité
Vos outils SAST et SCA continuent de remplir leur rôle, à savoir signaler le code à risque et les dépendances vulnérables. Le test d'intrusion répond à une autre question : ce qu'un attaquant peut réellement exploiter dans l'application en cours d'exécution. Cela inclut des failles que l'analyse statique ne peut pas détecter, comme contrôle d’accès défaillant, ou la falsification de signature électroniqueAikido que les agents ont découverte dans une application de signature de documents et qui avait échappé à l'équipe chargée des tests manuels.
Chaque vulnérabilité est validée par d’autres agents afin d’écarter les faux positifs et de confirmer qu’elle peut être exploitée ; ainsi, les résultats des tests d’intrusion peuvent être placés directement en tête de la file d’attente sans passer par une étape de triage manuel. Chaque vulnérabilité est également accompagnée d’une preuve de concept et d’instructions de reproduction, ce qui permet à un développeur de confirmer le problème sans avoir à se tourner vers l’équipe de sécurité pour obtenir des précisions. Les vulnérabilités sont classées par niveau de gravité et accompagnées d’une estimation du temps nécessaire à leur correction, ce qui permet à l’équipe de définir des priorités et de confier directement la correction aux développeurs.
Comment corriger les failles identifiées lors d'un test d'intrusion par IA et refaire les tests
Un test d'Aikido , venant s'ajouter à une liste de tâches déjà surchargée, ne fait qu'alourdir la charge de travail ; il convient donc de déterminer, avant même de lancer la première exécution, où les résultats seront consignés et qui en sera responsable. Dans une configuration simple, l'équipe crée une tâche dans son outil de suivi existant pour chaque résultat, la relie au résultat du test d' et l'attribue au développeur responsable du code concerné.
La correction passe ensuite par votre processus habituel d’ code review , puis est déployée dans l’environnement de test, où le problème est à nouveau testé. Les résultats de ces nouveaux tests vous fournissent la preuve que le problème a été résolu, ce qu’une simple pull request fusionnée ne peut pas démontrer à elle seule. Si vous souhaitez mettre en place la création automatique de tickets ou la synchronisation des statuts, testez d’abord cette fonctionnalité avec un véritable résultat de test d’intrusion avant de la déployer à l’échelle de toutes les équipes. Le guide pratique sur les tests d’intrusion dans le cadre du CI/CD couvre ce processus de bout en bout.
Ce qu'il faut déterminer avant votre premier test d'intrusion basé sur l'IA
- Portée : pour les tests d’intrusion des applications web et des API (nous aborderons d’autres domaines dans un prochain article), commencez par dresser la liste des éléments à tester, ce qui implique généralement des applications, des serveurs et des API spécifiques, ainsi que les rôles des utilisateurs qui y accèdent. Il est important d’inclure chaque rôle, car bon nombre des failles les plus graves, comme le fait qu’un utilisateur puisse accéder aux données d’un autre utilisateur, n’apparaissent que lorsque le test permet de se connecter en tant que plusieurs types d’utilisateurs. Vous devrez également décider s’il convient d’inclure l’ensemble de votre périmètre exposé à Internet ou de concentrer ce premier test sur une seule application.
- Accès : un test d'intrusion basé sur l'IA ne peut tester que ce à quoi il a accès ; il a donc besoin des identifiants de chaque rôle concerné. Vous devrez également décider s'il convient d'intégrer le code source. Avec l'accès au code, le test peut remonter jusqu'au fichier et à la ligne exacts d'une anomalie, ce qui accélère la correction. Sans cet accès, le test fonctionne comme le ferait un attaquant externe, en se basant uniquement sur l'application en cours d'exécution.
- Fréquence : un test d'intrusion ponctuel vous donne un aperçu à un moment donné, ce qui correspond souvent aux attentes d'un auditeur ou d'un client dans le cadre d'un examen de sécurité. Les tests continus liés aux déploiements vérifient chaque version dès sa mise en production ; ainsi, un nouveau terminal est testé avant même d'être en service depuis plusieurs mois. Le choix approprié dépend de la fréquence à laquelle votre application évolue et de l'identité de la personne qui demande les résultats.
- Responsabilités : Déterminez qui configure les tests, qui consulte les résultats, qui peut demander de nouveaux tests et qui valide les corrections avant même que les premiers résultats ne soient disponibles. Les résultats des tests d'intrusion concernent souvent plusieurs équipes ; le fait de clarifier ces responsabilités dès le départ évite qu'un résultat critique reste sans suite parce que chacun pensait que quelqu'un d'autre s'en était chargé.
- Coût : la tarification dépend du nombre d'évaluations que vous effectuez ou de l'intensité de vos tests continus. Comme elle est basée sur l'utilisation, vous pouvez l'adapter à l'échelle que vous avez choisie et la modifier à mesure que celle-ci évolue. Consultez la tarification actuelle des tests d'intrusion pour plus de détails.
Aikido pentest IA pour les applications web et le reste de la plateforme de sécurité « Aikido »
Un test d'intrusion basé sur l'IA d'une application web est l'une des méthodes utilisées par Aikido Security pour mettre en évidence les vulnérabilités à l'aide d'agents autonomes ; chacun d'entre eux teste des éléments que les autres ne peuvent structurellement pas tester. Les meilleurs résultats s'obtiennent en les combinant de manière hiérarchisée, afin que chacun soit exécuté là où il est le plus économique et le plus utile.
SAST Par défaut : l’ SAST e déterministe s’exécute à chaque commit et dans l’IDE, signalant les schémas connus, comme les injections, de la même manière à chaque fois. Elle est suffisamment rapide et peu coûteuse pour contrôler votre pipeline CI/CD, ce qui en fait la base sur laquelle tout le reste s’appuie. Elle ne peut toutefois pas interpréter l’intention, de sorte que les failles logiques telles que les IDOR et les « contrôle d’accès défaillant » sont laissées aux couches supérieures.
Audit de sécurité du code pour les nouvelles applications et les versions majeures : l’audit de sécurité du code analyse l’ensemble du code source, en suivant une requête depuis le gestionnaire de route jusqu’à la requête de base de données, et en vérifiant si le code fonctionne comme prévu. Il lui suffit d’accéder au dépôt pour détecter les failles logiques avant même qu’il n’y ait de cible en production sur laquelle effectuer des tests, y compris le code derrière les indicateurs de fonctionnalité et les routes réservées aux administrateurs qu’un test d’intrusion pourrait ne jamais atteindre. Cela en fait donc la première étape logique lors du développement d’une nouvelle application ou avant une mise à jour majeure.
Analyse approfondie d’ PR pour rester à jour entre deux versions : Deep PR Review applique le même raisonnement à chaque pull request, en vérifiant comment chaque modification interagit avec le code ailleurs dans le dépôt et dans les dépôts liés. Il détecte les failles logiques qui, sans cela, apparaîtraient lors du prochain test d'intrusion ou en production, alors que le développeur à l'origine de la modification se souvient encore pourquoi il l'a écrite de cette manière.
pentest IA à un rythme adapté à votre niveau de risque : le test d'intrusion vérifie tous ces éléments par rapport à l'application en cours d'exécution, et le périmètre est respecté grâce à des contrôles techniques qui limitent l'accès des agents aux cibles figurant sur la liste blanche et les empêchent d'accéder à l'environnement de production, sauf si celui-ci est délibérément inclus dans le périmètre.
La fréquence à laquelle vous effectuez ces tests dépend de vos exigences réglementaires et du niveau de sensibilité de votre secteur d’activité. La plupart des équipes effectuent des tests chaque année ou à l’occasion de mises à jour majeures, souvent pour se conformer aux normes SOC 2 ou ISO 27001. Les équipes évoluant dans des secteurs réglementés ou à haut risque, qui doivent vérifier la vulnérabilité de leur application à mesure qu’elle évolue, utilisent Aikido Infinite, qui effectue des tests à chaque déploiement, et Aikido Machine, qui exécute les mêmes tests d’intrusion sur site pour les secteurs où le code ne peut pas quitter votre réseau. Les tests d’intrusion sur le réseau externe couvrent tous les éléments exposés à Internet sous votre domaine.
Les résultats sont directement pris en compte dans les mesures correctives. Lorsque cela est possible, AutoFix propose des modifications de code pour remédier aux failles identifiées lors des tests d’intrusion ; les développeurs les examinent et les merge , puis effectuent de nouveaux tests pour vérifier que la correction a bien fonctionné. Les équipes peuvent commencer par utiliser uniquement pentest IA et ajouter les autres modules ultérieurement, comme l’a fait Tyro lorsqu’elle a intégré le reste de ses tests d’applications sur Aikido , en complément de ses tests d’intrusion.
{{walkthrough}}