🐉工具介绍
一款API水平越权漏洞检测工具,通过替换认证信息后重放请求,并对比数据包结果,判断接口是否存在越权漏洞。
检测逻辑
- 流量清洗:过滤掉静态资源和非json响应的请求
- 公共接口清洗:过滤掉无需参数即可访问的GET请求(例如/api/getCurrentTime)此类公共接口无需鉴权,因此无越权问题
- 长度卡点:判断响应长度是否大于100,用来去除一些空接口(只返回JSON骨架)
- 相似度检查:以Levenshtein距离计算相似度,相似度大于87%认为是相同的响应
- 关键字检查:对于响应长度小于100的请求判断是否包含“成功”“完成”等关键词。
🎯安装和使用
安装依赖
python3 -m pip install -r requirements.txt
启动
python3 start.py
即可监听socks5://127.0.0.1:8889。
🌐 安装证书
使用SwitchOmega等插件连接该代理,并访问mitm.it即可进入证书安装页面,根据操作系统进行证书安装。以MacOS为例:
下载安装后,打开钥匙串访问,找到mitmproxy证书,修改为alwaystrust。
🚀检测漏洞
首先准备好目标系统的A、B两账号,根据系统的鉴权逻辑(Cookie、header、参数等)将A账号信息配置config/config.yml,之后登录B账号
使用B账号访问,脚本会自动替换鉴权信息并重放,根据响应结果判断是否存在越权漏洞
生成报表
每次有新漏洞都会自动添加到report/result.html中,通过浏览器打开:
点击具体条目可以展开/折叠对应的请求和响应:
🚨项目地址
https://github.com/y1nglamore/IDOR_detect_tool
原文始发于微信公众号(风铃Sec):工具集:IDOR_detect_tool【API越权漏洞检测工具】
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论