
Informe saneado y PoC solo para loopback de CVE-2026-102971, una respuesta de revisión REST de MediaWiki que filtra los IDs de usuario de autores de revisiones ocultas.
Reportero: Marco Paciaroni (BomboBombone).
La respuesta de revisión compatible con RESTBase de MediaWiki podía incluir el ID numérico de usuario de un autor cuyo nombre había sido ocultado. La respuesta seguía estableciendo user_text en null y marcaba al autor como oculto, pero el ID expuesto podía mapearse a una cuenta a través de la API pública de búsqueda de usuarios.
Un llamador no autenticado podía correlacionar un autor de revisión deliberadamente oculto con la cuenta del autor. La divulgación requiere una revisión cuyo campo de autor esté oculto y un wiki que exponga la ruta principal de revisión REST.
El script crea una página local desechable, oculta el autor de su nueva revisión, compara la respuesta REST estándar con la compatibilidad de RESTBase habilitada, verifica que la búsqueda pública local de usuarios resuelva el ID, y limpia el estado de la página y la revisión.
Ejecútalo solo contra una instancia de prueba de MediaWiki aislada en loopback. Rechaza hosts que no sean loopback y requiere una bandera de confirmación explícita. Solicita la contraseña de la cuenta de prueba en lugar de aceptarla en la línea de comandos.
python poc.py --base http://127.0.0.1:8080 --username LocalAdmin --confirm-local-test
La cuenta necesita permiso para editar una página desechable y ocultar el autor de su revisión (suppressrevision).