Burp Suite è lo strumento di penetration testing per applicazioni web più usato al mondo: secondo Landbase, 1.283 aziende verificate lo utilizzano quotidianamente per identificare vulnerabilità prima che lo facciano gli attaccanti. La versione Community Edition è gratuita, quella Professional costa 475 dollari per utente all’anno, e permette di trovare oltre 100 categorie di vulnerabilità in modo semi-automatico. Se stai iniziando con il web security testing o vuoi strutturare meglio il tuo workflow di pentesting, questa guida ti mostra come configurare e usare Burp Suite in 12 step concreti, partendo dall’installazione fino all’analisi dei risultati di scansione.
Importante: Burp Suite deve essere usato esclusivamente su sistemi per i quali hai esplicita autorizzazione scritta. L’uso non autorizzato costituisce reato in Italia ai sensi dell’art. 615-ter e 635-bis del Codice Penale. Questa guida è destinata a penetration tester professionisti, studenti di sicurezza informatica, e proprietari di sistemi che testano la propria infrastruttura.
Prerequisiti: cosa ti serve prima di iniziare
Prima di installare Burp Suite, verifica di avere tutti gli elementi necessari. La versione Professional/Community 2026.1.2 (rilasciata il 27 gennaio 2026) utilizza internamente Java 24.0.2 e Chromium 144.0.7559.97, ma questi componenti vengono installati automaticamente dall’installer ufficiale senza alcuna configurazione manuale.
| Requisito | Minimo | Raccomandato |
|---|---|---|
| Sistema operativo | Windows 10, macOS 12, Ubuntu 20.04 | Windows 11, macOS 14, Kali Linux 2025.x |
| RAM | 4 GB | 8 GB o più |
| Spazio disco | 1 GB | 5 GB (per i log di scansione) |
| Browser | Chromium integrato in Burp | Firefox con FoxyProxy per flessibilità |
| Java | Non richiesto (incluso nell’installer) | Java 24 incluso automaticamente |
| Rete | Accesso a internet per aggiornamenti | Ambiente di lab isolato per test |
| Autorizzazione | Scritta dal proprietario del target | Contratto di pentesting firmato |
Per seguire questa guida avrai bisogno di un’applicazione target su cui esercitarti. PortSwigger mette a disposizione il proprio laboratorio online all’indirizzo portswigger.net/web-security con oltre 250 lab gratuiti progettati appositamente per la pratica legale. Puoi anche usare DVWA (Damn Vulnerable Web Application) in locale tramite Docker.
Burp Suite Community vs Professional vs Enterprise: quale scegliere
PortSwigger offre tre edizioni con funzionalità molto diverse. Dal 6 gennaio 2026 sono entrati in vigore nuovi prezzi globali, quindi verifica sempre il sito ufficiale per le tariffe aggiornate nella tua valuta. I prezzi indicati di seguito riflettono le tariffe in dollari americani.
| Funzionalità | Community (gratuita) | Professional ($475/anno) | Enterprise (da $6.040/anno) |
|---|---|---|---|
| Proxy HTTP/HTTPS | Sì | Sì | Sì |
| Scanner automatico | No | Sì (100+ vulnerabilità) | Sì (scan continui) |
| Intruder (velocità) | Limitato (throttling artificiale) | Illimitato | Illimitato |
| Burp Repeater | Sì | Sì | Sì |
| Burp AI (Explore Issue, Explainer) | No | Sì (dalla versione 2025.2) | Sì |
| Montoya API per estensioni | Limitata | Completa | Completa |
| Scan concorrenti illimitati | No | No | Sì (piano unlimited a $49.999/anno) |
| Integrazione CI/CD | No | Limitata | Completa |
| Report automatici | No | HTML/XML | HTML/XML/API |
Per chi inizia, la Community Edition è sufficiente per imparare proxy, repeater e le funzioni manuali. Il limite principale è l’Intruder rallentato artificialmente e l’assenza dello scanner automatico. Per professionisti che eseguono test su contratto, la versione Professional a $475/anno è la scelta standard del settore. L’edizione Enterprise si rivolge a team che necessitano di scansioni continue integrate nei pipeline DevSecOps, con costi che salgono fino a $49.999/anno per il piano con scan illimitati.
Step 1: Scaricare e installare Burp Suite
Vai su portswigger.net/burp/pro per scaricare la versione Professional o cerca “Burp Suite Community” per la versione gratuita. PortSwigger rilascia installer nativi per Windows (exe), macOS (dmg) e Linux (sh). Su Kali Linux, Burp Suite è preinstallato e aggiornabile direttamente tramite il gestore di pacchetti di sistema.
# Aggiornare Burp Suite su Kali Linux
sudo apt update && sudo apt install burpsuite -y
# Verificare la versione installata
burpsuite --version
# Avviare Burp Suite da terminale in background
burpsuite &
Su Windows e macOS, esegui il file scaricato e segui la procedura guidata. L’installer includerà automaticamente la versione corretta di Java (24.0.2 nella release 2026.1.2). Non installare Java separatamente perché potrebbe causare conflitti di versione con quello usato internamente da Burp.
Alla prima apertura, Burp ti chiederà di selezionare il tipo di progetto. Scegli “Temporary project” per iniziare senza salvare lo stato (utile per esplorazioni rapide), oppure “New project on disk” per conservare la sessione e produrre report in seguito. Per i test professionali usa sempre un progetto su disco.
Step 2: Configurare il proxy HTTP in Burp Suite
Il cuore di Burp Suite è il proxy HTTP intercettante. Per impostazione predefinita Burp ascolta su 127.0.0.1:8080. Devi configurare il tuo browser per instradare il traffico attraverso questo proxy prima di poter intercettare le richieste.
Hai due opzioni principali per configurare il browser:
- Browser integrato di Burp (Chromium 144): vai su
Proxy > Intercept > Open Browser. Questo browser Chromium è già preconfigurato per passare attraverso il proxy e accetta automaticamente il certificato CA di Burp. Per test rapidi è l’opzione più immediata. - Firefox con FoxyProxy: installa l’estensione FoxyProxy Standard da Firefox Add-ons, aggiungi un proxy con Host
127.0.0.1e Porta8080, poi attivalo con un clic dalla barra degli strumenti quando ti serve.
Pitfall comune n.1: Lasciare il proxy attivo nel browser dopo aver chiuso Burp Suite causa errori di connessione a tutti i siti. Se il browser smette improvvisamente di caricare pagine web, verifica che il proxy FoxyProxy sia disattivato oppure che Burp Suite sia in esecuzione.
Step 3: Installare il certificato CA di Burp per intercettare HTTPS
Per intercettare il traffico HTTPS, Burp Suite agisce come un proxy man-in-the-middle e presenta certificati TLS generati dinamicamente. Il tuo browser deve fidarsi del certificato CA (Certificate Authority) di Burp, altrimenti mostrerà avvisi di sicurezza per ogni sito HTTPS e l’intercettazione non funzionerà correttamente.
# Il certificato CA di Burp è disponibile a questi indirizzi
# (accessibili solo quando il proxy è attivo in Burp):
# http://burp
# http://127.0.0.1:8080/cert
# Su Linux: importare il certificato nel trust store di sistema
# utile per testare con curl, wget, e altri strumenti CLI
wget http://127.0.0.1:8080/cert -O burp_ca.der
openssl x509 -inform DER -in burp_ca.der -out burp_ca.crt
sudo cp burp_ca.crt /usr/local/share/ca-certificates/burp_ca.crt
sudo update-ca-certificates
# Verifica che il certificato sia stato importato correttamente
curl -s https://portswigger.net -o /dev/null -w "%{http_code}"
In Firefox, vai su Impostazioni > Privacy e sicurezza > Certificati > Visualizza certificati > Autorità > Importa e carica il file burp_ca.der scaricato. Spunta “Identifica siti web” e conferma. Da questo momento Firefox si fiderà di tutti i certificati generati da Burp.
Pitfall comune n.2: Dimenticare di importare il certificato CA causa errori SSL su tutti i siti HTTPS nonostante il proxy sia configurato correttamente. Il sintomo tipico è un errore “SEC_ERROR_UNKNOWN_ISSUER” in Firefox. La soluzione è ripetere l’importazione del certificato e riavviare il browser completamente.
Step 4: Intercettare e analizzare le richieste HTTP
Con il proxy configurato, vai alla scheda Proxy > Intercept in Burp. Attiva l’intercettazione con il pulsante “Intercept is on”. Ogni richiesta HTTP/HTTPS dal browser verrà bloccata in Burp prima di essere inviata al server, permettendoti di analizzarla e modificarla.
Questo è il momento in cui esplori la struttura delle richieste: header HTTP, cookie di sessione, parametri POST, token di autenticazione CSRF, e valori nascosti nei form. Puoi modificare qualsiasi campo prima di inviare la richiesta al server con “Forward”, oppure scartarla con “Drop”.
POST /api/login HTTP/1.1
Host: target-app.esempio.com
Content-Type: application/json
Content-Length: 54
Cookie: session=abc123xyz; csrf_token=def456
{"username":"admin","password":"password123"}
Nella scheda Proxy > HTTP History trovi l’elenco completo di tutte le richieste intercettate, anche quando l’intercettazione attiva è disabilitata. Questa cronologia è fondamentale per mappare l’applicazione e identificare endpoint interessanti prima di procedere con test più approfonditi. Dalla versione 2025.10.1 puoi filtrare la cronologia per ID messaggio usando i filtri Bambda e copiare in blocco dati da più righe della tabella con la funzione “bulk copy column data”.
Step 5: Usare Burp Repeater per il test manuale delle vulnerabilità
Il Repeater è lo strumento che userai di più durante un test manuale. Permette di inviare la stessa richiesta HTTP più volte con modifiche incrementali, osservando come il server risponde a diversi input. È indispensabile per verificare manualmente le vulnerabilità trovate automaticamente o sospettate.
Per inviare una richiesta al Repeater, fai clic destro su qualsiasi richiesta in HTTP History e seleziona “Send to Repeater” (o premi Ctrl+R). Il Repeater apre un pannello diviso con la richiesta modificabile a sinistra e la risposta del server a destra.
# Esempio: testare un endpoint di ricerca per SQL injection nel Repeater
# Richiesta originale:
GET /api/prodotti?categoria=elettronica HTTP/1.1
Host: target-app.esempio.com
# Test 1: apostrofo singolo per provocare errore SQL
GET /api/prodotti?categoria=elettronica' HTTP/1.1
# Test 2: condizione sempre vera (boolean-based SQLi)
GET /api/prodotti?categoria=elettronica' OR '1'='1 HTTP/1.1
# Test 3: time-based SQLi per MySQL (ritardo di 5 secondi)
GET /api/prodotti?categoria=elettronica' AND SLEEP(5)-- HTTP/1.1
Dalla versione Professional 2025.5.3, il Repeater integra Burp AI con azioni personalizzate: puoi chiedere all’AI di analizzare la risposta del server, suggerire payload alternativi per bypassare filtri, o spiegare una vulnerabilità trovata in linguaggio semplice. Per accedere a queste funzioni, usa il menu contestuale nel pannello risposta o il pulsante AI nella toolbar del Repeater.
Pitfall comune n.3: Dimenticare di aggiornare l’header Content-Length dopo aver modificato il corpo di una richiesta POST può causare errori di parsing sul server o risposte inaspettate. Burp aggiorna automaticamente questo valore se hai abilitato l’opzione “Update Content-Length” nelle impostazioni del Repeater. Verifica sempre che questa opzione sia attiva.
Step 6: Eseguire la scansione automatica con Burp Scanner
Il Burp Scanner è disponibile solo nella versione Professional e automatizza la ricerca di vulnerabilità nell’intera applicazione web. Identifica oltre 100 categorie di vulnerabilità, tra cui tutte quelle dell’OWASP Top 10, SQL injection, XSS, XXE, SSRF, vulnerabilità di business logic, e molte tecniche avanzate.
Hai tre modalità principali per avviare una scansione:
- Scan da URL: vai su
Dashboard > New Scan, inserisci l’URL del target e configura le opzioni di crawling e audit - Scan da richiesta specifica: clic destro su una richiesta in HTTP History e seleziona “Scan” per testare solo quell’endpoint
- Scan passivo continuo: Burp analizza automaticamente il traffico che passa per il proxy senza inviare richieste aggiuntive
| Tipo di scansione | Velocità | Impatto sul server | Uso consigliato |
|---|---|---|---|
| Crawl and Audit | Lenta (ore) | Alto | Test completi in ambienti di staging |
| Audit Selected | Media (minuti) | Medio | Verifica di endpoint specifici |
| Passive Only | Real-time | Nessuno | Monitoraggio continuo senza impatto |
| Crawl Only | Media | Basso | Mappatura dell’applicazione prima del test |
Configurare lo scope prima di scansionare
Lo scope definisce quali URL Burp può processare durante la scansione. Configurarlo correttamente è fondamentale per evitare di inviare richieste non autorizzate a host di terze parti inclusi nell’applicazione (CDN, analytics, API esterne). Vai su Target > Scope e aggiungi solo i domini che hai autorizzazione scritta a testare.
# Configurazione scope tipica in Burp Suite
# Includi: dominio principale e sottodomini autorizzati
# Pattern: https://target-app.esempio.com/*
# Pattern: https://*.target-app.esempio.com/*
# Escludi sempre questi path per evitare danni collaterali:
# Pattern: https://target-app.esempio.com/logout
# Pattern: https://target-app.esempio.com/api/delete-account
# Pattern: https://target-app.esempio.com/api/send-email
# Pattern: https://target-app.esempio.com/api/payments/*
Pitfall comune n.4: Non configurare lo scope prima di avviare una scansione porta Burp a inviare richieste ai servizi di terze parti presenti nell’applicazione. Questo può violare i termini di servizio di quei provider e creare problemi legali anche se hai autorizzazione per il dominio principale. Configura sempre lo scope prima di qualsiasi attività di scansione.
Step 7: Usare Burp Intruder per attacchi automatizzati
Il Burp Intruder automatizza l’invio di richieste HTTP con payload variabili, utile per fuzzing di parametri, brute force di credenziali, enumerazione di risorse, e testing di bypass dei controlli di input. Nella versione Professional l’Intruder funziona alla massima velocità; nella Community Edition è artificialmente rallentato a circa 1 richiesta per secondo.
Per configurare l’Intruder, invia una richiesta con “Send to Intruder” (Ctrl+I), vai alla scheda Intruder > Positions e seleziona i punti della richiesta dove inserire i payload (evidenziati con il simbolo §). Poi vai su Intruder > Payloads per caricare la lista di valori da testare.
| Tipo di attacco Intruder | Comportamento | Caso d’uso tipico |
|---|---|---|
| Sniper | Un payload alla volta, una posizione alla volta | Fuzzing di un singolo parametro |
| Battering ram | Lo stesso payload in tutte le posizioni insieme | Username e password identici |
| Pitchfork | Payload paralleli sincronizzati su più posizioni | Lista username + password corrispondenti |
| Cluster bomb | Tutte le combinazioni possibili tra le liste | Brute force (2 liste indipendenti) |
Pitfall comune n.5: Usare Cluster Bomb con liste lunghe genera un numero esponenziale di richieste. Con 1.000 username e 1.000 password si generano 1.000.000 di richieste che su un server reale attivano sicuramente rate limiting, blocchi IP, o alert nei sistemi di monitoraggio del target. Usa Cluster Bomb solo su ambienti lab isolati e con liste brevi durante i test autorizzati.
Step 8: Decoder e Comparer per analisi dei dati
Il Decoder converte dati tra formati diversi: Base64, URL encoding, HTML entities, hex, gzip, e altri. È utile per analizzare token di sessione, cookie, payload codificati, e qualsiasi stringa che necessita di decodifica durante l’analisi dell’applicazione.
# Esempi di operazioni tipiche nel Decoder di Burp Suite
# 1. Decodificare un JWT (JSON Web Token)
# Token completo:
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyIjoiYWRtaW4ifQ.HASH
# Dopo decodifica Base64 dell'header (prima parte):
{"alg":"HS256","typ":"JWT"}
# Dopo decodifica Base64 del payload (seconda parte):
{"user":"admin","role":"user","exp":1750000000}
# 2. URL-decoding di un parametro codificato
admin%27%20OR%20%271%27%3D%271 => admin' OR '1'='1
# 3. Encoding HTML per analizzare XSS
<script>alert(1)</script> => <script>alert(1)</script>
Il Comparer confronta due risposte HTTP per identificare differenze sottili, utile per distinguere risposte “utente valido” da “utente inesistente” durante l’enumerazione di account, o per verificare quando un payload ha avuto un effetto diverso dalla richiesta normale. Seleziona due richieste in HTTP History, invia entrambe al Comparer con clic destro, poi usa la vista “Words” per vedere le differenze testuali o “Bytes” per differenze binarie.
Step 9: Le funzioni AI di Burp Suite nel 2026
Dalla versione Professional 2025.2, Burp Suite integra funzionalità AI direttamente nell’interfaccia. PortSwigger posiziona l’AI come potenziamento del workflow del tester, non come sostituto dell’analisi umana. Le funzioni AI disponibili nel 2026 includono:
- Explore Issue: un assistente AI che esegue investigazioni automatizzate sulle vulnerabilità trovate da Burp Scanner, approfondendo il contesto e suggerendo payload di follow-up per confermare la vulnerabilità
- Explainer: spiega le vulnerabilità trovate in linguaggio comprensibile, con raccomandazioni di remediation specifiche per il codice target identificato
- AI-enhanced scanning: migliora l’accuratezza dello scanner riducendo i falsi positivi tramite analisi contestuale delle risposte HTTP
- AI-powered recorded login sequences: registra automaticamente e riproduce sequenze di login complesse, inclusi form multi-step e autenticazione a più fasi
- Montoya API con AI: permette agli sviluppatori di estensioni di integrare funzionalità AI senza gestire API key esterne o dipendenze aggiuntive
Per accedere alle funzioni AI in Burp Professional 2025.2+, vai su Settings > AI > Burp AI e configura le impostazioni. Alcune funzioni AI richiedono connettività a internet verso i server di PortSwigger.
Pitfall comune n.6: Fidarsi ciecamente dei risultati AI senza verifica manuale. Le funzioni AI di Burp possono suggerire payload o spiegazioni errate in contesti insoliti o con applicazioni che usano tecnologie non standard. Usa sempre l’AI come punto di partenza, poi verifica manualmente nel Repeater prima di includere una finding nel report finale al cliente.
Step 10: Identificare le vulnerabilità OWASP Top 10
Burp Suite è lo strumento di riferimento per trovare le vulnerabilità descritte nell’OWASP Web Security Testing Guide. Ecco come usarlo per le categorie più comuni.
SQL Injection: test manuale e automatico
Intercetta una richiesta con parametri che vengono passati al database, inviala al Repeater e prova payload classici. Burp Scanner rileva automaticamente SQL injection inviando payload come apostrofi singoli, condizioni booleane, e query time-based, poi analizza le differenze nelle risposte per confermare la vulnerabilità.
# Payload SQL injection da testare manualmente nel Repeater
# Test 1: apostrofo singolo (genera errore di sintassi SQL se vulnerabile)
GET /prodotti?id=1' HTTP/1.1
# Test 2: boolean-based (due risposte diverse confermano SQLi)
GET /prodotti?id=1 AND 1=1-- HTTP/1.1 # dovrebbe restituire risultati
GET /prodotti?id=1 AND 1=2-- HTTP/1.1 # dovrebbe restituire pagina vuota
# Test 3: time-based per MySQL (conferma senza output visibile)
GET /prodotti?id=1 AND SLEEP(5)-- HTTP/1.1
# Test 4: time-based per SQL Server
GET /prodotti?id=1; WAITFOR DELAY '0:0:5'-- HTTP/1.1
Cross-Site Scripting (XSS): test con DOM Invader
Per testare XSS riflessa, intercetta richieste con parametri che vengono restituiti nella risposta HTML. Il DOM Invader di Burp, disponibile nel browser integrato, identifica automaticamente i “sink” JavaScript dove l’input utente raggiunge funzioni pericolose come innerHTML, eval(), e document.write().
# Payload XSS da testare nel Repeater
# Test base per XSS riflessa:
GET /cerca?q=<script>alert(document.domain)</script> HTTP/1.1
# Payload che bypassa filtri che rimuovono tag script:
GET /cerca?q=<img src=x onerror=alert(1)> HTTP/1.1
# Payload per XSS stored in campo commento:
POST /commenti HTTP/1.1
Content-Type: application/json
{"testo":"<svg onload=alert('XSS stored')>","autore":"test"}
Step 11: Usare le estensioni BApp Store
Il BApp Store (Burp App Store) contiene centinaia di estensioni scritte dalla community e da PortSwigger che ampliano le funzionalità di Burp. Le estensioni si installano direttamente dalla scheda Extensions > BApp Store con un clic, senza configurazione manuale.
| Estensione | Funzione principale | Versione richiesta |
|---|---|---|
| Autorize | Testa automaticamente problemi di autorizzazione e IDOR | Community e Professional |
| JWT Editor | Modifica e firma JWT, testa attacchi come “alg:none” | Community e Professional |
| Param Miner | Scopre parametri nascosti e non documentati | Community e Professional |
| Logger++ | Log avanzato di tutte le richieste con filtri personalizzati | Community e Professional |
| Active Scan++ | Aggiunge check di sicurezza aggiuntivi allo scanner | Solo Professional |
| Turbo Intruder | Intruder ad alta velocità per race condition e test massicci | Community e Professional |
| Hackvertor | Encoding/decoding avanzato con trasformazioni personalizzate | Community e Professional |
Le estensioni usano la Montoya API di PortSwigger, aggiornata significativamente nella versione 2025.10.1. Le novità principali includono: ricaricamento automatico delle estensioni quando i file sorgente cambiano (utile per chi sviluppa estensioni personalizzate), RankingUtils per classificare le risposte per anomalia, e CompressionUtils con supporto per il formato inflate.
Pitfall comune n.7: Avere troppe estensioni attive contemporaneamente rallenta significativamente Burp Suite, in particolare il proxy e lo scanner. Mantieni attive solo le estensioni necessarie per il progetto corrente e disabilita le altre dalla scheda Extensions selezionando la casella “Loaded” per togglare lo stato.
Step 12: Generare report professionali dei risultati
Un penetration test senza report scritto è privo di valore per il cliente. Burp Suite Professional genera report automatici in formato HTML e XML con tutte le vulnerabilità trovate dalla scansione automatica. Per le finding identificate manualmente devi aggiungerle come issue personalizzati tramite clic destro sull’endpoint nel Site Map.
- Vai su
Target > Site Mape seleziona il dominio target nello scope - Clic destro sul dominio e seleziona “Report Issues for This Host”
- Scegli il formato (HTML per la leggibilità, XML per l’elaborazione automatica)
- Seleziona la gravità minima delle issue da includere e il livello di dettaglio tecnico
- Scegli la destinazione del file e clicca “Next” per generare il report
Il report HTML generato da Burp include per ogni vulnerabilità: nome della vulnerabilità, gravità (Critical/High/Medium/Low/Informational), URL e parametro affetto, evidenza tecnica estratta dalla richiesta/risposta, e descrizione con riferimenti CWE. Per i report consegnati ai clienti, integra l’output di Burp con un documento che aggiunga executive summary in linguaggio non tecnico, impatto aziendale stimato per ogni finding, e roadmap di remediation con priorità. Strumenti come Serpico o Dradis Framework aiutano a strutturare report professionali a partire dai dati di Burp.
Burp Suite vs OWASP ZAP: confronto diretto 2026
OWASP ZAP (Zed Attack Proxy) è l’alternativa open source gratuita più diffusa a Burp Suite. La scelta tra i due dipende dal contesto d’uso, dal budget, e dall’integrazione con il workflow esistente del team di sicurezza.
| Caratteristica | Burp Community | Burp Professional | OWASP ZAP |
|---|---|---|---|
| Prezzo | Gratuito | $475/anno/utente | Gratuito (open source) |
| Scanner automatico | No | Sì (100+ vuln.) | Sì (integrato) |
| Velocità Intruder/Fuzzer | Limitata artificialmente | Illimitata | Illimitata (Fuzzer) |
| AI integrata | No | Sì (dalla versione 2025.2) | In fase di sviluppo |
| Integrazione CI/CD | No | Limitata | Completa (Docker/CLI) |
| Facilità d’uso | Alta | Alta | Media |
| Supporto | Forum PortSwigger | Supporto commerciale incluso | Community OWASP |
| Licenza | Proprietaria gratuita | Proprietaria commerciale | Apache 2.0 |
Per i professionisti che fatturano pentesting ai clienti, Burp Suite Professional rimane lo standard de facto del settore. Per team DevSecOps che integrano la sicurezza nei pipeline CI/CD, OWASP ZAP è spesso preferito per la natura open source e l’integrazione Docker nativa. Community Edition di Burp e OWASP ZAP sono complementari per chi studia e non vuole spendere: molti penetration tester usano entrambi per coprire scenari diversi.
Tecniche avanzate per penetration tester esperti
Per chi usa Burp Suite da anni, alcune tecniche fanno la differenza tra un test superficiale e un’analisi approfondita che trova vulnerabilità complesse.
Bambda per filtrare il traffico in modo preciso: Bambda è il linguaggio di scripting Java inline integrato in Burp per scrivere filtri personalizzati nella HTTP History. Permette di isolare rapidamente richieste che corrispondono a criteri complessi senza installare un’estensione.
// Filtro Bambda: richieste POST con risposta 200 che contiene "error"
requestResponse.request().method().equals("POST")
&& requestResponse.response().statusCode() == 200
&& requestResponse.response().bodyToString().toLowerCase().contains("error")
// Filtro Bambda: richieste JSON con risposta lunga (potenziale data exposure)
requestResponse.request().hasHeader("Content-Type")
&& requestResponse.request().headerValue("Content-Type").contains("application/json")
&& requestResponse.response().body().length() > 10000
Integrazione con sqlmap per SQL injection confermata: Quando hai confermato una SQL injection nel Repeater, puoi sfruttarla sistematicamente con sqlmap passandogli la richiesta salvata da Burp.
# Salvare la richiesta da Burp: clic destro > Save item > salva come request.txt
# Usare la richiesta salvata con sqlmap per estrarre il database
sqlmap -r /path/to/request.txt --dbs --batch --level=3 --risk=2
# Estrarre tabelle da un database specifico
sqlmap -r /path/to/request.txt -D nome_database --tables --batch
# Estrarre dati da una tabella specifica
sqlmap -r /path/to/request.txt -D nome_database -T utenti --dump --batch
Burp Collaborator per vulnerabilità out-of-band: Burp Collaborator è un server remoto gestito da PortSwigger che rileva interazioni out-of-band: quando un payload causa che il server target effettui richieste DNS o HTTP verso l’esterno. Questa tecnica identifica vulnerabilità come SSRF (Server-Side Request Forgery), XXE (XML External Entities), e blind SQL injection che non producono output visibile nella risposta HTTP normale. In Professional, Collaborator è incluso; esiste anche un server Collaborator self-hosted per ambienti air-gapped.
Macro per sessioni che scadono rapidamente: Le “Macro” di Burp registrano una sequenza di richieste (es. login e acquisizione token CSRF) che viene ripetuta automaticamente prima di ogni richiesta dello scanner. Configurale in Project options > Sessions > Macros per mantenere la sessione attiva durante scansioni lunghe su applicazioni con token a breve scadenza.
Guida alla risoluzione dei problemi
- Il browser non si connette a internet con il proxy attivo: Verifica che Burp sia in esecuzione e il listener attivo su
Proxy > Proxy settings > Proxy listeners. Controlla che la porta 8080 non sia usata da un altro processo con il comandonetstat -tlnp | grep 8080su Linux onetstat -ano | findstr :8080su Windows. - Errore SEC_ERROR_UNKNOWN_ISSUER su siti HTTPS: Il certificato CA di Burp non è stato importato correttamente. Ripeti la procedura del Step 3 e riavvia completamente il browser (chiudi tutti i processi, non solo la finestra).
- Burp si avvia lentamente o va in crash durante la scansione: La heap Java potrebbe essere insufficiente. Aumenta la memoria in
Burp > Settings > Suite > Java optionsportando il valore a 2048 MB o superiore, poi riavvia Burp. - Lo scanner non trova vulnerabilità su un’app visibilmente insicura: Verifica che l’autenticazione sia configurata. Se l’applicazione richiede login, configura le credenziali in
Project > Project options > Sessionse aggiungi una regola di session handling per mantenere la sessione durante la scansione. - L’Intruder in Community Edition è troppo lento: Installa l’estensione Turbo Intruder dal BApp Store, che bypassa le limitazioni di velocità anche nella versione gratuita per molti scenari. In alternativa, usa FFUF o wfuzz da riga di comando e Burp come proxy intermedio.
- Errori di certificato su siti con certificate pinning: Alcune applicazioni native e alcune web app usano certificate pinning che impedisce l’intercettazione. Usa il browser integrato di Burp che gestisce automaticamente molti casi, oppure usa un dispositivo mobile rooted/emulatore per app mobile.
- Il file di progetto Burp cresce a decine di GB: I file .burp crescono rapidamente su test lunghi. Abilita la pulizia automatica della cronologia in
Project > Project options > Miscoppure esporta periodicamente le richieste rilevanti e ricomincia con un progetto nuovo. - Burp non intercetta il traffico di app mobile: Configura il dispositivo mobile per usare l’IP del computer come proxy sulla porta 8080, poi installa il certificato CA di Burp nel dispositivo. Su Android 7+ le app ignorano i certificati CA installati dall’utente; devi usare un dispositivo rooted, un emulatore con CA di sistema modificato, o Frida per il bypass del certificate pinning.
Progetto pratico: testare DVWA con Burp Suite
Ecco un workflow completo per chi vuole praticare con DVWA (Damn Vulnerable Web Application), un’applicazione web volutamente insicura e legale da testare.
# Fase 1: Avviare DVWA in locale con Docker
docker run -d -p 8888:80 --name dvwa vulnerables/web-dvwa
# Fase 2: Accedere a DVWA e configurarlo
# Apri http://localhost:8888 nel browser integrato di Burp
# Credenziali: admin / password
# Vai su "Setup/Reset DB" e clicca "Create / Reset Database"
# Poi vai su "DVWA Security" e imposta il livello "Low"
# Fase 3: Configurare lo scope in Burp
# Target > Scope > Include: http://localhost:8888/*
# Fase 4: Testare SQL Injection manualmente
# Vai sulla pagina "SQL Injection" di DVWA
# Inserisci nel campo ID: 1' OR '1'='1
# Osserva nel Repeater di Burp: tutti gli utenti del database vengono restituiti
# Fase 5: Avviare una scansione (solo con Professional)
# Target > Site Map > http://localhost:8888
# Clic destro > Scan > Active Scan
Il PortSwigger Web Security Academy offre oltre 250 lab gratuiti strutturati per categorie di vulnerabilità, da SQL injection a tecniche avanzate come HTTP Request Smuggling, OAuth2 flaws, e Web Cache Poisoning. Ogni lab ha un obiettivo specifico e una soluzione disponibile. Sono la risorsa migliore per imparare Burp Suite su scenari realistici senza rischi legali.
Aspetti legali del penetration testing in Italia
In Italia, l’accesso non autorizzato a sistemi informatici è punito dall’art. 615-ter del Codice Penale con pene fino a 3 anni di reclusione (fino a 5 anni in caso di aggravanti come danni ai sistemi o accesso a dati riservati). Usare Burp Suite senza autorizzazione scritta equivale a violare la legge, indipendentemente dalle intenzioni dichiarate.
Per esercitare la professione di penetration tester in modo conforme alla legge italiana:
- Ottieni sempre un contratto scritto firmato che specifichi il perimetro del test, i sistemi autorizzati (hostname, IP range), le date di inizio e fine, e la firma di un soggetto con autorità legale per concedere l’accesso
- Documenta ogni azione con timestamp precisi durante il test
- Non accedere mai a sistemi fuori dallo scope concordato, anche se li scopri durante il test (es. sistemi collegati al target originale)
- Se trovi dati personali di terzi (clienti, dipendenti) nei sistemi testati, segnalalo immediatamente e non accedere oltre il necessario per documentare la vulnerabilità
- Per la pratica senza autorizzazione usa ambienti dedicati: DVWA, VulnHub, Hack The Box, TryHackMe, e i lab di PortSwigger Web Security Academy
L’installazione di Burp Suite su Kali Linux è legale e documentata ufficialmente da Offensive Security. Il reato si configura solo nell’uso non autorizzato, non nel possesso dello strumento.
Copertura correlata
Articoli correlati
- Nmap: Scansionare una Rete in 12 Step [2026] – strumento complementare per la fase di ricognizione prima di usare Burp Suite
- Nessus vs OpenVAS: Scanner di Vulnerabilita, $3.990 vs Gratis [2026] – confronto tra vulnerability scanner per l’infrastruttura di rete
- XSS in Node.js: Prevenirlo in 12 Step [2026] – come correggere le vulnerabilità XSS trovate con Burp Suite
- OWASP Top 10 in Node.js: 12 Steps to Secure Your API [2026] – lato difensivo delle vulnerabilità che Burp Suite trova
- Wazuh: Installazione e Configurazione SIEM/XDR in 12 Step [2026] – monitoraggio e detection degli attacchi che Burp Suite simula
- WAF con ModSecurity e Node.js: 12 Step, 30 Min [2026] – difesa attiva delle web application contro gli attacchi rilevabili con Burp
Domande frequenti su Burp Suite
Burp Suite Community Edition è sufficiente per imparare il pentesting?
Sì. La Community Edition include Proxy, Repeater, Decoder, Comparer, Intruder (rallentato), e il browser integrato Chromium. È sufficiente per imparare tutte le tecniche di testing manuale e completare la maggior parte dei lab di PortSwigger Web Security Academy. Lo scanner automatico e le funzioni AI sono disponibili solo nella Professional, ma non sono necessari per costruire competenze solide di base.
Posso usare Burp Suite su Kali Linux gratuitamente?
Sì. Su Kali Linux la Community Edition di Burp Suite è preinstallata e aggiornabile con sudo apt install burpsuite -y. Per usare la versione Professional su Kali devi acquistare una licenza su portswigger.net e inserirla all’avvio del programma.
Burp Suite intercetta automaticamente il traffico HTTPS?
Sì, ma richiede l’importazione del certificato CA di Burp nel browser (descritto nel Step 3). Il browser integrato di Burp (Chromium 144.0.7559.97 nella versione 2026.1.2) accetta automaticamente il certificato CA, quindi per i test rapidi puoi usarlo direttamente senza configurazione aggiuntiva nel browser esterno.
Qual è la differenza principale tra Burp Scanner e OWASP ZAP?
Burp Scanner nella versione Professional è generalmente considerato più accurato nel trovare vulnerabilità complesse e produce meno falsi positivi rispetto a ZAP. OWASP ZAP è gratuito, open source, con licenza Apache 2.0, e meglio integrato nei pipeline CI/CD tramite Docker e API REST. Nel 2026 Burp ha funzioni AI più mature. Per test professionali su contratto, Burp Professional è la scelta prevalente; per automazione e DevSecOps, ZAP è spesso preferito.
Come si gestiscono applicazioni con autenticazione OAuth2 in Burp?
Burp gestisce OAuth2 tramite le Session Handling Rules e le Macro. Registri la sequenza di autenticazione (login, redirect, scambio token) come macro, poi configuri una regola di sessione che ripete questa macro prima di ogni richiesta di scansione. Burp Scanner rileva anche vulnerabilità specifiche dei flussi OAuth2, come token leakage tramite Referer header e state parameter mancante (CSRF su OAuth).
Vale la pena pagare $475/anno per Burp Professional?
Per chi lavora come penetration tester professionale su contratto, sì. Un singolo engagement di pentesting per un cliente medio copre facilmente il costo annuale della licenza. Per chi studia o usa Burp solo occasionalmente, la Community Edition combinata con i lab gratuiti di PortSwigger è un’ottima alternativa senza costi. Dal 6 gennaio 2026 PortSwigger ha applicato un aggiornamento globale dei prezzi; verifica sempre il prezzo aggiornato nella tua valuta su portswigger.net prima di acquistare.
Dove trovare lab gratuiti per praticare con Burp Suite in modo legale?
Le risorse principali sono: PortSwigger Web Security Academy (250+ lab gratuiti, la risorsa più completa e strutturata), Hack The Box (lab con livelli progressivi, abbonamento a pagamento), TryHackMe (percorsi guidati adatti ai principianti), VulnHub (macchine virtuali vulnerabili da scaricare), DVWA e WebGoat per ambienti locali con Docker.
Come si usa Burp Suite per testare le API REST?
Per testare API REST con Burp, configura il proxy e usa il client HTTP dell’applicazione (Postman, curl, o il frontend web) per generare traffico verso le API. Le richieste vengono intercettate nel Proxy e puoi inviarle al Repeater per testare manualmente parametri JSON, header di autenticazione (JWT, API key), e endpoint che non hanno un’interfaccia grafica. Il Scanner Professional analizza automaticamente anche le API REST se incluse nello scope.




