0x01 前言
看到标题也许有人会觉得这是夸大,但笔者可以负责任的说HaE给我带来的价值远超十万元。大多数人只是把HaE当作一个敏感信息发现的工具,而实际上如果你可以深入了解HaE,了解它每个规则,基于HaE所匹配到的大量数据进行关联,你会发现更多高危漏洞,获得更多的赏金。
本文就分享一下笔者所掌握的HaE使用技巧和思路。
HaE项目地址:https://github.com/gh0stkey/HaE
0x02 规则
Cloud Key
Cloud Key用于发现各类云的SecretKey和AccessKey。
这个规则就是纯帮助你一键找到高危漏洞了。用这个接管了很多存储桶,甚至有的可以直接供应链攻击,官网的安装包也在这个存储桶内,直接替换。当然也有一些具备VPS管理权限的,可以控机器。
Linkfinder
Linkfinder用于匹配返回报文中的请求路径信息(API)。
我觉得这个规则应该是出洞率最高的规则,通常情况下使用它都可以发现未授权访问漏洞。但需要注意的是很多人拼接的路径不正确导致错失高危,我建议先找个登录点抓个包看看路径是否有一个基路径(一级目录),然后再拼接跑一遍。
Create Script
Create Script用于自动拼接前端JS中动态创建JS引用的JS路径,发现无法直接抓包获取到的JS文件路径信息。
如图所示的JS文件,以static/js/+{...}+.js
作为JS文件地址赋值给到script标签的src属性值,也就表示这里有许多的JS文件,例如其中一个拼接出来的地址就是static/js/0.fbcd72b6763971b2e095.js
在HaE新版中,该规则支持对这类格式的文本信息进行格式化输出,如图所示。你只需要Ctrl/Command+A全选Ctrl/Command+C复制,选择一条JS文件请求放入Intruder,以路径作为变量,跑一遍复制的结果,就可以发现意外之喜(更多信息泄露、接口及其他信息)。
Request URI
Request URI可以来发现未授权漏洞,比如一个后台,你只需要登录进去点击所有的功能,然后在HaE里把Request URI提取的结果复制一下,不带凭证的跑一遍,就可以发现未授权了。
Uedtior
Uedtior用于匹配页面中是否引用了Ueditor编辑器的JS文件。
找到引用的JS信息,访问之后就会发现有对应的Ueditor编辑器的上传路径(有时候业务中可能没有功能点)。接下来开始你的测试,迎接你的RCE、SSRF等等。
URL Scheme
URL Scheme用于匹配非HTTP/HTTPS开头的URL(自定义伪协议的URL)。
这个主要用于在返回包中发现客户端(PC、安卓、iOS)注册的伪协议URL,一般放在Web业务功能点上的都是比较完整的,有路径、有参数。
找到它的意义是,可以直接发现高危漏洞。如发现一个伪协议URL为:xx://xx/?url=,它是某安卓APP的,我们通过HaE发现之后,在安卓浏览器打开发现参数url所指向的地址会调起APP内置Webview去访问(携带凭证),直接获得1 Click用户凭证劫持。再深入拓展,可以逆向APP看下JSBridge的逻辑,1Click RCE也不是没有可能。
思路参考文章:https://gh0st.cn/archives/2018-12-08/1
Password Field、Username Field
Password Field、Username Field用于发现返回包中的用户名、密码字段信息。
使用这个规则经常能在JS文件中发现测试用户和密码,或者发现通用的初始化密码便于爆破。曾经用它直接进了某后台,然后在后台挖掘,继而RCE。
Router Push
Router Push用于匹配前端注册的路由信息。
通常使用它可以来发现一些前端路由的传入参数,如图所示,通过HaE定位到具体逻辑,找到传入参数和处理逻辑成功发现DOM型XSS漏洞。
ALL URL
ALL URL用于匹配返回包中的所有URL链接。
这个功能看似毫无意义但实际上却帮助我们发现了数十个高危漏洞。其主要围绕发现新资产(路径、地址)、凭证链接(Token、密码)。如图所示,就在一个JS文件中泄漏了Token凭证链接,访问即可接管账户。
0x03 技巧
聚合查询
HaE 2.X版本开始支持聚合查询Databoard面板,这个是我最喜欢的功能,也是我觉得HaE最不可能被替代的竞争能力。
每次做完测试,我都会回顾一下Databoard来看看有没有什么遗漏的地方,经常又能让我再发现几个高危漏洞。
我个人比较直接喜欢使用*
号来查询所有东西,这样看着很爽。然后双击左边的数据就会在右边给你符合数据的HTTP请求响应。
二次搜索
HaE 3.3.3版本开始支持二次检索了,可以通过如下正则:
remove|update|submit|save|put|clear|del|init|add|reset|restart|clean
来过滤一些涉及敏感关键词的数据,如下图所示,配合HaE的Reverse search
,来过滤掉敏感操作的请求接口。过滤完成之后再通过二次检索功能基于上一结果再进行过滤。
原文始发于微信公众号(不懂安全的校长):漏洞挖掘|我的万元赏金秘籍
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论