[安全性]具有低权限的用户可以重置任何用户的密码。
作者: v9d0g创建于 2026年5月20日更新于 2026年5月20日
受影响组件 me/zhengjie/modules/system/rest/UserController.java # 描述 由于缺少权限和硬编码的密码组合导致的漏洞: PUT /api/users/resetPwd 端点缺少 @PreAuthorize 注解(同一个控制器中的其他端点,如 createUser 和 deleteUser,都具有权限检查),并使用硬编码的弱密码"123456"作为重置密码。任何经过认证的用户都可以发送任意用户 ID 批量重置密码,包括管理员账户,然后使用已知的密码"123456"登录目标账户并接管该账户。攻击路径: PUT /api/users/resetPwd, Body: [目标用户 ID 列表] → 将密码重置为"123456" → 使用"123456"登录目标账户。 # 受影响的代码路径 me.zhengjie.modules.system.rest.UserController.resetPwd(java.util.Set) -> org.springframework.security.crypto.password.PasswordEncoder.encode(java.lang.CharSequence) # 安全影响 具有任何权限的用户都可以重置任何用户的密码。 # POC 用户 ID 是单调递增的数字,管理用户访问 /api/users 接口时可以观察到。
内容来源: elunez/eladmin