
Extension Burp Suite qui ajoute des outils MCP intégrés, une analyse assistée par IA, des contrôles de confidentialité, un scan passif et actif, et plus encore.
# Custom AI Agent
**Le pont entre Burp Suite et l'IA moderne.**
> **Une note sur le nom :** Cette extension est publiée sous le nom **Custom AI Agent** (anciennement *Burp AI Agent*). Elle a été renommée pour se conformer aux exigences de nommage du BApp Store de PortSwigger et pour éviter toute confusion avec le fournisseur **Burp AI** intégré à Burp Suite. Le dépôt GitHub (`github.com/six2dez/burp-ai-agent`), le site de documentation (`burp-ai-agent.six2dez.com`) et le répertoire de configuration (`~/.burp-ai-agent/`) conservent l'identifiant `burp-ai-agent` par souci de continuité.
<!-- screenshot: main extension tab with chat and settings visible -->

Custom AI Agent est une extension pour Burp Suite qui intègre l'IA dans votre flux de travail de sécurité. Utilisez des modèles locaux ou des fournisseurs cloud, connectez des agents IA externes via MCP, et laissez les scanners passifs/actifs détecter les vulnérabilités pendant que vous vous concentrez sur les tests manuels.
> [!IMPORTANT]
> **Si vous utilisez la version 1.0.0 ou antérieure, lisez [les avis de sécurité](https://github.com/six2dez/burp-ai-agent/blob/main/SECURITY.md#security-advisories) et mettez à niveau vers la dernière version, 1.1.0.**
> Les fichiers d'audit écrits avec la journalisation d'audit activée peuvent contenir le jeton MCP et les invites complètes, et le contexte « envoyer à l'IA » du clic droit
> pouvait contourner le mode confidentialité ; les deux avis indiquent quels identifiants renouveler.
> Aucun identifiant CVE ou GHSA n'a été émis pour l'un d'entre eux.
## Nouveautés de la v1.1.0
Deux versions issues d'un même dépôt, conçues pour la resoumission au BApp Store. Détails complets dans
[CHANGELOG.md](https://github.com/six2dez/burp-ai-agent/blob/main/CHANGELOG.md).
- **Deux versions.** La version BApp Store (`./gradlew bappJar`) contient les 8 outils MCP natifs de l'extension,
Burp AI et les six backends HTTP. La version complète GitHub (`./gradlew fullJar`) contient les 59 outils MCP,
les cinq backends CLI, le client MCP externe et la file d'attente automatique optionnelle. Les deux sont disponibles sur
[Releases](https://github.com/six2dez/burp-ai-agent/releases), chacune avec un `.sha256`. Ne chargez qu'une seule
à la fois ; [Which Build?](https://burp-ai-agent.six2dez.com/getting-started/which-build)
les compare.
- **Le contrôle IA de la version BApp Store.** La version BApp Store fonctionne sur Burp Community et Burp Professional ; elle n'envoie des requêtes IA que lorsque le paramètre « Use AI » de Burp est activé pour l'extension, et lorsqu'il est désactivé, elle se charge et refuse toute requête IA.
- **Les scans passifs n'envoient rien à la cible.** Les résultats passifs que le scanner actif IA peut tester sont
listés comme cibles suggérées dans sa boîte de dialogue de file d'attente, dans les deux versions, et vous les mettez en file manuellement :
rien n'est envoyé à une cible avant votre confirmation.
- **Déchargement propre.** Le déchargement ne laisse aucun thread, minuteur ou écouteur MCP de l'extension en cours d'exécution et
ne lance aucune nouvelle requête vers un fournisseur d'IA.
- **Les détails des problèmes sont encodés en HTML.** Les charges utiles, les valeurs extraites de la cible et le texte de l'IA s'affichent sous forme de
texte littéral dans la vue des problèmes et les rapports de Burp.
- **Les scanners IA démarrent DÉSACTIVÉS à chaque chargement**, dans les deux versions ; l'activation d'un scanner dure jusqu'à ce que Burp
décharge l'extension.
## Nouveautés de la v1.0.1
Un correctif de correction et de confidentialité pour la 1.0.0. Détails complets dans [CHANGELOG.md](https://github.com/six2dez/burp-ai-agent/blob/main/CHANGELOG.md) et
[SECURITY.md](https://github.com/six2dez/burp-ai-agent/blob/main/SECURITY.md#fixed-in-101).
- **Les invites non ASCII fonctionnent sur tous les backends HTTP** (#84, #85, #86, #88). Les corps de requête sont envoyés sous forme
d'octets UTF-8 ; auparavant, les caractères non ASCII étaient corrompus et le texte de la cible pouvait modifier la structure JSON
de la requête.
- **Confidentialité :** le contexte du clic droit, les paramètres du scanner, la journalisation d'audit et les liens de chat respectent désormais le
mode confidentialité et la valeur par défaut d'audit en hachages seuls ; les liens de chat ne s'ouvrent qu'après une confirmation.
- **Sécurité du scanner :** les requêtes modifiant l'état ne sont rejouées qu'en mode DANGEROUS ; les contrôles IA du Burp Scanner
respectent le pool de ressources du scan et l'interrupteur passif de l'IA.
- **Fiabilité :** NVIDIA NIM et Perplexity fonctionnent à nouveau, les messages de suivi du chat conservent leur contexte,
et la rédaction ne supprime plus de contenu sur les machines lentes ou occupées.
- **Bibliothèques intégrées :** Netty 4.1.138, Jackson 2.22.3.
## Nouveautés de la v1.0.0
Première version stable, et un jalon en matière de sécurité et de correction. Une revue externe de `0.9.2` le
2026-08-05 a confirmé deux défauts exploitables en **exécutant** le code livré ; cette version corrige les deux
ainsi que la classe plus large de problèmes révélés par la même revue. Détails complets dans [CHANGELOG.md](https://github.com/six2dez/burp-ai-agent/blob/main/CHANGELOG.md).
**Corrigé et divulgué :**
- **SEC-04 (critique)** — les contrôles de contrôle d'accès MCP ne s'exécutaient pas sur les routes résolues. Avec l'accès
externe activé, l'écouteur acceptait des appels d'outils **non authentifiés** ; en mode local, les contrôles
Origin/Host/User-Agent et les en-têtes de réponse de sécurité étaient inopérants sur les routes correspondantes. La
décision s'exécute désormais avant le routage. → [renouvelez votre jeton MCP](https://github.com/six2dez/burp-ai-agent/blob/main/SECURITY.md#security-advisories)
- **PRIV-05 (élevé)** — les cookies de session atteignaient les backends IA **non expurgés en STRICT et BALANCED**. Le
scanner passif émettait les cookies sous la forme brute `name=value`, supprimant la rédaction du préfixe sur laquelle
reposait la détection, et seul un cookie littéralement nommé `session` était intercepté. → [renouvelez les cookies affectés](https://github.com/six2dez/burp-ai-agent/blob/main/SECURITY.md#security-advisories)
**Renforcé :**
- **Les appels d'outils émis par le modèle nécessitent désormais votre approbation** (SEC-06) — un appel d'outil extrait de la *sortie
du modèle* n'atteint pas Burp avant votre décision. Les niveaux échouent en mode fermé : un nom d'outil non reconnu demande
confirmation à chaque fois, et ne s'exécute jamais silencieusement. Voir [Notes de confidentialité et de sécurité](#privacy-and-security-notes).
- **Le jeton MCP n'est plus divulgué lors d'une prise de contrôle de port** (SEC-07) — un processus local occupant
le port MCP et renvoyant l'en-tête d'identité pouvait auparavant récolter un jeton accordant un accès complet aux outils MCP.
Le client de prise de contrôle présente désormais une preuve de possession HMAC à la place, et sous TLS il épingle
le certificat du serveur à son propre keystore.
- **`SsrfGuard` classe les notations IP alternatives** (SEC-07) — `http://2852039166/` (décimal pour
`169.254.169.254`) ne contourne plus l'avertissement privé/lien-local par la seule notation, et
la classification n'effectue désormais aucune résolution de nom.
- **Les arguments de shell sont mis entre guillemets selon une liste d'autorisation** (QUAL-06) — fermant un chemin
d'importation de paramètres vers l'exécution de commandes pour des valeurs contenant des métacaractères sans espace (`foo;id`, `$(cmd)`).
- **Confinement à l'EDT et robustesse du planificateur** — l'exécution des outils, le HTTP backend et le `stop()` MCP ont été déplacés
hors du thread de répartition des événements Swing ; les tâches récurrentes sont protégées contre la mort par exception.
**Vérifié :** la suite de tests est passée de 660 à **1131 tests répartis sur 158 classes**, la couverture de lignes du projet
de 34 % → **58 %**, et la base de référence detekt a diminué de 1096 → 1040 plutôt que d'augmenter.
## Points forts
- **12 backends IA** — Burp AI (intégré), Anthropic, Ollama, LM Studio, NVIDIA NIM, Perplexity, Generic OpenAI-compatible, Gemini CLI, Claude CLI, Codex CLI, OpenCode CLI, Copilot CLI. La version du BApp Store en compte 7 (Burp AI et les six backends HTTP) ; les cinq backends CLI sont uniquement dans la version complète.
- **59 outils MCP** — Laissez Claude Desktop (ou tout client MCP) piloter Burp de manière autonome (8 outils IA natifs de l'extension dans la version du store, les 59 dans la version complète).
- **Accès MCP restreint** — Restreignez éventuellement chaque outil MCP à vos hôtes dans le périmètre, afin que les clients IA externes ne puissent pas atteindre des cibles hors périmètre via Burp.
- **62 classes de vulnérabilités** — Scanners IA passifs et actifs couvrant l'injection, l'authentification, la cryptographie, et plus encore. Le scanner passif s'exécute en tant que `PassiveScanCheck` de Burp (Burp Pro).
- **Installation depuis les Releases** — Téléchargez l'une ou l'autre version depuis [Releases](https://github.com/six2dez/burp-ai-agent/releases) ; [Which Build?](https://burp-ai-agent.six2dez.com/getting-started/which-build) explique leurs différences. Custom AI Agent n'est pas encore référencé dans le BApp Store : la version du BApp Store est en cours de révision par PortSwigger dans [extension-portal#231](https://github.com/PortSwigger/extension-portal/issues/231).
- **Interface adaptée au thème** — Un système de design interne stylise le panneau de paramètres et se réadapte automatiquement au commutateur clair/sombre de Burp.
- **Burp Scan Skill** — Utilisez votre assistant de codage IA préféré (Claude Code, Gemini CLI, Codex, etc.) comme scanner via MCP.
- **Confirmation des appels d'outils** — Les appels d'outils émis par l'IA sont contrôlés : les outils en lecture seule et bornés s'exécutent silencieusement, tout le reste demande d'abord une confirmation via une carte d'approbation dans le chat. Les outils inconnus échouent par défaut (fail closed).
- **3 modes de confidentialité** — STRICT / BALANCED / OFF. Masquez les données sensibles avant qu'elles ne quittent Burp.
- **Bibliothèque de prompts personnalisés** — Enregistrez des prompts libres par contexte (requête HTTP ou problème de scanner) ; lancez-les depuis le menu contextuel ou saisissez-en à la volée via `Custom…`.
- **Journal d'audit** — Journal JSONL optionnel avec un SHA-256 par enregistrement ; les prompts, le contexte et les réponses sont enregistrés sous forme de SHA-256 plus longueur, sauf si l'audit Verbose est activé, et les identifiants ne sont jamais écrits ; chaque lancement est marqué avec `promptSource` / `contextKind` pour la reproductibilité.
## Démarrage rapide
### 1. Installation
Téléchargez le dernier JAR depuis [Releases](https://github.com/six2dez/burp-ai-agent/releases) : chaque release contient `Custom-AI-Agent-full-<version>.jar` (la version complète GitHub) et `Custom-AI-Agent-bapp-<version>.jar` (la version du BApp Store), chacun avec un fichier `.sha256`. [Which Build?](https://burp-ai-agent.six2dez.com/getting-started/which-build) explique laquelle choisir. Ou compilez depuis les sources (Java 21) :
```bash
git clone https://github.com/six2dez/burp-ai-agent.git
cd burp-ai-agent
# Full build (GitHub releases) — all 59 MCP tools
JAVA_HOME=/path/to/jdk-21 ./gradlew clean fullJar
# Output: build/libs/Custom-AI-Agent-full-<version>.jar
# Store build (BApp Store submission) — 8 extension-native AI MCP tools only
JAVA_HOME=/path/to/jdk-21 ./gradlew clean bappJar
# Output: build/libs/custom-ai-agent-bapp.jar
```
### 2. Charger dans Burp
1. Ouvrez Burp Suite (Community ou Professional).
2. Allez dans **Extensions > Installed > Add**.
3. Sélectionnez **Java** comme type d'extension et choisissez le fichier `.jar`.
L'extension s'enregistre dans Burp sous le nom **Custom AI Agent** (le nom dans la liste des Extensions et dans l'onglet Suite) afin de la distinguer du fournisseur **Burp AI** intégré à Burp.
**Ne chargez qu'une seule version.** La version complète et la version BApp Store s'enregistrent toutes deux sous **Custom AI Agent**, elles sont donc identiques dans la liste des Extensions de Burp. Les charger toutes les deux en même temps vous donne deux onglets Custom AI Agent, deux serveurs MCP en concurrence pour le même port, et deux copies écrivant dans le répertoire partagé `~/.burp-ai-agent`. Déchargez l'une avant de charger l'autre.
**Édition de Burp et « Use AI ».** La version BApp Store fonctionne sur Burp Community et Burp Professional ; elle n'envoie des requêtes IA que lorsque le paramètre « Use AI » de Burp est activé pour l'extension, et lorsqu'il est désactivé, elle se charge et refuse toutes les requêtes IA. PortSwigger documente « Use AI » comme une case à cocher par extension, désactivée par défaut : **Extensions > Installed > Custom AI Agent > Use AI**.
<!-- screenshot: Burp Extensions > Add dialog with the JAR loaded -->

### 3. Profils d'agent
L'extension installe automatiquement les profils fournis dans `~/.burp-ai-agent/AGENTS/` au premier lancement.
Déposez des fichiers `*.md` supplémentaires dans ce répertoire pour ajouter des profils personnalisés.
### 4. Configurer un backend
Ouvrez l'onglet **AI Agent** et allez dans **Settings**. Choisissez un backend :
| Backend | Type | Configuration |
| :--- | :--- | :--- |
| **Burp AI (built-in)** | In-process | Utilise l'IA intégrée de Burp et nécessite que le paramètre « Use AI » de Burp soit activé pour l'extension (voir [Requirements](#requirements)) ; aucune configuration supplémentaire requise. |
| **Ollama** | Local HTTP | Installez [Ollama](https://ollama.com), lancez `ollama serve`, téléchargez un modèle (`ollama pull llama3.1`). |
| **LM Studio** | Local HTTP | Installez [LM Studio](https://lmstudio.ai), chargez un modèle, démarrez le serveur. |
| **NVIDIA NIM** | HTTP | Utilisez le point de terminaison par défaut `https://integrate.api.nvidia.com`, définissez votre clé API NVIDIA et choisissez un modèle tel que `moonshotai/kimi-k2.5`. |
| **Perplexity** | HTTP | Utilisez le point de terminaison par défaut `https://api.perplexity.ai`, définissez votre clé API `pplx-...` et choisissez un modèle tel que `sonar`, `sonar-pro` ou `sonar-reasoning`. |
| **Generic OpenAI-compatible** | HTTP | Fournissez une URL de base et un modèle pour tout fournisseur compatible OpenAI. |
| **Gemini CLI** | Cloud CLI (full build only) | Installez `gemini`, lancez `gemini auth login`. |
| **Claude CLI** | Cloud CLI (full build only) | Installez `claude`, définissez `ANTHROPIC_API_KEY` ou lancez `claude login`. |
| **Codex CLI** | Cloud CLI (full build only) | Installez `codex`, définissez `OPENAI_API_KEY`. |
| **OpenCode CLI** | Cloud CLI (full build only) | Installez `opencode`, configurez les identifiants du fournisseur. |
| **Copilot CLI** | Cloud CLI (full build only) | Installez `copilot` et connectez-vous avec votre compte GitHub. |
| **Anthropic** | Cloud API | Saisissez votre clé API Anthropic dans Settings. Le trafic API passe par le proxy de Burp. Voir [docs/anthropic-backend.md](https://github.com/six2dez/burp-ai-agent/blob/main/docs/anthropic-backend.md). |
Pour **NVIDIA NIM**, le backend attend le même flux de type chat-completions que le point de terminaison hébergé par NVIDIA. Une configuration fonctionnelle est :
```text
Backend: NVIDIA NIM
Base URL: https://integrate.api.nvidia.com
Model: moonshotai/kimi-k2.5
API Key: <your nvapi token>
```
Laissez les en-têtes supplémentaires vides, sauf si votre passerelle les exige. L'extension envoie les requêtes à `/v1/chat/completions` et utilise automatiquement le jeton bearer configuré.
### 5. Lancer votre première analyse
1. Parcourez une cible via Burp Proxy.
2. Faites un clic droit sur n'importe quelle requête dans **Proxy > HTTP History**.
3. Sélectionnez **Extensions > Custom AI Agent > Analyze this request**.
4. Une session de chat s'ouvre avec l'analyse de l'IA.
<!-- screenshot: right-click context menu showing Custom AI Agent actions -->

### 6. Connecter Claude Desktop via MCP (facultatif)
Activez le serveur MCP dans **Settings > MCP Server** et ajoutez ceci à la configuration de votre Claude Desktop :
**macOS** : `~/Library/Application Support/Claude/claude_desktop_config.json`
**Windows** : `%APPDATA%\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"burp-ai-agent": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"http://127.0.0.1:9876/sse"
]
}
}
}
```
> Nécessite Node.js 18+. Si vous activez **External Access**, le client MCP doit envoyer `Authorization: Bearer <token>` à chaque requête.
**Version complète uniquement.** Vous pouvez également enregistrer des serveurs MCP externes ou personnalisés dans **Settings > MCP Server > External MCP Servers** (transports SSE ou stdio). Les jetons d'authentification des serveurs externes sont stockés chiffrés au repos, avec la réserve décrite dans [Privacy and Security Notes](#privacy-and-security-notes). Consultez [docs/external-mcp-servers.md](https://github.com/six2dez/burp-ai-agent/blob/main/docs/external-mcp-servers.md) pour les détails de configuration et les notes de sécurité.
## Compétence Burp Scan (analyse IA en terminal)
La compétence `burp-scan` vous permet d'utiliser n'importe quel assistant de codage IA (Claude Code, Gemini CLI, Codex, etc.) comme scanner Burp depuis votre terminal. Au lieu de l'IA intégrée du plugin, **votre IA de terminal devient le moteur de raisonnement** tandis que Burp fournit les outils via MCP.
### Ce qu'elle contient
- Référence des outils MCP (jusqu'à l'ensemble des 59 outils de la version complète) organisée par action de scan
- Protocole d'analyse passive (analyse du trafic sans envoyer de requêtes)
- Bibliothèque de payloads pour les tests actifs (plus de 200 payloads pour 62 classes de vulnérabilités avec des motifs de détection)
- Flux de scan de bout en bout (périmètre -> passif -> actif -> OOB -> rapport)
- Protocole de création de tickets avec mappage sévérité/confiance
### Installation pour Claude Code
Copiez la compétence dans votre répertoire de compétences Claude Code :
```bash
# Global (available in all projects)
cp -r skills/burp-scan ~/.claude/skills/burp-scan
# Or project-specific
cp -r skills/burp-scan .claude/skills/burp-scan
```
Utilisez ensuite `/burp-scan` dans Claude Code ou laissez-le se déclencher automatiquement lorsque vous mentionnez une analyse Burp.
### Installation pour d'autres assistants IA
La compétence est un fichier Markdown autonome situé à [`skills/burp-scan/SKILL.md`](https://github.com/six2dez/burp-ai-agent/blob/main/skills/burp-scan/SKILL.md). Vous pouvez l'utiliser avec tout assistant IA prenant en charge les prompts système ou les fichiers de contexte :
- **Gemini CLI / Codex / OpenCode** : ajoutez-le comme fichier de contexte ou collez-le dans votre prompt système
- **Clients MCP personnalisés** : incluez le contenu de la compétence comme contexte système aux côtés de votre connexion MCP
- **N'importe quel LLM** : le fichier est autonome — fournissez-le comme contexte avec vos définitions d'outils MCP
### Exemple d'utilisation
```
You: Connect to Burp MCP at localhost:9876 and scan the proxy history for IDOR vulnerabilities
AI: [Uses proxy_http_history to pull traffic]
[Identifies endpoints with numeric IDs]
[Sends http1_request with ID+1, ID-1 payloads]
[Compares responses for different user data]
[Creates issue_create for confirmed IDOR]
```
> La skill et le scanner intégré du plugin sont complémentaires : le plugin exécute une analyse automatisée en arrière-plan, tandis que la skill permet une analyse interactive, guidée par l'analyste, depuis votre terminal.
## Documentation
La documentation complète est disponible sur **[burp-ai-agent.six2dez.com](https://burp-ai-agent.six2dez.com)**.
- [Installation](https://burp-ai-agent.six2dez.com/getting-started/installation)
- [Quelle version ?](https://burp-ai-agent.six2dez.com/getting-started/which-build)
- [Démarrage rapide](https://burp-ai-agent.six2dez.com/getting-started/quick-start)
- [Visite de l'interface](https://burp-ai-agent.six2dez.com/user-guide/ui-tour)
- [Profils d'agent](https://burp-ai-agent.six2dez.com/user-guide/agent-profiles)
- [Scanner passif](https://burp-ai-agent.six2dez.com/scanners/passive)
- [Scanner actif](https://burp-ai-agent.six2dez.com/scanners/active)
- [Présentation de MCP](https://burp-ai-agent.six2dez.com/mcp/overview)
- [Modes de confidentialité](https://burp-ai-agent.six2dez.com/privacy/privacy-modes)
- [Référence des paramètres](https://burp-ai-agent.six2dez.com/reference/settings-reference)
- [Avis de sécurité](https://burp-ai-agent.six2dez.com/security/advisories)
- [Dépannage](https://burp-ai-agent.six2dez.com/reference/troubleshooting)
- [Skill Burp Scan](https://burp-ai-agent.six2dez.com/examples/burp-scan-skill)
## Playbooks opérateur
- [Durcissement MCP](https://github.com/six2dez/burp-ai-agent/blob/main/docs/mcp-hardening.md)
- [Guide de sécurité de l'interface](https://github.com/six2dez/burp-ai-agent/blob/main/docs/ui-safety-guide.md)
- [Dépannage du backend](https://github.com/six2dez/burp-ai-agent/blob/main/docs/backend-troubleshooting.md)
- [Configuration du backend Anthropic](https://github.com/six2dez/burp-ai-agent/blob/main/docs/anthropic-backend.md)
- [Serveurs MCP externes](https://github.com/six2dez/burp-ai-agent/blob/main/docs/external-mcp-servers.md)
### Notes sur la confidentialité et la sécurité
- **Secrets au repos — ce que le chiffrement fait et ne fait pas.** Toutes les clés d'API et tous les jetons stockés (Anthropic, jeton bearer MCP, mot de passe du keystore TLS, etc.) sont chiffrés avec AES-256-GCM à l'aide d'une clé maître aléatoire propre à chaque installation (`SecretCipher`). **Cette clé maître est elle-même stockée dans les préférences de Burp, encodée en Base64, à côté du texte chiffré qu'elle protège** (préférence `secret.master.key.v1`). Quiconque peut lire vos préférences Burp peut donc également lire la clé et déchiffrer les secrets. Cela ne protège **pas** contre un attaquant local ou un processus malveillant s'exécutant sous votre compte utilisateur ; considérez cela comme une obfuscation contre l'inspection occasionnelle d'un fichier de préférences ou d'un projet exporté. Si un identifiant doit résister à ce modèle de menace, conservez-le dans un coffre de secrets dédié et collez-le à chaque session.
- **Les appels d'outils émis par le modèle nécessitent votre approbation.** Un appel d'outil que l'extension extrait de la *sortie du modèle* ne s'exécute pas contre Burp tant que vous n'avez pas décidé. Chaque outil possède un niveau de sécurité obligatoire : exécution automatique (sortie en lecture seule et bornée), confirmation avec une option **Approuver pour la session**, ou confirmation à chaque appel. Un nom d'outil que le catalogue ne reconnaît pas est résolu en confirmation à chaque fois, jamais en automatique, et les outils externes préfixés par `ext:` confirment toujours chaque appel. La décision apparaît sous forme de carte intégrée dans la transcription du chat plutôt que de boîte de dialogue modale, et chaque décision est enregistrée — un événement d'audit plus une ligne dans l'onglet Output de Burp, la journalisation d'audit étant désactivée par défaut. Un refus renvoie au modèle un résultat neutre « non autorisé, ne pas réessayer » plutôt qu'une erreur. Ce niveau est indépendant du commutateur **Unsafe Mode** : Unsafe Mode détermine si un outil peut *un jour* s'exécuter, le niveau détermine si le modèle peut l'exécuter *sans demander*. Justification de conception : [`DECISIONS.md`](https://github.com/six2dez/burp-ai-agent/blob/main/DECISIONS.md) ADR-15. Runbook opérateur : [docs/ui-safety-guide.md](https://github.com/six2dez/burp-ai-agent/blob/main/docs/ui-safety-guide.md).
- Le mode de confidentialité STRICT anonymise les hôtes à l'aide d'un véritable HKDF (extraction/expansion HMAC-SHA256). Le mode BALANCED masque les cookies, les jetons et les en-têtes d'authentification. Le mode OFF envoie le trafic tel quel.
- Les sorties des serveurs MCP externes sont enveloppées dans un marqueur de frontière de confiance avant d'entrer dans le prompt de l'IA, empêchant l'injection de prompt à partir de réponses de serveurs non fiables (version complète uniquement).
Les paramètres sont versionnés au niveau du schéma en interne (`settings.schema.version`) et migrés de manière additive au chargement pour des mises à niveau sûres.
## Prérequis
- **Burp Suite** Community ou Professional, 2026.2 ou plus récent
- **Fonctionnalités d'IA dans la version BApp Store** — La version BApp Store fonctionne sur Burp Community et Burp Professional ; elle n'envoie des requêtes d'IA que lorsque le paramètre « Use AI » de Burp est activé pour l'extension, et lorsqu'il est désactivé, elle se charge et refuse toute requête d'IA. Les backends HTTP et CLI de la version complète GitHub ne dépendent pas du paramètre « Use AI » de Burp (Burp AI et les outils MCP `ai_analyze` et `ai_passive_scan` en dépendent toujours) ; voir [Which Build?](https://burp-ai-agent.six2dez.com/getting-started/which-build).
- **Java 21** (fourni avec les versions modernes de Burp pour l'exécution ; requis séparément pour compiler depuis les sources)
- Au moins un backend d'IA configuré (voir le tableau ci-dessus)
## Licence
Ce projet est sous licence [MIT License](https://github.com/six2dez/burp-ai-agent/blob/main/LICENSE).
## Avertissement
L'utilisation de Custom AI Agent pour attaquer des cibles sans consentement préalable est illégale. Il est de la responsabilité de l'utilisateur de respecter toutes les lois applicables. Les développeurs déclinent toute responsabilité en cas de mauvaise utilisation ou de dommages causés par cet outil. Utilisez-le de manière responsable.
## Contribution
Les issues et pull requests sont les bienvenues. Consultez [CONTRIBUTING.md](https://github.com/six2dez/burp-ai-agent/blob/main/CONTRIBUTING.md) pour la configuration de développement et les directives, ou la [documentation développeur](https://burp-ai-agent.six2dez.com/developer/architecture) pour les détails de l'architecture.