
burp-ai-agent v1.0.0
Estensione di Burp Suite che aggiunge strumenti MCP integrati, analisi assistita dall'IA, controlli sulla privacy, scansione passiva e attiva e altro ancora.
Custom AI Agent
Il ponte tra Burp Suite e l'AI moderna.
Una nota sul nome: Questa estensione è pubblicata come Custom AI Agent (precedentemente Burp AI Agent). È stata rinominata per conformarsi ai requisiti di denominazione del BApp Store di PortSwigger e per evitare confusione con il provider Burp AI integrato in Burp Suite. Il repository GitHub (
github.com/six2dez/burp-ai-agent), il sito della documentazione (burp-ai-agent.six2dez.com) e la directory di configurazione (~/.burp-ai-agent/) mantengono l'identificativoburp-ai-agentper continuità.

Custom AI Agent è un'estensione per Burp Suite che integra l'AI nel tuo flusso di lavoro di sicurezza. Usa modelli locali o provider cloud, connetti agenti AI esterni tramite MCP e lascia che gli scanner passivi/attivi trovino le vulnerabilità mentre tu ti concentri sui test manuali.
[!IMPORTANT] Se stai eseguendo la versione 1.0.0 o precedente, leggi gli avvisi di sicurezza e aggiorna all'ultima release, la 1.1.0. I file di audit scritti con l'Audit logging attivo potrebbero contenere il token MCP e i prompt completi, e il contesto "send to AI" del tasto destro potrebbe aggirare la modalità privacy; entrambi gli avvisi indicano quali credenziali ruotare. Non è stato emesso alcun identificativo CVE o GHSA per nessuno di essi.
Novità nella v1.1.0
Due build da un unico repository, create per la nuova sottomissione al BApp Store. Dettagli completi in CHANGELOG.md.
- Due build. La build del BApp Store (
./gradlew bappJar) contiene gli 8 tool MCP nativi dell'estensione, Burp AI e i sei backend HTTP. La build completa di GitHub (./gradlew fullJar) contiene tutti i 59 tool MCP, i cinque backend CLI, il client MCP esterno e l'auto-queue opt-in. Entrambe sono su Releases, ciascuna con un.sha256. Caricane solo una alla volta; Which Build? le confronta. - Il gate AI della build del BApp Store. La build del BApp Store funziona su Burp Community e Burp Professional; invia richieste AI solo mentre l'impostazione "Use AI" di Burp è abilitata per l'estensione, e con essa disattivata si carica e rifiuta ogni richiesta AI.
- Le scansioni passive non inviano nulla al target. I risultati passivi che l'AI Active Scanner può testare sono elencati come target suggeriti nella sua finestra di dialogo della coda, in entrambe le build, e li accodi manualmente: nulla viene inviato a un target prima della tua conferma.
- Scaricamento pulito. Lo scaricamento non lascia in esecuzione alcun thread, timer o listener MCP dell'estensione e non avvia nuove richieste a un provider AI.
- I dettagli delle issue sono codificati in HTML. I payload, i valori presi dal target e il testo AI vengono mostrati come testo letterale nella vista delle issue di Burp e nei report.
- Gli scanner AI partono DISATTIVATI a ogni caricamento, in entrambe le build; l'attivazione di uno dura fino a quando Burp non scarica l'estensione.
Novità nella v1.0.1
Una hotfix di correttezza e privacy per la 1.0.0. Dettagli completi in CHANGELOG.md e SECURITY.md.
- I prompt non ASCII funzionano su ogni backend HTTP (#84, #85, #86, #88). I corpi delle richieste vengono inviati come byte UTF-8; prima, i caratteri non ASCII venivano corrotti e il testo del target poteva modificare la struttura JSON della richiesta.
- Privacy: il contesto del tasto destro, le impostazioni dello scanner, l'audit logging e i link della chat ora rispettano la modalità privacy e il default di audit con soli hash; i link della chat si aprono solo dopo una conferma.
- Sicurezza dello scanner: le richieste che modificano lo stato vengono riprodotte solo a DANGEROUS; i controlli AI del Burp Scanner rispettano il resource pool della scansione e l'interruttore passivo AI.
- Affidabilità: NVIDIA NIM e Perplexity funzionano di nuovo, i messaggi successivi della chat mantengono il loro contesto, e la redazione non scarta più contenuti su macchine lente o occupate.
- Librerie incluse: Netty 4.1.138, Jackson 2.22.3.
Novità nella v1.0.0
Prima release stabile, e pietra miliare per la correttezza di sicurezza. Una revisione esterna della 0.9.2 del
2026-08-05 ha confermato due difetti sfruttabili eseguendo il codice distribuito; questa release corregge entrambi
più l'intera classe di problemi emersi dalla stessa revisione. Dettagli completi in CHANGELOG.md.
Corretto e divulgato:
- SEC-04 (critico) — i controlli di controllo degli accessi MCP non venivano eseguiti sulle route risolte. Con l'accesso esterno abilitato il listener accettava chiamate agli strumenti non autenticate; in modalità locale i controlli Origin/Host/User-Agent e le intestazioni di risposta di sicurezza erano inerti sulle route corrispondenti. La decisione ora viene eseguita prima del routing. → ruota il tuo token MCP
- PRIV-05 (alto) — i cookie di sessione raggiungevano i backend AI non redatti in STRICT e BALANCED. Lo
scanner passivo emetteva i cookie come semplici
name=value, perdendo il prefisso su cui si basava la redazione, e solo un cookie chiamato letteralmentesessionveniva intercettato. → ruota i cookie interessati
Rafforzato:
- Le chiamate agli strumenti emesse dal modello ora richiedono la tua approvazione (SEC-06) — una chiamata a uno strumento analizzata dall'output del modello non raggiunge Burp finché non decidi tu. I livelli falliscono in modo sicuro: un nome di strumento non riconosciuto richiede conferma ogni volta, non viene mai eseguito silenziosamente. Vedi Note su privacy e sicurezza.
- Il token MCP non viene più divulgato durante un'acquisizione della porta (SEC-07) — un processo locale che occupava la porta MCP e restituiva l'intestazione di identità poteva in precedenza raccogliere un token che garantiva pieno accesso agli strumenti MCP. Il client di acquisizione ora presenta invece una prova di possesso HMAC, e sotto TLS fissa il certificato del server al proprio keystore.
SsrfGuardclassifica le notazioni IP alternative (SEC-07) —http://2852039166/(decimale per169.254.169.254) non elude più l'avviso private/link-local solo grazie alla notazione, e la classificazione ora non esegue alcuna risoluzione dei nomi.- Gli argomenti della shell sono quotati tramite allowlist (QUAL-06) — chiudendo un percorso da importazione di impostazioni a esecuzione di comandi
per valori che contengono metacaratteri senza spazi bianchi (
foo;id,$(cmd)). - Confinamento EDT e robustezza dello scheduler — l'esecuzione degli strumenti, l'HTTP del backend e
stop()di MCP sono stati spostati fuori dal thread di dispatch degli eventi Swing; le attività ricorrenti sono protette contro la morte per eccezione.
Verificato: suite di test cresciuta da 660 a 1131 test su 158 classi, copertura delle righe del progetto 34% → 58%, e la baseline detekt ridotta da 1096 a 1040 anziché aumentata.