
shannon v3.1.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.
[!NOTE] Shannon 3.0 est disponible : analyse plus approfondie du code de sécurité, résultats plus rigoureusement vérifiés, CLI reconstruite, CI/CD natif, rapports PDF professionnels et SARIF.
Shannon est un pentester autonome basé sur l'IA 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. Pas d'exploit, pas de rapport.
Ce dépôt est Shannon Open Source : l'agent complet, exécuté localement depuis votre ligne de commande.
Lancer Shannon
```bash npx @keygraph/shannon@latest ``` Le lanceur interactif vous guidera à travers la configuration et votre premier pentest.[!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 en un seul fichier.
Table des matières
- Table des matières
- Qu'est-ce que Shannon ?
- Shannon en action
- Démarrage rapide
- Capacités clés
- Intégrations CI/CD
- Éditions
- Architecture
- Documentation
- Sécurité, périmètre et limitations
- Licence
- Remerciements
- À propos de Keygraph
- Communauté et support
- Questions fréquentes
- Puis-je auto-héberger Shannon ?
- Shannon prend-il en charge l'apport de sa propre clé (BYOK) ?
- Shannon produit-il du SARIF ?
- Quels fournisseurs d'IA Shannon prend-il en charge ?
- Puis-je exécuter Shannon sur un modèle local ou auto-hébergé ?
- Shannon exploite-t-il réellement les vulnérabilités, ou se contente-t-il de scanner ?
Qu'est-ce que Shannon ?
Shannon est un pentester IA autonome développé par Keygraph. Il réalise des tests de sécurité d'applications web et de leurs API sous-jacentes en combinant l'analyse du code source avec l'exploitation en direct.
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 disposant d'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 commercial de pentesting de Keygraph. Voir Éditions pour une comparaison des deux.
Pourquoi Shannon existe
Grâce à des outils comme Claude Code et Cursor, votre équipe livre du code sans arrêt. Mais votre test d'intrusion ? Il n'a lieu qu'une fois par an. Cela crée un écart de sécurité massif. Pendant les 364 autres jours, vous pourriez livrer en production des vulnérabilités sans le savoir.
Shannon comble cet écart en fournissant des tests d'intrusion automatisés à la demande, qui peuvent s'exécuter à chaque build ou release.
Pourquoi « Shannon » ?
Il porte le nom de Claude Shannon, le père de la théorie de l'information. Au fond, le pentesting est un problème d'information : chaque sonde réduit l'incertitude sur l'état d'un système. Les meilleurs outils maximisent le signal obtenu à chaque requête, transformant ces bribes de connaissance en un chemin d'exploitation.
De plus, nous voulions que vous puissiez dire : « Hey Claude, lance Shannon » pour trouver toutes les failles de sécurité dans votre application codée à la vibe.
Pas un remplacement pour les pentesters humains
Shannon est conçu pour travailler aux côtés de pentesters experts et de red teamers, pas pour les remplacer. Les grands pentesters comprennent le métier, enchaînent les attaques de manière que personne n'avait anticipée et apportent des années de jugement que les modèles actuels ne peuvent égaler.
Shannon résout un problème différent : il y a bien plus de logiciels à tester que les équipes de sécurité n'ont de temps pour le faire. Les systèmes critiques font l'objet d'évaluations périodiques par des experts, tandis que la longue traîne des applications internes, des API et des services à évolution rapide n'est que rarement testée.
Shannon décale le pentesting vers la gauche dans le cycle de vie du développement logiciel (SDLC). Utilisez-le pour exécuter des tests appuyés par l'exploitation contre les environnements de staging et les releases au rythme auquel ils sont réellement livrés, et réservez le temps des experts humains aux risques qui nécessitent quelqu'un qui connaît l'organisation.
Shannon en action

Ces rapports proviennent de scans de Shannon Open Source sur Photoview 2.4.0, l'une des applications de la comparaison d'Aikido et XBOW réalisée par Doyensec. Nous avons exécuté Shannon contre la même version de l'application et évalué ses résultats séparément. Consultez l'étude Doyensec et notre comparaison de suivi Shannon pour la méthodologie, les limitations, les coûts et les résultats.
| Modèle | Rapport | SARIF |
|---|---|---|
| DeepSeek v4 Flash | Voir le rapport | SARIF |
| Grok 4.6 | Voir le rapport | SARIF |
| Claude Opus 5 | Voir le rapport | SARIF |
Démarrage rapide
Prérequis
- Docker : requis pour le conteneur worker.
- Node.js 18+ : requis pour le workflow
npxrecommandé. - Identifiants de fournisseur d'IA : Shannon fonctionne sur Anthropic, OpenAI, xAI, AWS Bedrock et tout autre fournisseur du catalogue du harnais — chacun pouvant être pointé vers un proxy ou une passerelle LLM via une URL de base personnalisée. Vous apportez votre propre clé, et Keygraph ne fait jamais transiter votre trafic de modèle. Shannon est agnostique vis-à-vis du fournisseur. Voir Fournisseurs d'IA pour les ID de modèles suggérés.
- Protections cyber validées auprès de votre fournisseur : Anthropic et OpenAI appliquent des protections en temps réel aux charges de travail de cybersécurité, ce qui peut interrompre un scan en cours d'exécution. Suivez leurs recommandations pour les 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 tester. N'exécutez pas Shannon contre des systèmes de production.```bash
Configure credentials with the interactive wizard.
npx @keygraph/shannon@latest setup
Run a pentest against a source-available target.
npx @keygraph/shannon@latest start
-u https://your-app.com
-r /path/to/your/repo
Shannon récupère l'image 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 relatives aux plateformes, consultez la [Documentation](#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](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#openai-codex-chatgpt-pluspro-subscription) pour commencer.
> - **xAI (Grok) :** La dernière version de Shannon prend en charge les abonnements xAI. Suivez le [guide de configuration de l'abonnement xAI](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#xai-grok-subscription) 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](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#claude-code-subscription) pour utiliser la version `1.9.0`, qui est la dernière version construite sur le Claude Agent SDK.
## Capacités clés
- **Pas d'exploit, pas de rapport** : Ne rapporte que les vulnérabilités confirmées par une preuve de concept reproductible, réduisant le bruit spéculatif des scanners.
- **Analyse de code avancée** : Cartographie l'architecture, les frontières de confiance, les interfaces, les flux de données et les actifs critiques avant d'envoyer les chemins d'attaque crédibles aux agents de pentesting en direct.
- **Exécution autonome** : Exécute la reconnaissance, l'analyse, l'exploitation et la rédaction de rapports à partir d'une seule commande.
- **Expérience terminal en direct** : Simplifie la configuration des scans et affiche la progression et les résultats des agents sans exposer les journaux d'orchestration.
- **Tests authentifiés** : Prend en charge les identifiants, les flux de connexion, le TOTP, l'authentification par e-mail, les domaines d'intérêt et les règles d'engagement via la configuration.
- **Couverture axée OWASP** : Teste les injections exploitables, le XSS, le SSRF, l'authentification défaillante et l'autorisation défaillante.
- **Espaces de travail reprenables** : Reprend les scans interrompus sans répéter le travail déjà effectué.
- **Intégrations CI/CD natives** : S'exécute via l'action GitHub officielle ou le composant GitLab CI/CD, préserve les artefacts, publie les résultats et conditionne les releases sur les vulnérabilités prouvées.
- **Rapports multi-formats** : Produit des rapports PDF et Markdown riches en preuves, ainsi que du JSON et du SARIF 2.1.0. Le SARIF est activé par défaut pour les scans en mode exploit.
- **Indépendant du fournisseur et BYOK** : Prend en charge Anthropic, OpenAI, xAI, AWS Bedrock, les API compatibles et les passerelles LLM, ainsi que les modèles locaux servis via Ollama, vLLM ou LM Studio.
- **Privé par conception** : S'exécute dans votre infrastructure, stocke les résultats localement et envoie les requêtes de modèle directement à votre point de terminaison choisi. Un point de terminaison local garde les données dans votre environnement.
## Intégrations CI/CD
Shannon peut s'exécuter en continu contre des environnements de staging et de développement déployés grâce aux intégrations officielles pour [GitHub Actions](https://github.com/KeygraphHQ/shannon-action) et [GitLab CI/CD](https://gitlab.com/KeygraphHQ/shannon-ci).
Les deux intégrations :
- analysent le dépôt source extrait tout en attaquant une cible en cours d'exécution ;
- préservent les rapports PDF, Markdown et SARIF en tant qu'artefacts de pipeline ;
- préservent les journaux de scan et d'agent pour le débogage, y compris les exécutions incomplètes ;
- prennent en charge les pentests sur pull-request, release et planifiés ;
- distinguent une évaluation incomplète d'un scan terminé sans résultat ; et
- peuvent optionnellement faire échouer le pipeline lorsque Shannon exploite une vulnérabilité à un niveau de gravité égal ou supérieur à un seuil configuré.
Une hypothèse issue de l'analyse de code ne fait pas échouer le pipeline. Les seuils de gravité ne comptent que les résultats avec `status: exploited`.
### GitHub Actions```yaml
name: Shannon Pentest
on:
workflow_dispatch:
permissions:
security-events: write
jobs:
pentest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Shannon
uses: KeygraphHQ/shannon-action@v1
with:
url: https://staging.example.com
api-key: ${{ secrets.SHANNON_AI_API_KEY }}
fail-on-severity: high
upload-sarif: true
L'Action définit par défaut repo sur l'espace de travail GitHub extrait. Elle téléverse un artefact contenant les rapports d'évaluation de sécurité et le SARIF, ainsi qu'un artefact d'exécution distinct contenant les journaux de scan et d'agent. L'activation de upload-sarif publie les résultats pris en charge vers l'analyse de code GitHub.
Prérequis :
- un dépôt privé ;
- un runner avec Docker et Docker Compose v2 ;
- un accès à la cible de staging ou de développement en cours d'exécution ; et
- un identifiant de fournisseur de modèle stocké en tant que secret GitHub Actions.
Consultez la documentation de l'Action GitHub Shannon et la fiche GitHub Marketplace.
Éditions
Shannon Open Source est un pentester autonome complet, particulièrement adapté aux développeurs individuels et aux petites équipes réalisant des tests de sécurité ciblés en local ou en CI/CD.
Keygraph Enterprise Platform s'adresse aux organisations qui ont besoin d'une plateforme partagée pour le pentesting agentique continu et l'AppSec à travers de nombreuses équipes, dépôts et environnements. Elle centralise l'analyse approfondie, la gestion des vulnérabilités, la remédiation, la vérification, la gouvernance et le reporting afin que les équipes n'aient pas à assembler et maintenir ces workflows elles-mêmes.
En savoir plus sur la Keygraph Enterprise Platform et comparer les éditions →
Architecture
Shannon combine une analyse multi-étapes du code de sécurité avec de la reconnaissance et de l'exploitation en direct :```mermaid flowchart TD S["Source code"] --> EXISTING["Recon + vulnerability analysis"] S --> SAST["Agentic security code analysis"]
EXISTING -- "Pentest candidates" --> REC["Finding reconciliation<br/>(merge + deduplicate)"]
SAST -- "SAST candidates" --> REC
REC -- "Reconciled exploitation queue" --> EXP["Exploitation agents"]
APP["Running application"] --> EXP
EXP -- "Exploit demonstrated" --> REPORT["Reporting<br/>PDF · Markdown · SARIF"]
EXP -- "No exploit demonstrated" --> DROP["Discard"]
REPORT --> CICD["CI/CD gate"]
Étape par étape :
1. **Reconnaissance et analyse des vulnérabilités** explore l'application en cours d'exécution, relie le comportement à l'exécution au code source, et exécute des agents spécialisés sur l'Injection, le XSS, le SSRF, l'Authentification et l'Autorisation.
2. **Analyse agentique du code de sécurité** cartographie l'architecture de l'application, les frontières de confiance, les interfaces exposées, les dépendances, les flux de données et les actifs à haut risque, puis ouvre des investigations ciblées contre ceux-ci.
3. **Réconciliation des résultats** fusionne les deux flux de candidats, déduplique les chevauchements et regroupe ce qui reste dans une file d'exploitation.
4. **Les agents d'exploitation** tentent de véritables attaques de preuve de concept contre l'application en cours d'exécution.
5. **La validation** écarte tous les candidats que Shannon ne peut pas démontrer.
6. **Le reporting** produit des rapports PDF et Markdown avec les preuves jointes, ainsi que du JSON structuré et du SARIF pour les systèmes en aval.
Seules les vulnérabilités validées en conditions réelles deviennent des résultats de pentest Shannon ou comptent pour les seuils de sévérité CI/CD.
Chaque scan s'exécute dans un conteneur Docker éphémère avec un espace de travail isolé et une orchestration par invocation.
## Documentation
Utilisez ces guides pour les détails opérationnels :
| Guide | Utilisez-le pour |
| --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Compilation depuis les sources et commandes CLI](https://github.com/keygraphhq/shannon/blob/main/docs/development.md) | Clonage, compilation, commandes courantes, chemins de sortie et développement local. |
| [Configuration](https://github.com/keygraphhq/shannon/blob/main/docs/configuration.md) | Tests authentifiés, flux de connexion, règles d'engagement et filtres de rapport. |
| [Fournisseurs d'IA](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md) | Sélection du modèle, les fournisseurs pris en charge (Anthropic, OpenAI, xAI, AWS Bedrock, et tout autre fournisseur pris en charge par Pi), et les passerelles LLM personnalisées. |
| [Plateformes et réseau](https://github.com/keygraphhq/shannon/blob/main/docs/platforms.md) | Windows/WSL2, Linux, macOS, réseau Docker, applications locales et noms d'hôtes personnalisés. |
| [Espaces de travail et reprise](https://github.com/keygraphhq/shannon/blob/main/docs/workspaces.md) | Nommage des espaces de travail, reprise des scans interrompus et stockage des espaces de travail. |
| [Sécurité et limitations](https://github.com/keygraphhq/shannon/blob/main/docs/safety.md) | Exigences d'utilisation autorisée, conseils hors production, effets mutatifs, coût et mises en garde sur les modèles. |
| [Couverture et feuille de route](https://github.com/keygraphhq/shannon/blob/main/docs/coverage-roadmap.md) | Couverture actuelle des vulnérabilités et travaux prévus. |
| [Plateforme Keygraph Enterprise](https://github.com/keygraphhq/shannon/blob/main/docs/keygraph-platform.md) | SAST agentique exhaustif, pentesting continu, gestion des résultats sur tout le cycle de vie, remédiation, vérification ciblée, gouvernance d'entreprise et déploiement sur site. |
## Sécurité, périmètre et limitations
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 affecter de toute autre manière le système cible. Utilisez des environnements sandboxés, de préproduction ou de développement local avec des données jetables.
Vous êtes responsable de l'utilisation légale et éthique de Shannon. Ne pointez pas Shannon vers des systèmes, des dépôts ou des applications que vous ne possédez pas ou pour lesquels vous n'avez pas d'autorisation explicite de test.
Limitations importantes :
- Shannon Open Source est optimisé pour un pentesting rapide et informé par le code dans le développement quotidien et la CI/CD. Le SAST agentique exhaustif, une couverture de scanner plus large, la gouvernance centralisée et la gestion des vulnérabilités sur tout le cycle de vie sont fournis via la plateforme Keygraph Enterprise.
- Les résultats nécessitent toujours une revue humaine. Les rapports générés par LLM peuvent contenir des détails faiblement étayés ou incorrects.
- Anthropic, OpenAI, xAI et AWS Bedrock sont des fournisseurs intégrés, et tout autre fournisseur du catalogue du harnais fonctionne également — chacun accessible via une URL de base personnalisée qui le pointe vers un proxy ou une passerelle LLM. Les capacités des modèles varient, et un modèle qui ne suit pas de manière fiable les instructions de Shannon ou les contraintes d'utilisation des outils produira des résultats plus faibles.
- Une exécution complète peut prendre environ 1 à 1,5 heure et peut entraîner des coûts d'API LLM selon la tarification du modèle et la complexité de l'application.
- Ne scannez pas de bases de code non fiables ou adverses. Les outils alimentés par l'IA qui lisent le code source peuvent être exposés à l'injection de prompt.
Lisez le guide complet [Sécurité et limitations](https://github.com/keygraphhq/shannon/blob/main/docs/safety.md) avant d'exécuter Shannon dans un nouvel environnement.
## Licence
Shannon Open Source est sous licence [GNU Affero General Public License v3.0](https://github.com/keygraphhq/shannon/blob/main/LICENSE).
Des licences commerciales et d'entreprise sont disponibles pour les organisations qui ont besoin de conditions de licence différentes, d'un support commercial, d'une redistribution privée, d'un usage en service managé ou d'options de déploiement plus larges, y compris la plateforme Keygraph.
Pour les licences commerciales, contactez [[email protected]](mailto:[email protected]).
## Remerciements
Merci à [Pi](https://github.com/earendil-works/pi),
[Playwright CLI](https://github.com/microsoft/playwright-cli),
et [Mantis](https://github.com/google/mantis).
Voir [THIRD_PARTY_NOTICES.md](https://github.com/keygraphhq/shannon/blob/main/THIRD_PARTY_NOTICES.md) pour les détails de licence et d'attribution.
## À propos de Keygraph
**Keygraph** est l'entreprise derrière Shannon. Elle développe également la **plateforme Keygraph**, le produit commercial de pentesting agentique qui couvre l'intégralité du cycle de vie AppSec et exécute une version améliorée de Shannon comme moteur de pentesting.
## Communauté et support
Des **permanences communautaires** sont disponibles pour une aide pratique sur les bugs, les déploiements et les questions de configuration.
- États-Unis/UE : jeudi, 10h00 PT
- Asie : jeudi, 14h00 IST
- [Réserver un créneau](https://cal.com/george-flores-keygraph/shannon-community-office-hours)
[Rejoignez Discord](https://discord.gg/cmctpMBXwE) pour poser des questions, partager des retours et échanger avec d'autres utilisateurs de Shannon.
Actuellement, Keygraph n'accepte pas de contributions de code externes. Les issues sont les bienvenues pour les rapports de bugs et les demandes de fonctionnalités :
- [Signaler des bugs](https://github.com/KeygraphHQ/shannon/issues)
- [Suggérer des fonctionnalités](https://github.com/KeygraphHQ/shannon/discussions)
Restez connecté :
- [Site web de Keygraph](https://keygraph.io)
- [Twitter/X : @KeygraphHQ](https://twitter.com/KeygraphHQ)
- [LinkedIn : Keygraph](https://linkedin.com/company/keygraph)
## Questions fréquentes
### Puis-je auto-héberger Shannon ?
Oui. Shannon Open Source s'exécute dans votre infrastructure dans un conteneur worker éphémère. Il monte le dépôt en lecture seule et écrit les résultats dans un espace de travail local.
Keygraph ne reçoit jamais votre code source et ne proxifie jamais votre trafic de modèle. Vos requêtes de modèle vont directement au fournisseur ou au point de terminaison que vous configurez, et elles transportent le contexte du code source et de l'application. Pointez Shannon vers un point de terminaison hébergé localement et ce trafic reste également dans votre environnement.
### Shannon prend-il en charge le bring your own key (BYOK) ?
Oui, toujours. Vous fournissez les identifiants LLM que Shannon utilise pour exécuter un pentest, dans chaque déploiement, open source et commercial. Keygraph ne proxifie jamais votre trafic de modèle.
### Shannon produit-il du SARIF ?
Oui. Shannon émet du SARIF 2.1.0, le format standard OASIS pour les résultats d'analyse statique, aux côtés du JSON structuré. Tout consommateur SARIF le lit : services d'analyse de code, plateformes de gestion des vulnérabilités, tableaux de bord de sécurité et pipelines CI/CD. Il est écrit par défaut lors des scans en mode exploit ; définissez `report.sarif` sur `"false"` dans votre fichier de configuration pour le désactiver.
### Quels fournisseurs d'IA Shannon prend-il en charge ?
Anthropic, OpenAI, xAI et AWS Bedrock sont intégrés et configurés directement par ID de fournisseur. Au-delà de ceux-ci, Shannon fonctionne sur tout fournisseur du catalogue du harnais Pi, nommé de la même manière `<provider>:<model-id>`. Tout fournisseur peut être pointé vers un proxy ou une passerelle LLM via une URL de base personnalisée, qui ne remplace que le point de terminaison et conserve le dialecte d'API de ce fournisseur. Shannon utilise un paramètre de modèle unifié unique tout au long d'un pentest.
### Puis-je exécuter Shannon sur un modèle local ou auto-hébergé ?
Shannon fonctionne avec des modèles locaux servis via Ollama, vLLM ou LM Studio, qui exposent un point de terminaison compatible OpenAI, ainsi qu'avec des routeurs tels qu'OpenRouter et des passerelles LLM telles que LiteLLM. Pointez Shannon vers le point de terminaison avec une URL de base personnalisée. Les capacités varient, et un modèle qui ne suit pas de manière fiable les instructions de Shannon ou les contraintes d'utilisation des outils produira des pentests plus faibles qu'un modèle de pointe, donc n'empruntez cette voie que si vous connaissez le comportement de votre modèle choisi. Voir [Fournisseurs d'IA](https://github.com/keygraphhq/shannon/blob/main/docs/ai-providers.md#custom-base-url).
### Shannon exploite-t-il réellement les vulnérabilités, ou ne fait-il que scanner ?
Shannon exécute de véritables exploits. Il ne rapporte un résultat que lorsqu'il a produit une preuve de concept fonctionnelle, et écarte les hypothèses qu'il ne peut pas prouver. C'est un pentester, pas un scanner passif.
**Développé par [Keygraph](https://keygraph.io)**

