
Report e script proof-of-concept per CVE-2026-96875, una XSS riflessa nei filtri gerarchici di MediaWiki Cargo Drilldown, con note di validazione e riferimenti alla correzione upstream.
Segnalatore: Marco Paciaroni (BomboBombone).
Cargo non preservava l'escaping durante la formattazione di un valore di filtro della gerarchia per il breadcrumb Drilldown. I dati della richiesta potevano essere interpretati come HTML nella pagina risultante.
Il record CVE identifica Cargo fino alla versione 3.9.4 come interessata.
Lo scenario segnalato richiedeva una tabella Cargo pubblica con un campo di gerarchia. Un attaccante anonimo poteva preparare una richiesta da far aprire a una vittima, con conseguente esecuzione di script nell'origine del wiki.
Il report originale documenta l'esecuzione nel browser a partire dalla visualizzazione del filtro riflesso su un'istanza MediaWiki locale. Un valore di filtro ordinario veniva renderizzato come testo.
La modifica upstream rimuove la decodifica delle entità dall'output formattato del filtro e adegua la gestione dei messaggi per preservare il confine di testo previsto.
python poc.py https://wiki.example TABLE FIELD
Lo script invia la richiesta del filtro della gerarchia con un marcatore DOM innocuo e segnala se la risposta contiene un elemento immagine non sottoposto a escaping.
La descrizione pubblica della CVE etichetta attualmente questo problema come XSS memorizzato. Il report inviato descrive un valore di richiesta riflesso nella risposta. Questo report descrive il comportamento osservato senza modificare il record CVE.