Shannon : L'IA de Pentest Open Source Propulsée par Claude Code

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Voici Shannon, un testeur d'intrusion IA autonome et open-source qui analyse le code et exécute
00:00:05des exploits en direct via l'automatisation du navigateur pour déceler toutes sortes de failles, du SSRF
00:00:11(Server-Side Request Forgery) au XSS (Cross-Site Scripting), en passant par l'injection SQL et bien plus encore,
00:00:17vous fournissant un rapport de sécurité complet avec zéro faux positif. Mais avec l'annonce de Claude
00:00:22Code Security et le fait que Shannon soit basé sur le SDK de Claude, ce qui empêche d'utiliser
00:00:27votre abonnement, est-il utile d'apprendre un outil qui pourrait ne pas durer ?
00:00:31Abonnez-vous et entrons dans le vif du sujet.
00:00:32Dans l'un de mes anciens jobs, nous payions des milliers de dollars à des testeurs externes avant une
00:00:38sortie majeure, pour finalement découvrir des bugs à corriger, puis nous devions refaire des tests,
00:00:43ce qui coûtait cher en temps et en argent. C'est précisément ce que Shannon vient résoudre.
00:00:48Vous pouvez lancer Shannon autant de fois que vous le souhaitez, l'intégrer à un pipeline CI/CD
00:00:53et l'exécuter automatiquement. Et comme c'est open source, c'est gratuit. Enfin, il existe une version payante
00:00:58dont nous reparlerons. Mais n'étant pas expert en sécurité, je préfère tester mon projet
00:01:03avec Shannon plutôt que de lancer Kali Linux. Voyons Shannon en action. Shannon est conçu
00:01:08avec le SDK Anthropic Agent. Vous aurez donc besoin d'une clé API Claude pour le faire fonctionner.
00:01:13L'abonnement ne fonctionnera pas, mais je l'ai installé sur un VPS via un utilisateur non-root et je vais
00:01:20le tester sur OASP Juice Shop, une application truffée de vulnérabilités pour les tests.
00:01:25J'ai déjà cloné le dépôt Shannon, ce qui est nécessaire pour l'utiliser. Et pour que cela fonctionne,
00:01:30le dépôt que vous voulez tester doit se trouver dans le répertoire “repos” de Shannon.
00:01:34J'y ai donc placé Juice Shop. Une fois le projet Juice Shop lancé,
00:01:39je vais exécuter cette commande qui se connectera à l'application locale pour les tests de navigateur
00:01:44et au dépôt interne pour scanner le code. Si c'est la première
00:01:50fois que vous lancez Shannon, comme il utilise Docker Compose, il devra d'abord
00:01:54télécharger des images depuis Docker Hub. Mais comme je l'ai déjà fait, il passe directement à la suite.
00:01:58Nous obtenons un lien vers le workflow Temporal que nous pouvons voir via l'interface web, comme ceci,
00:02:03affichant toutes les étapes. On peut aussi lancer cette commande pour voir les logs
00:02:07en temps réel, ce que je préfère car l'interface web n'est pas toujours très détaillée.
00:02:12Mais attendez, c'est quoi Temporal ? Je pensais qu'on parlait de Shannon. Eh bien,
00:02:16les tests de Shannon peuvent durer des heures selon la taille du projet, et Temporal
00:02:21assure une exécution durable, peu importe le scénario. Si votre ordinateur plante en plein test
00:02:26ou si vous manquez de crédits Cloud, vous ne perdez rien. Temporal
00:02:32mémorise exactement où vous en étiez et redémarre Shannon à ce point précis. Dites-moi
00:02:36en commentaire si vous voulez une vidéo sur Temporal, mais il orchestre aussi toutes les phases de Shannon.
00:02:42Et même s'il n'y a que cinq phases, il s'y passe énormément de choses.
00:02:47Laissez-moi vous montrer. D'abord la phase “pre-flight” qui vérifie les identifiants API,
00:02:53l'état des conteneurs Docker et l'existence du dépôt. Puis l'étape “pre-recon” qui analyse
00:03:00le code pour comprendre l'application : architecture, points d'entrée et modèles de sécurité.
00:03:05Vient ensuite l'étape de reconnaissance réelle, très différente de la précédente, car ici
00:03:12Playwright est utilisé pour naviguer dans l'application. Il va cliquer sur des boutons, remplir des formulaires
00:03:18pour observer les requêtes réseau, prendre des captures d'écran, examiner les cookies et cartographier l'appli.
00:03:24Ensuite, la phase 4 lance cinq pipelines en parallèle. On y trouve d'abord
00:03:31les vulnérabilités et exploits d'injection, puis celles liées au Cross-Site Scripting (XSS),
00:03:38suivies de l'authentification et du SSRF. Et enfin, l'autorisation : l'accès
00:03:45aux données privilégiées ou aux infos d'autrui. Tout cela s'exécute en parallèle
00:03:52sur cinq agents pour les vulnérabilités et cinq autres pour les exploits. Enfin, la phase 5
00:03:59compile le tout en un rapport complet de test d'intrusion en combinant les cinq dernières vérifications.
00:04:07Parlant de rapport, voyons où en est notre test. Après presque deux heures et demie,
00:04:12le processus est terminé. On voit ici que ça a commencé par la validation pré-vol
00:04:17avant de passer à la pré-reconnaissance, puis à l'agent de reconnaissance. Ensuite, il lance
00:04:25tous les tests de vulnérabilité : injection, XSS, autorisation, SSRF.
00:04:31Vous remarquerez que pour certains, la ligne verte n'est pas pleine. C'est parce qu'il a dû
00:04:36reessayer car j'ai manqué de crédits Cloud. On voit un chiffre “2” ici, alors que pour d'autres,
00:04:40il n'y a pas eu de nouvel essai. Ça aurait pu être plus rapide sans ces interruptions,
00:04:46mais sans doute pas moins de deux heures. Bref, après les cinq tests de vulnérabilité,
00:04:51il passe aux cinq tests d'exploitation. On voit le SSRF ici, l'exploit
00:04:56d'authentification, l'injection, etc. Une fois tout cela fini, on voit que
00:05:02l'exploit d'authentification est le plus long. L'agent de rapport finalise ensuite le tout.
00:05:07Bien sûr, on pourrait tout détailler pour voir chaque étape, mais
00:05:13je ne suis pas expert en Temporal, et la documentation en dira bien plus
00:05:17sur l'usage de la plateforme. Regardons maintenant le rapport final généré par Shannon.
00:05:22Dans le répertoire “deliverables” de notre projet Juice Shop, on voit la liste
00:05:28de tous les rapports générés. C'est bien plus que ce que je pensais. Voyons d'abord
00:05:33celui-ci, l'analyse d'authentification. Il y a un résumé en haut, et ici,
00:05:37on note que 11 vulnérabilités critiques ont été identifiées. Voyons lesquelles.
00:05:43Zéro point de terminaison d'authentification sur six n'utilisait HTTPS, ce qui est logique
00:05:47puisque je tournais en local. Il manquait aussi un contrôle de sécurité approprié.
00:05:52Et les points d'authentification n'avaient pas de limitation de débit. C'est vraiment
00:05:56détaillé. En faisant défiler, on voit précisément quels étaient les problèmes, où ils se trouvaient,
00:06:01et les points d'accès en cause. Je ne vais pas vous ennuyer avec chaque
00:06:05rapport, mais regardons le résumé appelé “Comprehensive Security Assessment Report”.
00:06:10On y trouve des détails sur le modèle utilisé et la portée du projet. En descendant,
00:06:15on voit qu'il a trouvé quatre vulnérabilités critiques d'authentification qui ont été
00:06:21pleinement exploitées, listées ici. Waouh, c'est très complet, mais regardez ça.
00:06:26Plus bas, il donne un résumé du rapport. Voici la première vulnérabilité,
00:06:31et encore plus bas, on voit exactement comment un attaquant pourrait l'exploiter. Voici la commande
00:06:38cURL exacte à lancer, avec les détails et le type d'informations extractibles.
00:06:43Ce niveau de précision existe pour chaque vulnérabilité, ce qui montre
00:06:48le sérieux de l'évaluation. Si ça vous intéresse, je mettrai un lien vers tous les
00:06:54rapports dans la description. Mais deux heures et demie, c'est très long pour que Claude Sonnet
00:06:59scanne un dépôt. Est-ce que Shannon Pro aurait pu aider ?
00:07:04Apparemment, Shannon Pro n'aide pas pour la vitesse, mais apporte d'autres fonctions comme le score CVSS,
00:07:09absent de la version gratuite. Il y a le support CI/CD, l'accès API... Et surtout,
00:07:16pour les entreprises, on y trouve tout le nécessaire, dont les rapports de conformité OWASP,
00:07:22ainsi que SOC 2 et PCI DSS. Même si deux heures et demie, c'est long, mes recherches
00:07:27montrent que le premier lancement est le plus lent, les suivants étant bien plus rapides.
00:07:32Je sais ce que vous vous dites. Presque deux heures et demie sous Claude Sonnet 4.6
00:07:37pour un seul test... Combien ça a coûté en crédits ? Disons... beaucoup.
00:07:43J'ai rechargé 66 $et il me restait environ ce montant. On a donc dépensé près de 60$ de
00:07:50crédits Claude pour ce test, ce qui est moins cher qu'un testeur humain, mais reste une somme.
00:07:55J'aurais adoré utiliser mon abonnement Claude Pro ou Max pour réduire la facture,
00:08:00ce que Claude Code Security devrait permettre à sa sortie officielle. À moins
00:08:05que l'équipe de Keygraph ne réécrive Shannon avec le SDK OpenAI ou le SDK Vercel AI,
00:08:10qui permettent d'utiliser plus de modèles. Globalement,
00:08:16si vous êtes une startup et ne voulez pas payer un testeur humain, Shannon est une
00:08:21bonne option. Pour un développeur indépendant avec peu de moyens, attendez peut-être
00:08:26de voir si votre produit trouve son public. Et puisqu'on parle d'IA et de sécurité,
00:08:30si vous voulez savoir comment installer OpenClaude en toute sécurité sur un VPS,
00:08:34regardez la vidéo suivante où je vous explique tout étape par étape.

