前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >越权漏洞(e.g. IDOR)挖掘技巧及实战案例全汇总

越权漏洞(e.g. IDOR)挖掘技巧及实战案例全汇总

作者头像
Jayway
发布2019-09-29 17:29:11
4.4K0
发布2019-09-29 17:29:11
举报
文章被收录于专栏:卓文见识卓文见识

1、漏洞理解

Insecure Direct Object reference (IDOR)不安全的直接对象引用,基于用户提供的输入对象直接访问,而未进行鉴权,这个漏洞在国内被称作越权漏洞。

IDOR其实在越权(Broken Access Control)漏洞的范畴之内,严格来说越权的含义更广一些。它可以说是逻辑漏洞,也可以说是一个访问控制问题,细分的话可以将其分为URL层访问控制和数据层访问控制。

2、挖掘技巧

1)关注功能

检查任何涉及的敏感ID功能处替换:包括普通的增删改查、上传、共享及密码重置,密码更改,帐户恢复等处的id值,不同功能处影响也不一样:

P1 - 账户接管,访问非常重要的数据(如信用卡)

P2 - 更改/删除其他用户的公共数据,访问私人/公共重要数据(如门票,发票,付款信息)

P3 - 访问/删除/更改私人数据(有限的个人信息:姓名,地址等)

P4 - 访问任何不重要的数据

2)漏洞分类

a、简单:直接标识符

关注“id”,“user_id”,“value”,“pid”,“post_id”等参数处、目录处,关注任何场景每一个可能决定用户权限的参数值。通过加和减1提交整数值,看是否可以看到本不该看到的数据,若返回403拒绝访问很可能说明没有漏洞。

b、复杂:随机标识符

遇到某些参数使用哈希值(如UUIDs),可以尝试解码编码值,或寻找参数值泄露(特定返回包或页面源代码), 测试时通常创建两个账号并替换参数值,查看是否可以操作成功,若参数过多可使用comparer模块筛选处不同参数:

3)越权访问

广义上讲,越权就是“看到当前用户本不该看到的数据,执行本不该执行的操作”。

用户间越权:

比较管理员和普通用户、用户之间存在权限差异处,包括:

1、 GET:抓取对目录及类名的请求(URL层)

2、 POST:关注任何请求/API,具体的方法(数据层)

单用户内部越权:

1、 灰化按钮,审查元素绕过前端检验

2、 单业务处上下条数据之间是否存在权限差异(编辑/查看)

3、 多业务是否公用方法可以篡改权限或数据

4)更多

结合HPP(传送门),self-xss等漏洞将低危漏洞升级为高危漏洞。

3、实战案例

1)微软找回密码IDOR

微软招聘网站通过邮箱找回密码处,ID未进行用户权限校验,导致通过提交攻击者邮箱和遍历id方式重置任意用户密码。

2)雅虎任意评论删除

雅虎评论删除url地址为:

https://tv.yahoo.com/_xhr/contentcomments/delete_comment/

参数为:

comment_id=139967299182-588b2cdd&content_id=485d5605ea9&crumb=DcUNKWnp7%2F8

其中comment_id代表不同用户的id,使用另一个账户victim登录并评论,抓取comment_id并替换,返回200的json数据:

但再次尝试其他评论时,却返回401鉴权失败:

经过反复测试,发现只有攻击者是第一个评论者时才能删除后面的任意评论,开发者遗漏了对第一个评论者的鉴权验证。

3)Twitter信用卡删除IDOR

Twitter支付方法页面中信用卡的删除功能,URL如下:

https://ads.twitter.com/accounts/[account id]/payment_methods

进行删除操作时会发送ajax的post请求为:

请求报文只有两个参数,重点是了解参数代表的含义:account指Twitter账户id,id指绑定的信用卡id,同样的操作,登录另一个Twitter账户获取账户id和绑定的信用卡id,进行替换,页面响应是“403 forbbiden”,但实际卡已经删除。

类似的还有YouTube的任意评论移动漏洞,价值3k美元,漏洞发生在其他人在你的视频下评论,点击查看:

请求数据包为:

需关注的参数是comment和video,含义较明显,依旧尝试替换id,如果将VIDEO_ID更改为任何其他视频ID,会出现错误;但如果保持VIDEO_ID不变只改变COMMENT_ID,其他的评论将会出现在你的视频下。

4、防护手段:

任何一个端点/接口/请求都应该进行鉴权操作,有效的验证机制为将参数中的每个关键id都和当前登录用户身份及权限进行校验,即使是系统已有相关鉴权操作,也很容易遗漏某些细节。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 卓文见识 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、漏洞理解
  • 2、挖掘技巧
  • 3、实战案例
  • 4、防护手段:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档