
Preuve de concept locale et rapport assaini pour CVE-2026-103442, une injection d'objet PHP dans la gestion de fusion de session de MediaWiki CentralAuth pouvant mener à une exécution de code à distance.
Rapporteur : Marco Paciaroni (BomboBombone).
CentralAuth acceptait une clé de session de fusion fournie par le navigateur lors du décodage de l'état de migration. Un utilisateur disposant du droit centralauth-merge pouvait substituer une clé produisant un graphe d'objets PHP. La chaîne FileCookieJar de Guzzle décrite dans le rapport écrit un fichier sélectionné par l'objet ; les chaînes de gadgets disponibles dans l'environnement d'exécution affecté peuvent étendre cette injection d'objet à une exécution de code à distance.
Utilisez une installation locale de MediaWiki avec CentralAuth et un compte de test disposant du droit de fusion. Choisissez un chemin de marqueur unique qui n'existe pas déjà et qui est accessible en écriture par le processus PHP local :
python poc.py --base-url http://127.0.0.1:4016 --username TestMergeUser --password '<test-password>' --marker /tmp/cve-2026-103442-canary.txt
Le script n'accepte que les URL de base en boucle locale. Il crée et supprime le fichier marqueur pendant le test.