Key Takeaway

Shannon offre une alternative automatisée et puissante aux tests d'intrusion humains en combinant l'analyse de code et l'exploitation dynamique par navigateur, bien que son coût en jetons API reste un facteur à considérer.

Highlights

Shannon est un testeur d'intrusion IA autonome et open-source capable d'exécuter des exploits en direct via Playwright.

L'outil utilise le SDK Anthropic Agent, nécessitant une clé API Claude (environ 60 $ pour un scan complet de Juice Shop).

L'intégration de Temporal permet une exécution durable des tests, gérant les interruptions comme les pannes de courant ou le manque de crédits.

Le processus se décompose en cinq phases critiques : pré-vol, pré-reconnaissance, reconnaissance active, exécution des vulnérabilités/exploits et rapport final.

Shannon génère des rapports de sécurité extrêmement détaillés incluant des commandes cURL spécifiques pour reproduire les failles.

Une version Pro existe pour les entreprises, offrant des scores CVSS et des rapports de conformité SOC 2, PCI DSS et OWASP.

Timeline

Introduction et proposition de valeur

L'animateur présente Shannon comme un agent de cybersécurité autonome capable de détecter des failles majeures telles que le SQLi, le XSS et le SSRF. Il souligne que cet outil vise à réduire les coûts prohibitifs des tests d'intrusion manuels effectués avant les sorties majeures de logiciels. En étant open-source et intégrable dans des pipelines CI/CD, Shannon permet des tests répétitifs sans frais de main-d'œuvre supplémentaire. L'auteur précise toutefois que malgré sa gratuité logicielle, l'utilisation de l'intelligence artificielle sous-jacente implique des coûts spécifiques. Cette section établit le contexte de l'utilité de l'outil pour les développeurs et les entreprises cherchant à sécuriser leurs applications.

