
Burp-Erweiterungs-Scanner für CRLF-Injection und HTTP-Desync-Angriffe, unter Verwendung mutierter Probes, WAF-Fehlalarm-Prüfungen und optionaler automatischer Ausnutzung von Response-Queue-Poisoning.
Dies ist die Burp-Extension, mit der wir alle Fälle aus unserer Forschung CRLF-Powered Desync Attacks: Beheading HTTP Streams erkannt haben.
Es ist ein forschungsorientierter Scanner, der mit BulkScan erstellt wurde, ähnlich wie HTTP Request Smuggler und andere.
Verwendet alle definierten Mutationen in src/main/kotlin/ReqMutator, um eine harmlose und dann eine Testanfrage zu senden. Wenn die Antwort eine erwartete Übereinstimmung enthält oder signifikant abweicht, wird ein Problem gemeldet.
Wenn die Antwort alle erwarteten Übereinstimmungen enthält, wird das Problem normal gemeldet. Wenn der Fallback-Diff aktiviert ist (verwendet serverStatus aus BulkScan), wird das Problem als Dodgy gemeldet.
Es gibt auch einen WAFChecker, der statische Zeichenketten verwendet, um FPs durch WAF-Regeln zu reduzieren, sowie eine Folge-Logik, die sicherstellt, dass das Verhalten konsistent ist oder zumindest höchstwahrscheinlich keine WAF-Regel betrifft, die nicht bereits in der WAFChecker-Liste enthalten ist.
Zusätzlich gibt es eine Schaltfläche "auto-exploit via Response Queue Poisoning", die dir möglicherweise einen Hinweis darauf gibt, ob RQP sofort funktioniert.
Injiziert einen Header mit einer zufälligen Canary in den Request-Pfad und prüft, ob dieser Header in den Response-Headern zurückgespiegelt wird. Ist das der Fall, wird die Injection bestätigt und ein Problem gemeldet.
Anschließend injiziert es einen Content-Length-Header, um zu prüfen, ob die Antwort aufgeteilt werden kann. Wenn dies einen Timeout oder eine Änderung des serverStatus verursacht, wird das Problem hochgestuft und als Splitting? gemeldet.