不安全的直接对象参考(IDOR)
在本节中,我们将解释Inecure Direct Object References(IDOR)的内容和描述某些常见漏洞。
什么是不安全的直接对象引用(IDOR)?
不安全的直接对象引用(IDOR)是一种类型访问控制应用程序使用用户提供的输入直接访问对象时出现的漏洞。通过其在OWASP 2007前十年的外观普及,该术语是普及的。但是,这只是可以导致的许多访问控制实施错误的一个例子访问控制被诅咒。IDOR漏洞最常见于水平特权升级,但也可以与垂直特权升级有关。
Idor示例
有许多访问控制漏洞的示例,其中用户控制的参数值用于直接访问资源或函数。
具有直接引用数据库对象的IDOR漏洞
考虑使用以下URL使用beplay体育能用吗以下URL访问客户帐户页面的网站,通过从后端数据库中检索信息:
https://insecure-beplay体育能用吗website.com/customer_account?customer_number=132355
这里,客户编号直接用于在后端数据库上执行的查询中的记录索引。如果没有其他控件到位,则攻击者可以简单地修改顾客号码
值,绕过访问控制以查看其他客户的记录。这是一个导致水平特权升级的IDOR漏洞的示例。
攻击者可能能够通过在绕过访问控制的同时使用其他特权将用户更改为一个水平和垂直特权升级。例如,当攻击者已登陆用户的帐户页面后,其他可能性包括利用密码泄露或修改参数。
IDOR漏洞,直接引用静态文件
当敏感资源位于服务器端文件系统上的静态文件中时,通常会出现IDOR漏洞。例如,网站可以使用递增的文件名beplay体育能用吗将聊天消息成绩单保存到磁盘,并允许用户通过访问以下内容来检索这些问题:
https://insecure-beplay体育能用吗website.com/static/12144.txt.
在这种情况下,攻击者可以简单地修改文件名以检索由另一个用户创建的成绩单,并可能获得用户凭证和其他敏感数据。