干货 | 记一次公益SRC上分思路
0x01 提前准备工作
这里暂时排除使用GooleHack的语法,而是使用测绘站搜索CMS,缩小范围提高准确率。
需要使用到以下工具和文库
佩奇文库 fofa fofa_viewer nuclei 批量查询权重 批量备案查询
0x02 使用POC测试单个站点
1. 寻找可利用POC
使用佩奇文库:http://wiki.peiqi.tech/wiki/cms/
文库内部分漏洞存在可用POC,可提供我们测试学习,感谢大佬。
主要针对 CMS 框架漏洞,框架漏洞有着清晰的指纹标识,方便批量寻找到目标。
2. 使用空间测绘站寻找资产
并不是所有漏洞都有现成的POC,又因为CMS对应的资产并不少,要找到一个可以利用的POC不一定是一件简单的事情。推荐找 可以通过GET传参得到返回结果的SQL注入 ,毕竟点进URL只要粘贴就可以验证是否存在漏洞。
在文库内找到网络测绘搜索语句,使用 fofa、shodan、360quake,奇安信hunter等测绘引擎搜索相关资产。
3. 试相关资产漏洞是否存在
带有破坏型的漏洞不推荐测试,仅测试回显结果可以证明存在漏洞的POC。注入只需要爆出数据库、任意文件上传只需要上传phpinfo而不是传个shell,目前我是这么理解。
这里选择的是一个普通的 SQL 注入,构建poc如下
http:example.com/search/index.php?keyword=1%25%32%37%25%32%30%25%36%31%25%36%65%25%36%34%25%32%30%25%32%38%25%36%35%25%37%38%25%37%34%25%37%32%25%36%31%25%36%33%25%37%34%25%37%36%25%36%31%25%36%63%25%37%35%25%36%35%25%32%38%25%33%31%25%32%63%25%36%33%25%36%66%25%36%65%25%36%33%25%36%31%25%37%34%25%32%38%25%33%30%25%37%38%25%33%37%25%36%35%25%32%63%25%32%38%25%37%33%25%36%35%25%36%63%25%36%35%25%36%33%25%37%34%25%32%30%25%37%35%25%37%33%25%36%35%25%37%32%25%32%38%25%32%39%25%32%39%25%32%63%25%33%30%25%37%38%25%33%37%25%36%35%25%32%39%25%32%39%25%32%39%25%32%33
当页面发挥结果中包含 数据库用户名称、数据库地址则代表存在漏洞,至此为止。以下为图片说明
0x03 批量对站点进行检测
1. 将收集结果URL保存至本地
可以通过测绘站接口,或是工具简单的实现,如 fofa_viewer
https://github.com/wgpsec/fofa_viewer
将HOST字段保存至本地txt文件,此时你就得到了一个可能存在漏洞的站点列表。
2. 编写POC或使用工具批量检测
这里稍微的犹豫了一下,要是用python requests写,那我要用到其他POC的时候,岂不是改起来很麻烦,之前了解过 nuciei 或许可以通过这个实现?
研究了一下,具体参考 nuclei,仅针对这一个漏洞的POC和这个实验,如果想学会自己编写,少不了的是 官方文档,对于工具相关参数,工具的 README_CN.md 也基本够用了。
https://github.com/moekylin/Security/blob/main/Security/%E5%AE%89%E5%85%A8%E5%B7%A5%E5%85%B7/ExploitTools/nuclei.md#example-1-%E6%89%B9%E9%87%8F%E6%A3%80%E6%B5%8Bpoc
对初学者而言,还是建议稍微掌握一点网络知识,python网络编程就是一块很好的垫脚石。稍微有点跑题了。简单的记下使用的语句
# 1.调用 DocCMS-keyword-SQLi.yaml 模板,扫描 urls.txt 文件# 2.将结果保存至 result_DocCMS-keyword-SQLi.txt# 3.简化输出结果 重试次数10 超时时间30snuclei -l urls.txt -t DocCMS-keyword-SQLi.yaml -o result_DocCMS-keyword-SQLi.txt -nm -retries 10 -timeout 30
使用 nuclei 编写 yaml 对批量检测漏洞有很大的帮助,或是使用 nuclei 做渗透测试的工作流,这里留个个小小的坑。
0x04 快速定位资产提交报告
1. 正则筛选根域名
因为扫描结果的URL并不是网站根域名,先简单针对扫描结果用正则匹配一下根域。)
# awk 正则定位根域名awk -F 'search' '{print $1}' result_DocCMS-keyword-SQLi.txt > domain_DocCMS-keyword-SQLi.txt
2. 批量查询站点权重
批量查询权重 查询权重,确认提交的平台。(漏洞盒子提交无限制,补天需要百度权重>=1或Google权重>=3
http://seo.iis7.com/
针对爱站PC、爱站PE、GooglePR筛选查询结果
3. 批量查询备案信息
提交漏洞报告时,需要对公司名称以及公司定位做选择,这里有三个选择
批量备案查询 免费额度用完了需要付费,免费额度500条
http://www.jucha.com/beian/
站长ICP备案查询 不能批量查询,单个提交报告时也够用
https://icp.chinaz.com/
对于 批量查询站点权重、批量查询备案信息 本来都是有想法写个脚本来实现的,奈何这些0权站点实在不能给人带来动力.
提交漏洞的事情就交给另一个小倒霉蛋吧。
补充阅读:
补天SRC小白提交漏洞入门详细介绍
https://blog.csdn.net/qq_37113223/article/details/11191647