
Proof-of-Concept und technische Dokumentation für CVE-2026-73321, eine Denial-of-Service-Schwachstelle in XenForo, die durch tief verschachteltes BBCode verursacht wird und PHP-Worker erschöpft.
XenForo vor Version 2.3.13 kann einen PHP-Worker durch tief verschachteltes BBCode erschöpfen.
Die öffentliche editor/to-html-Route sendet vom Gast bereitgestelltes BBCode durch XenForos rekursiven Parser und Renderer. Es wird vor dieser Arbeit keine Rohlängen- oder Verschachtelungsgrenze angewendet. Der normale Nachrichten-Vorbereitungspfad verarbeitet BBCode ebenfalls vor der endgültigen Nachrichtenlängenvalidierung.
Auf einer autorisierten XenForo-2.3.12-Installation (Build 2031270) setzte eine einzelne Gastanfrage mit 5.000 verschachtelten [quote]-Tags (75.005 Bytes) die Verbindung zurück. Apache protokollierte einen Windows-Stack-Overflow-Exit (0xC00000FD) für das PHP-Kind und startete es neu.
Dieses Repository dokumentiert bewusst das engere Verhalten, das direkt durch den Test nachgewiesen wurde: Eine einzelne nicht authentifizierte Anfrage kann einen Worker zum Absturz bringen/neu starten, und wiederholte gleichzeitige Anfragen können die Verfügbarkeit verringern. Es wird kein Codeausführung, Datenzugriff, Persistenz oder ein dauerhafter hostweiter Ausfall behauptet. XenForo 2.3.13 enthält den Fix.
python poc.py https://xenforo.example 5000 --confirm-disruption
Das Skript sendet genau eine Anfrage und begrenzt die Tiefe auf 5.000. Es erfordert eine explizite Störungsbestätigung. Führen Sie es nur auf einer isolierten Installation aus, während Sie das Webserver-Fehlerprotokoll und die Prozessgesundheit beobachten.
Entdeckt von Marco Paciaroni (BomboBombone).