
Proof-of-Concept- und Patch-Verifizierungsnotizen für CVE-2026-96873, eine reflektierte XSS in der diagnostischen Explain-Ausgabe von CirrusSearch, mit einem Python-Validierungsskript.
Melder: Marco Paciaroni (BomboBombone).
CirrusSearch hat suchbezogenen diagnostischen Text als HTML gerendert, ohne ihn konsistent zu escapen. Nicht vertrauenswürdiger Text konnte in einer Explain-Antwort zu ausführbarem Markup werden.
Der CVE-Eintrag identifiziert CirrusSearch bis einschließlich 1.46.0 als betroffen.
Ein funktionierendes CirrusSearch-Backend ist erforderlich. Der gemeldete Pfad war ohne Konto erreichbar, und die Ausnutzung erforderte, dass ein Opfer eine vom Angreifer vorbereitete Anfrage öffnet. Die Skriptausführung erfolgte im Wiki-Origin mit den dem Opfer verfügbaren Berechtigungen.
Der ursprüngliche Bericht dokumentiert eine lokale HTTP-Antwort, die als HTML gerendert wurde, sowie die Browser-Ausführung eines harmlosen Markers. Eine Kontrollanfrage erzeugte eine gewöhnliche diagnostische Ausgabe.
Die Upstream-Änderung baut die Explain-Ausgabe mit MediaWiki-HTML-Helfern neu auf, sodass Beschreibungen, Pfade, Titel und anderer Text für ihren Ausgabekontext escaped werden.
python poc.py https://wiki.example
Das Skript übermittelt einen harmlosen Titeländerungs-Marker über den betroffenen diagnostischen Pfad, gibt die generierte URL aus und prüft, ob der Marker als rohes HTML zurückgegeben wurde.