JumpServer v4 系列 4.10.19 之前的版本存在访问控制缺陷:DRF 查询过滤链中的 NotOrRelFilterBackend 支持 _rel 查询参数对最终 SQL 的 WHERE 子句做整体取反, 而 WHERE 中包含 get_queryset() 建立的行级数据限定。任意已登录的普通用户只需在 API 请求中附加 _rel=not,即可越权读取所有其他用户(含管理员)的 Access Key 与 TempToken 明文 secret,并在开启 AUTH_TEMP_TOKEN 的实例上直接以管理员身份登录, 完成权限接管。 影响版本:v4.10.18 及更早的 v4 LTS 版本(NotOrRelFilterBackend 存在期间) 修复版本:v4.10.19 LTS(该后端被移除,由带字段白名单的 LookupFilterBackend 取代) 利用前提:任意一个可正常登录的普通用户账号,本环境提供普通用户:mht/qwer@1234 管理员资产 core-db-01(10.10.10.21)下 root 账号的 secret 字段就是 flag 控制台 → 资产 → 资产列表 → 点开 core-db-01 → 「账号」页签 → root 账号这一行 → 点「查看密钥」按钮或者直接使用api
靶场地址:https://bdziyi.com/ulab/lab.html?page=target-detail&id=296






请登录后查看回复内容