Test di sicurezza - Hacking di applicazioni web
Esistono varie metodologie / approcci che possiamo utilizzare come riferimento per eseguire un attacco.
Applicazione Web - Metodologie PenTesting
Si possono tenere in considerazione i seguenti standard durante lo sviluppo di un modello di attacco.
Tra il seguente elenco, OWASP è il più attivo e ci sono numerosi collaboratori. Ci concentreremo sulle tecniche OWASP che ogni team di sviluppo prende in considerazione prima di progettare un'app web.
PTES - Penetration Testing Execution Standard
OSSTMM - Manuale metodologico di test di sicurezza open source
Tecniche di test OWASP - Open Web Application Security Protocol
OWASP Top 10
Il team di Open Web Application Security Protocol ha rilasciato le prime 10 vulnerabilità più diffuse nel web negli ultimi anni. Di seguito è riportato l'elenco delle falle di sicurezza più diffuse in un'applicazione basata sul Web.
Applicazione - Hands On
Per comprendere ciascuna delle tecniche, lavoriamo con un'applicazione di esempio. Eseguiremo l'attacco a "WebGoat", l'applicazione J2EE sviluppata esplicitamente con falle di sicurezza per scopi di apprendimento.
È possibile trovare i dettagli completi sul progetto webgoat https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project. Per scaricare l'applicazione WebGoat, vai ahttps://github.com/WebGoat/WebGoat/wiki/Installation-(WebGoat-6.0) e vai alla sezione download.
Per installare l'applicazione scaricata, assicurati innanzitutto di non avere alcuna applicazione in esecuzione sulla porta 8080. Può essere installata utilizzando un solo comando: java -jar WebGoat-6.0.1-war-exec.jar. Per maggiori dettagli, visita Installazione di WebGoat
Dopo l'installazione, dovremmo essere in grado di accedere all'applicazione navigando in http://localhost:8080/WebGoat/attack e la pagina verrà visualizzata come mostrato di seguito.
Possiamo utilizzare le credenziali dell'ospite o dell'amministratore visualizzate nella pagina di accesso.
Proxy Web
Per poter intercettare il traffico tra client (Browser) e Server (Sistema in cui è ospitata l'applicazione Webgoat nel nostro caso), dobbiamo utilizzare un proxy web. Useremo Burp Proxy che può essere scaricato dahttps://portswigger.net/burp/download.html
È sufficiente scaricare la versione gratuita della suite burp come mostrato di seguito.
Configurazione di Burp Suite
Burp Suite è un web proxy in grado di intercettare ogni pacchetto di informazioni inviato e ricevuto dal browser e dal webserver. Questo ci aiuta a modificare i contenuti prima che il client invii le informazioni al Web-Server.
Step 1- L'app è installata sulla porta 8080 e Burp è installato sulla porta 8181 come mostrato di seguito. Avvia la suite Burp ed effettua le seguenti impostazioni per visualizzarla nella porta 8181 come mostrato di seguito.
Step 2- Dovremmo assicurarci che Burp stia ascoltando la porta # 8080 dove è installata l'applicazione in modo che la suite Burp possa intercettare il traffico. Queste impostazioni dovrebbero essere effettuate nella scheda Ambito di Burp Suite come mostrato di seguito.
Step 3- Quindi effettua le impostazioni proxy del tuo browser per ascoltare la porta 8181 (porta Burp Suite). Quindi abbiamo configurato il proxy Web per intercettare il traffico tra il client (browser) e il server (server Web) come mostrato di seguito -
Step 4 - L'istantanea della configurazione è mostrata di seguito con l'aiuto di un semplice diagramma del flusso di lavoro come mostrato di seguito