SRC混子的漏洞挖掘之道
前期信息收集
还是那句老话,渗透测试的本质是信息收集,对于没有0day的弱鸡选手来说,挖SRC感觉更像是对企业的资产梳理,我们往往需要花很长的时间去做信息收集,收集与此公司相关的信息,包括企业的分公司,全资子公司,网站域名、手机app,微信小程序,企业专利品牌信息,企业邮箱,电话等等,对于很多万人挖的src来说,你收集到了别人没有收集过的资产,往往离挖到漏洞就不远了。
企业相关信息收集
- 企查查 (https://www.qcc.com)
- 天眼查(https://www.tianyancha.com/)
- 启信宝(https://www.qixin.com/) 企查查、天眼查淘宝都有那种一天的会员。 对于我们信息收集其实已经够用,个人更喜欢用企查查,因为它能一键导出域名,还可以直接查看企业关联的子公司,比较方便。
主要查询的信息:
- 一般大的src都有许多子公司,企查查可以在所属集团中查看该集团下子公司,并且可以导出。
- 查看同电话企业基本都是子公司。
- 查看股份穿透图,一般来说控股超过50%的子公司的漏洞SRC收录的可能性都比较大。
- 查看企业下的app、小程序、还有品牌的资产,直接在搜索引擎里搜索品牌可能会有意想不到的收获。(找到一些平常收集不到的资产)
PS:一般来说100%的全资子公司src漏洞是一定会收的,其他子公司资产可能需要与src审核沟通(扯皮)。
- 站长之家:http://whois.chinaz.com/
- 邮箱反查、注册人反查、电话反查。
- 推荐个项目:https://github.com/code-scan/BroDomain 兄弟域名查询。
- https://www.qimai.cn/
- 七麦数据,可以查到企业下一些比较冷门的app。
信息整理
当我们通过各种手段对挖掘的企业进行信息收集后,我们大致能得到以下有用的信息
- 主公司及分公司、子公司下所有归属的网站域名信息;
- 主公司及分公司、子公司下所有的专利品牌和开发的一些独立系统。
- 主公司及分公司、子公司下所有的app资产和微信小程序。
之后我们需要对这些信息进行归纳和整理,比如哪些是该公司的主资产,哪些是边缘资产,哪些资产看上去比较冷门,我们是可以重点关注和进行深入挖掘的。
子域名收集和网站信息收集
子域名的话,对于我来说oneforall和xray的功能已经足够强大了,对于一些主域名来说,如果想要充分的收集子域名,最好用特大号字典进行最少三层的子域名爆破。
这块还是layer子域名挖掘机不错。
通过github收集子域名
先分享一个姿势,很多时候github上已经有热心的师傅分享了自己跑出的子域名,所以可以先到github找一找有没有现成的可以白嫖,没啥好语法,纯靠大海捞针。。
oneforAll
https://github.com/shmilylty/OneForAll
- 需要到配置文件里填写api接口信息,
- 根据需求修改其他的配置,比如可以配置一些常见的端口,当做简单的端口扫描工具用。
命令
python oneforall.py --targets ./domain.txt run
python oneforall.py --targets ./domain.txt --brute true run
复制
我实际操作发现在挂了外网代理和没挂代理时跑出来的子域有时候差的有点大,想收集的全一点的师傅可以不挂代理和挂代理都跑一遍。然后去重一下。
xray
子域名探测需要高级版,可以自己写个十几行的代码进行批量探测,也可以直接用这个项目里的代码,
https://github.com/timwhitez/rad-xray 命令改一下能批量探测子域名,一般5到10分钟一个子域。
Goby
官网:https://gobies.org/
因为之前一直在用masscan+nmap的方式进行端口扫描,用这个项目:https://github.com/hellogoldsnakeman/masnmapscan-V1.0
前一段时间接触到goby,感觉可视化的工具用起来还是舒服,可以短时间对一些常见端口进行扫描,还能对网站进行指纹识别,报告看起来挺舒服的。
复制
因为在实际的端口扫描过程,由于cdn或者防火墙的原因,所以没必要一上来就全端口扫描,听一位师傅分享的经验,比如当扫描到22端口开放时,说明这个ip没有cdn保护,对于这种ip我们可以提取出来,然后重点进行全端口扫描,有收获的可能性会比较大。
BBScan
猪猪侠师傅写的工具,速度很快,简单的目录扫描,主要是可以探测C段下面的很多资产,扩充攻击面。
项目地址:
https://github.com/lijiejie/BBScan
https://github.com/yhy0/BBScan (添加了springboot的泄露探测)
- 可以对域名、ip、C段进行探测
- 快速探测管理后台
- 进行端口探测
- 探测敏感信息泄露
- 可以自定义扫描规则
report下看报告,误报肯定会很多,但C段下很可能会有意想不到的资产。
js信息收集
主要是爬取网站的敏感js文件,js中能收集到的信息:
- 增加攻击面(url、域名)
- 敏感信息(密码、API密钥、加密方式)
- 代码中的潜在危险函数操作
- 具有已知漏洞的框架
常用的工具
速度很快的jsfinder https://github.com/Threezh1/JSFinder
xray的rad爬虫 https://github.com/chaitin/rad
能够匹配敏感信息的JSINFO-SCAN:https://github.com/p1g3/JSINFO-SCAN
捡中低危漏洞的一些技巧
刚开始挖src往往不知道从哪下手,首先我们其实可以从各个src平台提交漏洞下拉框里看一看收取的漏洞类型。
然后针对性的去学习如何挖掘,比如智联招聘src收取的漏洞类型,我们就可以针对性的学习对应的挖掘技巧。
框架注入
明文密码传输
表单破解漏洞
IIS短文件名泄露
老旧过期的HTTPS服务
跨目录下载漏洞
目录可浏览漏洞
LFI本地文件包含漏洞
RFI远程文件包含漏洞
HTTP拒绝服务攻击
弱口令登录
CSRF跨站点请求伪造
Flash点击劫持
SQL注入漏洞
XSS跨站脚本漏洞
文件上传漏洞
解析漏洞:IIS解析漏洞
解析漏洞:Apache解析漏洞
Cookies注入漏洞
越权访问漏洞
命令执行漏洞
Struts2远程代码执行漏洞
业务逻辑漏洞
用户隐私泄露
敏感信息泄漏(运维)
敏感信息泄漏(研发)
敏感文件泄漏(运维)(配置)
敏感文件泄漏(运维)(权限)
未验证的重定向和传递
Flash跨域访问资源
测试文件泄漏
开启危险的HTTP方法
HTTP参数污染
Unicode编码绕过
源码泄漏
后台目录泄漏
链接注入漏洞
SSRF服务器请求伪造
jsonp劫持
复制
学习完基础的漏洞类型后,我们可以多看一些实战的漏洞报告。
比如wooyun漏洞库和hackone上的报告。
- 乌云漏洞库:https://wooyun.x10sec.org/
- hackone报告:https://pan.baidu.com/s/1jPUSuoERSIDw2zCKZ0xTjA 提取码:2klt
这里列举一些我经常挖到的垃圾洞,生而为人,挖不到大洞,我很抱歉┭┮﹏┭┮。
登录框处常见的一些漏洞
在我们通过对目标的前期信息收集之后,首当其冲的往往就是各种奇奇怪怪的登录框,一般来说,大型的企业为了减少安全问题,一般都是用统一的登录接口登录不同的旗下网站
但是一些后台系统,