
Report sanificato e script PoC solo loopback che dimostra XSS memorizzato tramite URL di licenza javascript: in MediaSearch QuickView (CVE-2026-103585).
Segnalatore: Marco Paciaroni (BomboBombone).
MediaSearch QuickView utilizzava direttamente LicenseUrl.value di CommonsMetadata come destinazione di un link. CommonsMetadata copiava il valore licensetpl_link da una descrizione di file modificabile senza limitare lo schema dell'URL. Un editor poteva memorizzare un URL javascript:; un visitatore che apriva quel file in MediaSearch e seguiva il link della licenza visualizzato poteva eseguire script nell'origine del wiki.
Il CVE-2026-103584 associato copre il percorso sorgente di CommonsMetadata.
Usa una descrizione di file usa e getta su un wiki di test locale con un marcatore innocuo:
<span class="licensetpl"><span class="licensetpl_link">javascript:alert("CVE_LICENSE_URL_XSS")</span><span class="licensetpl_short">Test license</span><span class="licensetpl_long">Local test</span></span>
Poi interroga l'API locale:
python poc.py --api http://127.0.0.1:8080/w/api.php --title File:LicenseUrlProbe.png
Lo script verifica se l'API restituisce lo schema eseguibile in LicenseUrl.value. Per osservare il comportamento del browser, apri il file nel MediaSearch QuickView locale e segui il link della licenza. Lo script consente solo URL API di loopback.