
Plugin Burp per bypassare i WAF tramite l'inserimento di dati spazzatura
La maggior parte dei firewall per applicazioni web (WAF) ha limitazioni sulla quantità di dati che può elaborare quando viene inviato un corpo della richiesta. Ciò significa che per le richieste HTTP che contengono un corpo della richiesta (cioè POST, PUT, PATCH, ecc.), di solito è possibile bypassare il WAF semplicemente anteponendo dati spazzatura.
Quando la richiesta viene riempita con questi dati spazzatura, il WAF elaborerà fino a X kb della richiesta e la analizzerà, ma tutto ciò che supera i limiti del WAF passerà direttamente.
nowafpls è un semplice plugin Burp che inserisce contestualmente questi dati spazzatura nella tua richiesta HTTP all'interno della scheda repeater. Puoi scegliere una quantità predefinita di dati spazzatura da inserire, oppure inserire una quantità arbitraria selezionando l'opzione "Custom".
Questo strumento è solo circa 80 righe di Python, è incredibilmente semplice ma funziona per la maggior parte dei WAF lol.
nowafpls è un plugin Burp basato su Jython.
https://github.com/assetnote/nowafpls/assets/5241936/dad77c3a-d550-4e5d-894d-027256137148
nowafpls inserirà automaticamente i dati spazzatura in base al tipo di richiesta (URLEncoded/XML/JSON).
La versione Caido di questo plugin è mantenuta da @Rhynorater e può essere trovata nel seguente gist:
https://gist.github.com/Rhynorater/ace68d4976357ca0937cb4669f303306
o nella EvenBetter Workflow Library.
MIT
| Fornitore WAF | Dimensione massima di ispezione del corpo della richiesta |
|---|
| Cloudflare | 128 KB per il motore di ruleset, fino a 500 MB per la versione enterprise |
| AWS WAF | 8 KB - 64 KB (configurabile in base al servizio) |
| Akamai | 8 KB - 128 KB |
| Azure WAF | 128 KB |
| Fortiweb by Fortinet | 100 MB |
| Barracuda WAF | 64 KB |
| Sucuri | 10 MB |
| Radware AppWall | fino a 1 GB per cloud WAF |
| F5 BIG-IP WAAP | 20 MB (configurabile) |
| Palo Alto | 10 MB |
| Cloud Armor by Google | 8 KB (può essere aumentato a 128 KB) |