Burp Suite, sviluppato dalla società britannica Portswigger Ltd, è un software utilizzato per effettuare penetration test sulle applicazioni web. Le decine di tool che ingloba al suo interno ci aiutano nel processo di testing: iniziando dalla mappatura, all'analisi della superficie di attacco fino ad arrivare alla ricerca e sfruttamento delle vulnerabilità. I principali componenti di Burp suite sono:
- Proxy: ci aiuta ad ispezionare e modificare il traffico. Si interpone fra il browser e l'applicazione da analizzare;
- Spider: Indispensabile per il crawling dei contenuti;
- Scanner: Automatizza l'individuazione di numerosi tipi di vulnerabilità;
- Intruder: Strumento utile a create attacchi personalizzati per sfruttare vulnerabilità inusuali;
- Repeater: Manipola e ri-invia il contenuto di una richiesta;
- Sequencer: Utilizzato principalmente per testare la generazione casuale dei tokens di sessione.
Le versioni di Burp Suite
Sul sito ufficiale di Burp possiamo scegliere fra due versioni: Free Edition o Professional Edition. La professional offre molti più strumenti, ma costa circa 300 dollari all'anno per poter essere utilizzata su un solo computer. In questo articolo utilizzeremo la versione gratuita. Gli strumenti inclusi nella pro ma non nella free sono:
- Scanner: Ne abbiamo parlato nell'introduzione. È come avere un Acunetix Web Scanner dentro Burp;
- Salva / Ripristina sessione: Ci consente di salvare i risultati e di poterli ricaricare in seguito o di avere dei backup ogni TOT minuti (in caso di crash);
- Ricerca: Funzione banale, ma che fa risparmiare molto tempo. Ricerca contenuto all'interno delle richieste (IN o OUT);
- Analisi del target: Utile per creare preventivi. Ci indica quante pagine statiche, dinamiche e quanti parametri contengono i form;
- Ricerca di contenuti non linkati: Sistema di crawling molto avanzato che utilizza dizionari e web spidering (ricerca di pagine linkate su google ad esempio);
- Organizzazione dei tasks: Permette di avviare o fermare delle operazioni automatizzate ad una certa ora (per i più pratici di Linux sarebbe come un cron.d);
- Aggiornamenti frequenti: Possibilità di ottenere aggiornamenti per lo scanner o di funzionamento prima degli utenti Free.
Avvio e interfaccia di Burp Suite
Burp Suite è scaricabile in formato .jar che è il formato di archiviazione di Java. Per avviarlo quindi bisogna aver scaricato ed installato il Java Runtime Environment. Per eseguirlo basterà cliccare due volte sul file .JAR o utilizzare la linea di comando:
java -jar C:\burpsuite_free_v1.6.jar
Configurazione di Burp
Come anticipato, bisogna far passare il traffico attraverso il proxy di Burp Suite:
- Andiamo su “Proxy - Options” e impostiamo i parametri come in figura
- Andiamo su “Proxy - Intercept” e clicchiamo su “Intercept is on” in modo da disabilitare la funzione di intercept
- Apriamo il nostro browser preferito e settiamo il proxy su 127.0.0.1:8080
- Apriamo un sito sul browser e ritorniamo sull'interfaccia di Burp Suite
All'interno delle tab: “Proxy - HTTP History” possiamo vedere passare tutte le richieste. Il passo successivo è quello di fissare un punto preciso da cui partire con l'analisi. Nel nostro caso sarà: https://www.html.it/sicurezza/. Per fissarlo usiamo la funzione “Add to scope”:
Infine possiamo far partire lo spider (Spider - Control - Spider is paused) che ci aiuterà ad aver chiara la struttura delle cartelle e dei file del sito sotto analisi. Potrebbe impiegarci parecchi minuti a seconda della quantità di materiale che offre il sito e della velocità di connessione.
La struttura è visibile da “Target - Site map”
Gli elementi in grigio ci indicano che la cartella o i file esistono ma non ne è stato verificato il contenuto, mentre gli elementi in nero ci indicano che Burp Suite ha prelevato il contenuto della cartella / file ed è quindi visionabile all'interno della tab “Response” a destra.