
shannon v2.5.0
Shannon est un pentester IA autonome en boîte blanche pour les applications web et les API. Il analyse votre code source, identifie les vecteurs d'attaque et exécute de véritables exploits pour prouver les vulnérabilités avant qu'elles n'atteignent la production.
Shannon - Pentester IA par Keygraph
Shannon est un pentester IA autonome pour les applications web et les API.
Il analyse votre code source, identifie les chemins d'attaque et exécute de véritables exploits pour prouver les vulnérabilités avant qu'elles n'atteignent la production.
Ce dépôt est Shannon Open Source : l'agent complet, exécuté localement depuis votre ligne de commande.
[!TIP] Agents IA et LLM : commencez par llms.txt pour une carte concise de ce dépôt, ou utilisez llms-full.txt pour le README et la documentation combinés dans un seul fichier.
Table des matières
- Qu'est-ce que Shannon ?
- Shannon en action
- Démarrage rapide
- Capacités clés
- Éditions
- Architecture
- Documentation
- Sécurité, périmètre et limites
- Licence
- À propos de Keygraph
- Communauté et support
Qu'est-ce que Shannon ?
Shannon est un pentester IA autonome développé par Keygraph. Il effectue des tests de sécurité des applications web et de leurs API sous-jacentes en combinant l'analyse du code source avec l'exploitation en conditions réelles.
Shannon analyse le code source de votre application web pour identifier les vecteurs d'attaque potentiels, puis utilise l'automatisation du navigateur et des outils en ligne de commande pour exécuter de véritables exploits contre l'application en cours d'exécution et ses API. Seules les vulnérabilités avec une preuve de concept fonctionnelle sont incluses dans le rapport final.
Shannon est l'agent. Ce dépôt est Shannon Open Source, le pentester autonome que vous exécutez vous-même. Le même Shannon alimente également la plateforme Keygraph, le produit de pentest commercial de Keygraph. Consultez Éditions pour comparer les deux.
Pourquoi Shannon existe
Grâce à des outils comme Claude Code et Cursor, votre équipe livre du code sans interruption. Mais votre test d'intrusion ? Il n'a lieu qu'une fois par an. Cela crée une énorme lacune de sécurité. Pendant les 364 autres jours, vous pourriez livrer en production des vulnérabilités sans le savoir.
Shannon comble cette lacune en fournissant des tests d'intrusion automatisés à la demande, exécutables sur chaque build ou chaque version.
Shannon en action
Exemples de rapports de tests d'intrusion générés par Shannon Open Source sur des applications volontairement vulnérables :
| Cible | Résumé | Rapport |
|---|---|---|
| OWASP Juice Shop | 20+ vulnérabilités, notamment contournement d'authentification, injection SQL, IDOR et SSRF. | Voir le rapport |
| c{api}tal API | Environ 15 constats API de gravité critique ou élevée, notamment injection de commandes, contournement d'authentification et affectation massive. | Voir le rapport |
| OWASP crAPI | 15+ constats de gravité critique ou élevée couvrant JWT, les injections, le SSRF et les chemins d'autorisation des API. | Voir le rapport |
Démarrage rapide
Prérequis
- Docker : requis pour le conteneur worker.
- Node.js 18+ : requis pour le workflow
npxrecommandé. - Identifiants de fournisseur d'IA : Anthropic, OpenAI, xAI ou AWS Bedrock - ou tout autre fournisseur. Les modèles Claude sont recommandés. Pour les identifiants de modèles suggérés par fournisseur, ainsi que les passerelles et les URL de base personnalisées, consultez Fournisseurs d'IA.
- Garde-fous cyber validés auprès de votre fournisseur : Anthropic et OpenAI appliquent des garde-fous en temps réel aux charges de travail de cybersécurité, ce qui peut interrompre un scan en cours d'exécution. Suivez leurs instructions destinées aux testeurs de sécurité légitimes avant votre première exécution - voir Fournisseurs d'IA.
Exécuter Shannon
[!WARNING] Shannon exécute activement des exploits. Ne l'exécutez que contre des applications et des environnements que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite de test. N'exécutez pas Shannon contre des systèmes de production.
# Configure credentials with the interactive wizard.
npx @keygraph/shannon setup
# Run a pentest against a source-available target.
npx @keygraph/shannon start -u https://your-app.com -r /path/to/your-repo
Shannon récupère l'image du worker depuis Docker Hub, démarre l'infrastructure locale requise, monte le dépôt cible en lecture seule dans un conteneur worker éphémère et écrit les résultats dans un espace de travail local.
Pour les builds depuis les sources, les scans authentifiés, la configuration spécifique aux fournisseurs et les notes sur les plateformes, consultez Documentation.
[!TIP] Vous préférez utiliser un abonnement plutôt que des crédits API ?
- OpenAI Codex : la dernière version de Shannon prend en charge les abonnements ChatGPT Plus et Pro. Suivez le guide de configuration de l'abonnement OpenAI Codex pour commencer.
- Claude Code : la dernière version de Shannon ne prend pas en charge les abonnements Claude Code. Suivez le guide de configuration de l'abonnement Claude Code pour utiliser la version
1.9.0, qui est la dernière version publiée construite sur le SDK Claude Agent.
Capacités clés
- Rapports fondés sur la preuve par l'exploitation : Shannon rapporte des constats validés avec des étapes de preuve de concept reproductibles, plutôt que des alertes spéculatives.
- Planification d'attaques en boîte blanche : Shannon utilise l'analyse du code source pour guider les tests dynamiques et se concentrer sur des chemins d'attaque réalistes.
- Exécution autonome : Shannon lance la reconnaissance, l'analyse des vulnérabilités, l'exploitation et la génération de rapports à partir d'une seule commande.
- Tests authentifiés : les fichiers de configuration peuvent décrire des flux de connexion, des identifiants de test, TOTP, des flux de connexion par e-mail, des domaines d'intérêt et des règles d'engagement.
- Couverture axée sur l'OWASP : Shannon cible les problèmes exploitables d'injection, XSS, SSRF, d'authentification cassée et d'autorisation cassée.
- Espaces de travail reprenables : Shannon peut reprendre des exécutions interrompues sans relancer les agents déjà terminés.
Éditions
Shannon est proposé sous deux formes : Shannon Open Source, le pentester que vous exécutez vous-même, et la plateforme Keygraph, le produit de pentest commercial qui exécute Shannon en continu et boucle l'ensemble du cycle de vie AppSec autour de lui.
Shannon Open Source (ce dépôt) est le pentester autonome : un agent CLI pour les tests en boîte blanche fondés sur la preuve par l'exploitation d'applications web et d'API que vous possédez ou que vous êtes autorisé à tester. Il lit votre code source, planifie des attaques, exécute de véritables exploits et ne rapporte que ce qu'il peut prouver. Il s'exécute à la demande et est complet dans ce domaine. Vous le pointez vers une cible, il penteste, il rapporte.
La plateforme Keygraph est le produit de pentest continu prêt pour l'entreprise, propulsé par Shannon. Dans la plateforme Keygraph, une version améliorée de Shannon s'exécute en continu dans un environnement orchestré et durci, alimenté par la pile complète d'analyse de code de Keygraph. Autour de ce moteur, la plateforme boucle l'ensemble du cycle de vie des vulnérabilités, de l'analyse à un correctif vérifié :
- Analyser : SAST par Code Property Graph, SCA avec atteignabilité, secrets, IaC et analyse de conteneurs. Des capacités de détection de premier ordre à part entière, et un contexte qui affine les attaques de Shannon.
- Prouver : les pentests autonomes en boîte noire et en boîte blanche informée par le code transforment les constats candidats en vulnérabilités prouvées et exploitées, plutôt qu'en alertes spéculatives.
- Gérer : un enregistrement canonique par vulnérabilité et par dépôt, dédupliqué toutes sources confondues, avec propriétaire, statut, suivi des SLA, tableaux de bord et synchronisation Jira bidirectionnelle.
- Corriger et vérifier : des correctifs rédigés automatiquement et re-testés sur le code corrigé avant livraison, et intégrés à votre workflow de revue existant plutôt qu'appliqués automatiquement.
- Déployer : environnements auto-hébergés et air-gapped, accès aux modèles strictement en bring-your-own-key (BYOK), et schémas de passerelle LLM contrôlés par le client, afin que le code source, les résultats et le trafic vers les modèles restent dans votre périmètre.
Shannon est le moteur de preuve au cœur de la plateforme Keygraph. Shannon Open Source vous donne ce moteur à exécuter vous-même. La plateforme Keygraph entoure Shannon d'analyse continue, de gestion des constats, de correction, de vérification et de déploiement en entreprise.
| Étape du cycle de vie AppSec | Shannon Open Source | Plateforme Keygraph |
|---|---|---|
| Analyser | Transfert LLM basique du code source pour planifier les attaques | Analyse réelle du code source, plus Code Property Graph, SAST, SCA avec atteignabilité, secrets, IaC et conteneurs |
| Pentester et prouver | Boîte blanche uniquement, preuve par l'exploitation | Boîte blanche améliorée, plus modes boîte noire et boîte grise, exécutés en continu |
| Gérer les constats | Rapport Markdown local | Système canonique de gestion des constats : déduplication toutes sources confondues, propriétaire, SLA, tableaux de bord, synchronisation Jira et rapports PDF professionnels de qualité pentest |
| Corriger et vérifier | Correction manuelle à partir du rapport, puis re-exécution du scan complet pour vérifier | Correction automatisée : ouvre une PR avec le correctif, vérifiée par un re-test ciblé sans relancer le scan complet |
| Déployer et opérer | CLI locale et worker Docker | Auto-hébergé, air-gapped, BYOK, continu, intégrations entreprise |
| Licence et support | AGPL-3.0, communautaire | Commercial, avec support |
En savoir plus sur le site web de Keygraph, lire la vue d'ensemble technique de la plateforme Keygraph, démarrer un essai gratuit ou réserver une démo, ou contacter [email protected].
Architecture
Shannon utilise un workflow multi-agents qui combine l'analyse du code source avec l'exploitation en conditions réelles :
┌──────────────────────┐
│ Pre-Reconnaissance │
│ (source code scan) │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ Reconnaissance │
│ (attack surface │
│ mapping) │
└──────────┬───────────┘
│
▼
┌──────────┴───────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Vuln │ │ Vuln │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Exploit │ │ Exploit │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
└──────┬───────┴─────────────┘
│
▼
┌──────────────────────┐
│ Reporting │
└──────────────────────┘
Dans les grandes lignes :
- Pré-reconnaissance : identifie les frameworks, les points d'entrée, les flux de données et les surfaces d'attaque probables à partir du dépôt.
- Reconnaissance : explore l'application en cours d'exécution et corrèle le comportement runtime avec le contexte du code.
- Analyse des vulnérabilités : exécute des agents spécialisés pour l'injection, le XSS, le SSRF, l'authentification et l'autorisation.
- Exploitation : tente de véritables attaques de preuve de concept et écarte les hypothèses qui ne peuvent pas être prouvées.
- Rapport : compile les constats validés, les preuves et les recommandations de correction dans un rapport Markdown final.
Chaque scan s'exécute dans un conteneur Docker éphémère avec un espace de travail isolé et une orchestration propre à chaque invocation.
Documentation
Utilisez ces guides pour les détails opérationnels :
| Guide | À utiliser pour |
|---|---|
| Build depuis les sources et commandes CLI | Clonage, compilation, commandes courantes, chemins de sortie et développement local. |
| Configuration | Tests authentifiés, flux de connexion, règles d'engagement et filtres de rapport. |
| Fournisseurs d'IA | Sélection du modèle, fournisseurs pris en charge (Anthropic, OpenAI, xAI, AWS Bedrock et tout autre fournisseur pris en charge par Pi) et passerelles personnalisées. |
| Plateformes et réseau | Windows/WSL2, Linux, macOS, réseaux Docker, applications locales et noms d'hôte personnalisés. |
| Espaces de travail et reprise | Nommage des espaces de travail, reprise des scans interrompus et stockage des espaces de travail. |
| Sécurité et limites | Exigences d'utilisation autorisée, recommandations hors production, effets de mutation, coûts et réserves sur les modèles. |
| Couverture et feuille de route | Couverture actuelle des vulnérabilités et travaux planifiés. |
| Plateforme Keygraph | La plateforme de pentest agentique continue : analyse de code, tests en boîte noire et en boîte blanche, gestion des constats, correction, vérification et déploiement en entreprise. |
Sécurité, périmètre et limites
Shannon n'est pas un scanner passif. Ses agents d'exploitation peuvent créer des utilisateurs, soumettre des formulaires, modifier l'état de l'application, déclencher des requêtes sortantes et, d'une manière générale, affecter le système cible. Utilisez des environnements sandbox, de préproduction ou de développement local avec des données jetables.
Vous êtes responsable d'utiliser Shannon de manière légale et éthique. Ne pointez pas Shannon vers des systèmes, dépôts ou applications que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de test.
Limites importantes :
- Shannon Open Source se concentre sur les problèmes activement exploitables tels que l'injection, le XSS, le SSRF, l'authentification cassée et l'autorisation cassée. Une couverture d'analyse statique plus large, incluant les dépendances vulnérables et les configurations non sécurisées, est fournie via la plateforme Keygraph.
- Les constats nécessitent toujours une revue humaine. Les rapports générés par LLM peuvent contenir des détails peu étayés ou incorrects.
- Shannon est officiellement pris en charge avec les modèles Claude. Des modèles non-Claude plus petits, alternatifs ou relayés par un proxy peuvent être incomplets ou instables.
- Une exécution complète peut prendre environ 1 à 1,5 heure et peut engendrer des coûts d'API LLM selon le tarif du modèle et la complexité de l'application.
- Ne scannez pas de codebase non fiables ou hostiles. Les outils basés sur l'IA qui lisent le code source peuvent être exposés à des injections de prompts.
Lisez le guide complet Sécurité et limites avant d'exécuter Shannon dans un nouvel environnement.
Licence
Shannon Open Source est sous licence GNU Affero General Public License v3.0.
Une licence commerciale et entreprise est disponible pour les organisations qui ont besoin de conditions de licence différentes, d'un support commercial, d'une redistribution privée, d'une utilisation en service géré ou d'options de déploiement plus larges, y compris la plateforme Keygraph.
Pour une licence commerciale, contactez [email protected].
À propos de Keygraph
Keygraph est la société derrière Shannon. Elle développe également la plateforme Keygraph, le produit de pentest agentique commercial qui boucle l'ensemble du cycle de vie AppSec et exécute une version améliorée de Shannon comme moteur de pentest.
Communauté et support
Des permanences communautaires sont disponibles pour une aide pratique sur les bugs, les déploiements et les questions de configuration.
- US/EU : jeudi, 10 h 00 PT
- Asie : jeudi, 14 h 00 IST
- Réserver un créneau
Rejoindre Discord pour poser des questions, partager vos retours et échanger avec d'autres utilisateurs de Shannon.
Pour le moment, Keygraph n'accepte pas de contributions externes au code. Les issues sont les bienvenues pour les rapports de bugs et les demandes de fonctionnalités :
Restez connectés :
Développé par Keygraph