Cloudflare hat ein Testsystem eingesetzt, um die Web Application Firewall (WAF) des Unternehmens auf mögliche Lücken zu untersuchen. Ausgangspunkt waren Angriffsanfragen, die die Firewall bereits abgewehrt hatte. KI-Modelle veränderten deren Kodierung, Platzierung oder Übermittlung und passten weitere Versuche an die jeweils erhaltenen Antworten an. Insgesamt umfasste der Test 45 Szenarien und 1.107 Versuche.
Die Modelle hatten keinen Zugriff auf die WAF-Regeln, den Quellcode oder interne Sicherheitsdaten. Ein Python-System übernahm die Ausführung: Es erstellte und wiederholte HTTP-Anfragen, führte den Zustand eines Szenarios und sammelte Antworten. Ein Modell schlug jeweils eine Veränderung vor, ein weiteres prüfte die Antwort. So konnten folgende Versuche angepasst werden, ohne den Modellen die direkte Kontrolle über die Anfragen zu geben.
Ein Beispiel betraf SSRF-Angriffe, bei denen eine Anfrage an eine interne oder anderweitig geschützte Adresse gerichtet wird. Das Modell probierte verschiedene Schreibweisen und Positionen einer Cloud-Metadaten-Adresse aus. Nachdem eine dezimale Darstellung blockiert worden war, änderte es die Adresse in eine Variante mit abschließendem Punkt. Die Antwort war eine Weiterleitung statt einer WAF-Blockierung. Cloudflare wertete das nicht als erfolgreichen Angriff, sondern sicherte das Ergebnis zur Untersuchung.
Nach der menschlichen Sichtung blieben 607 Ergebnisse für die Auswertung: 558 Anfragen waren von der WAF blockiert worden, 49 galten als relevant für weitere Abhilfe. 48 dieser 49 Befunde betrafen Command Injection oder Server-Side Request Forgery (SSRF). Prüfer kontrollierten unter anderem, ob Anfragen das Ziel tatsächlich erreicht hatten, weiterhin bösartig waren und sicher reproduziert werden konnten. Die Untersuchung führte zu drei Änderungen am Cloudflare Managed Ruleset: zwei neue Erkennungen namens SSRF - Obfuscated Host und SSRF - Restricted Protocol sowie eine Verbesserung der bestehenden Regel SSRF - Cloud.
