当单个ID失败时,成对ID可能通过!越权漏洞就这么简单

admin 2025年5月16日11:50:50评论5 views字数 842阅读2分48秒阅读模式

概述

IDOR,全称 Insecure Direct Object Reference(不安全的直接对象引用,越权),是 Web 安全领域的一个“老牌”漏洞,但威力不容小觑。简单来说,IDOR 发生在应用程序直接使用用户输入的标识符(比如用户 ID、订单号等)来访问资源,却没有严格检查用户是否有权限访问这些资源。

案例1

当单个ID失败时,成对ID可能通过!

受害者ID:5200攻击者ID:5233

GET /api/users/5200/info→ 访问被拒绝 ❌
GET /api/users/5200,5233/info→ 绕过成功 ✅

当单个ID失败时,成对ID可能通过!越权漏洞就这么简单
当单个ID失败时,成对ID可能通过!越权漏洞就这么简单

API 端点 /api/users/{id}/info 用于获取用户信息。当攻击者尝试直接访问受害者的 ID(5200)时,系统表现得很“乖”,直接拒绝了请求(Access Denied)。

但当攻击者狡猾地提交了一个“成对 ID”请求/api/users/5200,5233/info,系统竟然“上当”了,乖乖返回了受害者的信息!这种绕过方式简单到让人瞠目结舌,却能造成严重的数据泄露。

什么会发生这种绕过?

这种 IDOR 绕过的本质是后端权限验证的漏洞

许多 API 为了方便,支持一次性查询多个资源,比如 /api/users/5200,5233/info 可以同时返回 ID 为 5200 和 5233 的用户信息。

问题在于,后端可能只粗略检查了请求的“整体权限”,而不是对每个 ID 逐一验证。

举个例子:

攻击者有权限访问自己的 ID(5233),于是系统认为“这个请求里有一个合法的 ID,应该没问题吧”,就直接放行了,结果把受害者的 ID(5200)的数据也一起返回了。这种“偷懒”的逻辑就像银行柜员只检查了你的身份证,却没核对你是否真的有权限查看别人的账户!

仅限交流学习使用,如您在使用本工具或代码的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。“如侵权请私聊公众号删文”。

原文始发于微信公众号(柠檬赏金猎人):当单个ID失败时,成对ID可能通过!越权漏洞就这么简单

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月16日11:50:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   当单个ID失败时,成对ID可能通过!越权漏洞就这么简单https://cn-sec.com/archives/4071891.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息