Configuration technique et prérequis

Le fonctionnement de Shannon repose sur le SDK Anthropic Agent, ce qui impose l'utilisation d'une clé API Claude plutôt qu'un simple abonnement grand public. L'installation est illustrée sur un VPS en utilisant Docker Compose pour gérer les environnements conteneurisés. Pour le test, l'application cible OASP Juice Shop est clonée dans un répertoire spécifique afin de permettre l'analyse simultanée du code source et de l'interface web. L'utilisateur est guidé à travers le lancement des commandes initiales et la surveillance du flux de travail via l'interface Temporal ou les logs en temps réel. Cette étape est cruciale pour comprendre l'infrastructure nécessaire au déploiement de l'agent de sécurité.

Le rôle de Temporal et l'orchestration des phases

Le narrateur explique pourquoi Temporal est indispensable au fonctionnement de Shannon, agissant comme un moteur d'orchestration pour des tests pouvant durer plusieurs heures. Temporal garantit que si une interruption survient, le processus reprend exactement là où il s'était arrêté sans perdre de données. Le flux de travail se divise en cinq phases distinctes, commençant par des vérifications de pré-vol et une analyse statique de l'architecture logicielle. Ensuite, l'outil utilise Playwright pour une reconnaissance dynamique, simulant un utilisateur réel en cliquant sur des boutons et en analysant les cookies. Enfin, cinq pipelines parallèles testent simultanément différentes catégories de vulnérabilités et tentent de les exploiter activement.

Analyse des résultats et rapports de sécurité

Après un test de deux heures et demie sur Juice Shop, l'auteur examine les livrables générés dans le répertoire du projet. Le rapport final est impressionnant par sa précision, listant par exemple 11 vulnérabilités critiques liées à l'authentification et aux protocoles HTTPS. Chaque faille est accompagnée d'une preuve de concept (PoC) sous forme de commande cURL pour permettre aux développeurs de reproduire l'attaque instantanément. L'outil ne se contente pas de signaler des bogues, il explique comment l'attaquant pourrait extraire des informations sensibles. Cette profondeur d'analyse positionne Shannon comme un outil de niveau professionnel pour l'évaluation de la sécurité.

Comparaison Pro, coûts et conclusion

La vidéo se termine par une analyse de la viabilité économique de Shannon, révélant qu'un scan complet a coûté environ 60 $ en crédits Claude. L'auteur mentionne l'existence d'une version Pro qui ajoute des fonctionnalités de conformité réglementaire comme SOC 2 et PCI DSS, essentielles pour les grandes structures. Bien que le coût puisse sembler élevé pour un développeur solo, il reste bien inférieur aux tarifs pratiqués par des consultants en sécurité. Il est conseillé aux startups d'adopter cet outil pour automatiser leur défense, tout en restant attentif aux futures mises à jour qui pourraient supporter d'autres modèles d'IA moins coûteux. L'animateur conclut en proposant une vidéo complémentaire sur l'installation sécurisée d'outils IA sur un VPS.

Community Posts

View all posts