
Report sanitizzato e PoC solo loopback per CVE-2026-102971, una risposta di revisione REST di MediaWiki che espone gli ID utente degli autori di revisioni nascoste.
Segnalatore: Marco Paciaroni (BomboBombone).
La risposta di revisione compatibile con RESTBase di MediaWiki poteva includere l'ID utente numerico di un autore il cui nome era stato nascosto. La risposta impostava comunque user_text a null e contrassegnava l'autore come nascosto, ma l'ID esposto poteva essere associato a un account tramite l'API pubblica di ricerca utente.
Un chiamante non autenticato poteva correlare un autore di revisione deliberatamente nascosto con l'account dell'autore. La divulgazione richiede una revisione il cui campo autore è nascosto e un wiki che espone la route REST principale delle revisioni.
Lo script crea una pagina locale usa e getta, nasconde l'autore della sua nuova revisione, confronta la risposta REST standard con la compatibilità RESTBase abilitata, verifica che la ricerca utente pubblica locale risolva l'ID e ripulisce lo stato della pagina e della revisione.
Eseguirlo solo contro un'istanza MediaWiki di test isolata su loopback. Rifiuta host non loopback e richiede un flag di conferma esplicito. Richiede la password dell'account di test invece di accettarla sulla riga di comando.
python poc.py --base http://127.0.0.1:8080 --username LocalAdmin --confirm-local-test
L'account necessita del permesso di modificare una pagina usa e getta e nasconderne l'autore della revisione (suppressrevision).