
Preuve de concept et analyse technique pour CVE-2026-74239, une vulnérabilité de traversée de chemin dans les imports d'archives de styles XenForo sous Windows, permettant l'écriture de fichiers via un ZIP conçu.
XenForo avant la version 2.3.13 est vulnérable à un traversement de chemin lors de l'importation d'archives de styles sous Windows.
L'importateur accepte les membres ZIP sous upload/ et rejette les noms contenant la forme avec barre oblique /../. Il ne normalise ni ne rejette les barres obliques inverses. XenForo ajoute ensuite le nom du membre conservé à son répertoire d'extraction temporaire. Windows interprète ..\ comme un traversement vers le répertoire parent.
Un administrateur ACP non super-administrateur disposant de la permission style peut s'échapper du répertoire temporaire et écrire des octets vers un autre chemin accessible en écriture par le serveur web. Dans mon installation de test XenForo 2.3.12 (build 2031270), un membre conçu sur mesure a écrit un nouveau fichier marqueur PHP dans la racine web publique ; sa requête a exécuté le marqueur constant sous le compte du serveur web.
La condition préalable est un déploiement Windows avec le support ZIP de PHP et un administrateur de style délégué. La preuve utilise un nouveau nom de fichier fixe, refuse d'écraser un fichier existant et ne contient aucune exécution de commande. XenForo 2.3.13 contient le correctif.
python poc.py https://xenforo.example LIMITED_STYLE_ADMIN --confirm-write
Le mot de passe est lu avec une invite masquée. Supprimez style-archive-sentinel.php de la racine web de test immédiatement après l'exécution.
Découvert par Marco Paciaroni (BomboBombone).