纵向越权
纵向越权(Vertical Privilege Escalation)是指低权限用户通过漏洞非法获取高权限身份或能力,突破系统设计的权限层级,执行本不该被允许的操作。其本质是权限边界被打破,攻击者从低层级(如普通用户)跃迁至高层级(如管理员)。
举例说明
⚙️ 管理接口URL访问控制缺失
① 漏洞描述
后台管理接口(如用户删除、角色修改)未校验调用者角色权限,普通用户可直接访问高权限API。
代码示例:
@DeleteMapping("/admin/user/{id}")
public String deleteUser(@PathVariable Long id) {
userService.delete(id); // 无权限校验
return "删除成功";
}
② 攻击步骤
普通用户登录后,直接构造管理员专属URL请求:
DELETE /admin/user/1001 HTTP/1.1
Cookie: session=普通用户会话ID
系统未校验角色,直接删除用户ID=1001的数据
③ 修复方案
添加角色校验注解(如Spring Security):
@DeleteMapping("/admin/user/{id}")
@PreAuthorize("hasRole('ADMIN')") // 强制校验管理员角色
public String deleteUser(...) { ... }
485

被折叠的 条评论
为什么被折叠?



