【THM】IDOR公司

发布时间 2023-12-13 15:31:52作者: trymonoly

IDOR 示例

想象一下,您刚刚注册了一项在线服务,并且想要更改您的个人资料信息。您单击的链接将转到 http://online-service.thm/profile?user_id=1305,您可以看到您的信息。

好奇心占了上风,你尝试将user_id值更改为 1000 (http://online-service.thm/profile?user_id=1000),令您惊讶的是,您现在可以看到另一个用户的信息。您现在已经发现了一个 IDOR 漏洞!理想情况下,应该在网站上进行检查,以确认用户信息属于登录请求它的用户。

使用您在上面学到的知识,单击“查看站点”按钮,并尝试通过发现和利用 IDOR 漏洞来接收标志。

 在编码的 ID 中查找 IDOR

编码过的IDs(Encoded IDs)

将数据从一个页面传递到另一个页面,或者发布数据、查询字符串或 cookie的时候,网页开发人员通常会首先获取原始数据并对其进行编码处理,编码能确保接收到信息的web服务器能够理解收到的内容(不经过编码处理的数据 是web服务器理解不了的)。

编码技术通常使用a-z, A-Z, 0-9 and =字符进行填充,将二进制数据更改为 ASCII 字符串形式。Web 上最常用的编码技术是 base64编码,这种编辑方式通常很容易识别。

 在哈希 ID 中查找 IDOR

散列 ID

散 列 ID 的处理比编码的 ID 要复杂一些, 但它们可能遵循可预测的模式,例如被哈希处理 整数值的版本。例如,ID 号 123 将 如果使用 MD5 哈希,则变为 202cb962ac59075b964b07152d234b70。

将任何发现的哈希值通过 https://crackstation.net/ 等 Web 服务(它有一个包含数十亿个哈希值结果的数据库)来查看我们是否能找到任何匹配项是值得的。

在不可预测的 ID 中查找 IDOR

如果 使用上述方法无法检测到 Id,这是一个很好的方法 的 IDOR 检测是创建两个帐户并交换 ID 号 在他们之间。如果您可以使用其他用户的 ID 查看其内容 号码,同时仍使用其他帐户登录(或不登录) 登录),您发现了一个有效的 IDOR 漏洞。

IDOR位于何处

他们在哪里?

这 你所针对的易受攻击的终结点可能并不总是你所针对的 请参阅地址栏。它可能是您的浏览器通过 AJAX 请求或您在 JavaScript 中引用的内容 文件。

有时 终结点可能具有未引用的参数,该参数可能已 有些在开发过程中使用,并被推向生产。例如 您可能会注意到对 /user/details 的调用显示 您的用户信息(通过您的会话进行身份验证)。但通过 一种称为参数挖掘的攻击,您会发现一个名为 user_id 的参数,您可以使用该参数来显示其他用户的信息,例如 /user/details?user_id=123

 你可以通过将 id 更改为另一个用户的 id 来测试这个 id 参数是否存在 IDOR 漏洞,尝试选择 ID 为1和3的用户,然后回答下面的问题。