0.1 思路
在前期怎么样对目标进行快速的渗透测试?通过测绘资产快速的进行收集互联网暴露资产,联动指纹识别以及联动扫描工具进行打点。
0.2 难点
在攻防或者是渗透测试的时候,组织方给的资产大致分为:
- 公司名单表
- 一堆杂乱资产
所以,在编写项目的时候也需要考虑到这两点问题,公司名单列表通过测绘引擎进行处理,一堆杂乱资产通过识别为IP以及WEB进行处理。
0.3 解决
0.3.1 测绘语法
多角度收集测绘语法如下,同时使用或逻辑进行处理资产。【关于测绘语法,请看下篇文章】
- ICP备案号
- 域名
- IP地址
- host信息
- 网站title和body
- 一年前后数据
- SSL证书
- 公用名
- 组织
- 序列号
0.3.2 处理资产
在攻防期间,组织方给的目标有可能是:
1 | http://baidu.com |
进行测试的时候,就需要对资产进行处理,才能进行下一步扫描。
1 | http://baidu.com |
其中,处理分为两部分:WEB,IP。
0.4 扫描处理
0.4.1测绘引擎处理
得到测绘结果中的IP资产,使用gogo
进行资产扫描。
将测绘结果去重,使用observer_ward
进行指纹探针,找到对应的指纹使用nuclei
使用对应的POC进行扫描。
0.4.2 杂乱资产处理
根据杂乱资产:我们可以分成两种情况需要扫描:
- WEB资产【测绘资产】
- IP资产
其中IP需要进行端口扫描,才能进行下一步操作。
资产识别→WEB等待[gogo
探测结果]
资产识别→IP→gogo
端口探测→收集WEB资产[包括一开始收集的结果]→指纹识别→漏洞扫描
- 资产识别,分为两种资产,其中IP资产使用
gogo
自带指纹识别以及漏洞探针进行扫描,将带有WEB的资产和首次识别到的WEB资产进行合并,使用observer_ward
进行指纹探针,找到对应的指纹使用nuclei
使用对应的POC进行扫描。
0.5 优缺点
0.5.1 优点
- 使用多个测绘语句结合,保证资产结构最大化。
- 针对杂乱资产,不遗留资产。
0.5.1 缺点
需要人进行维护指纹以及POC保证是最新的,需要有一套漏洞运营流程,针对攻防出现的高危POC进行维护更新,这个也是我团队所在做的事情,需要日积月累才能有成效。
0.6 后续思考
- 针对红队C2服务器进行指纹识别。
- C2服务器默认特征,vshell一键上线默认端口探测,以及红队扫描器WEB地址识别,以及yakit,和JNDI注入工具端口识别。
- 针对防守方蜜罐进行识别。
- 蜜罐的JS文件,或者是蜜罐的一些特征,又或者是,探测首个发包之后,有没有请求一些敏感域名:qq,baidu等。