HW中快速收集信息的节奏
开始
一般来说,hw会给出攻击方一个表格,表格中写有目标公司名称以及少量资产信息
当然也有可能只会给出目标单位名称
收集
第一步
通过公司名利用一些网站可以获取目标企业备案信息,包括
app信息:算是另类的网站,可以用工具快速提取app中的链接及其他信息
网站信息:可以扫他本身及子域及爬取对应网站的过滤后的外链
公众号信息:通过公众号后台进入
邮箱及联系人信息:主要用于登录某些页面及社工或钓鱼使用
投资信息:通过查询投资的全资子公司,来搜索全资子公司的资产做循环,一般来说10层足够
小程序:通过公司关联小程序对目标资产快速渗透,小程序有可能为第三方厂商做的,目的主要是拿数据。
快应用:和小程序类似
其他的如公司违法违规网站、违法违规APP、违法违规小程序、违法违规快应用可能被应用商店下架,但是服务器没关,网上存在遗留,也存在可攻击属性
第二步
根据第一步收集的信息做延申
列举一些
目标资产的证书:寻找证书信任域名
通过资产测绘平台做搜查:准确搜查,就是icp=“公司备案号或其他”、domain=“公司相关域名”、ip=“公司ip”,模糊搜查,body=“公司名称/公司域名”、title=“公司名称/公司域名”
通过子域收集工具等工具对目标资产做子域爆破或调用接口收集子域
如果有cdn bypass工具做bypass搜集
通过对域名相关dns各类记录做收集
如果是ip用ip做反查收集
通过解析ip做C段模糊搜集
对历史快照做模糊收集
对公众平台上的泄露的信息如文档、接口、账号做收集
第三步
对收集到的资产做端口、组件、插件、服务指纹及关联协议做全方面的扫描
第四步
对资产、组件、插件、服务做漏洞扫描
总结
上面四步是对目标资产做正向收集,优点是收集全面,攻击面多且广,提高了可以找到更多漏洞的概率,缺点是速度慢,信息处理复杂且缓慢,交互过多容易被发现,对设备要求高。适合通过数据做攻击面产品或在时间充裕情况下进行使用。
还有一种就是,反向收集,反向收集的一种方法就是已知某些组件、插件、服务、应用的漏洞,通过互联网的资产测绘平台及搜索引擎快速匹配目标,达到快速打点目的。当然反向收集策略很多。优点是速度快,动作迅速,可以对多目标广泛使用。缺点是目标资产不够全面,相应的可能发现漏洞概率偏小,对漏洞储备要求高。
个人如何取适中方案快速和简单使用
使用开源工具结合,对开源工具的数据进行处理
个人选择了几个收集资产的工具
主要用的工具
enscan
主要作用是通过公司名获取投资及备案信息,我设置了10层子公司收集
oneforall
对域名进行接口调用查询,以及字典爆破
fofa、hunter、quake等
借用资产测绘平台收集
对收集的资产做简单分类
然后通过kscan对收集的资产做端口扫描+指纹探测
其中kscan可以改造一下,把指纹单独提取出来
随时添加自己有day有漏洞的指纹
然后对资产进行cdn判断,将http以及subdomain资产进行去重,防止出现扫cdn以及重复扫多个ip的问题
最后使用nuclei或xray等对接的漏扫工具对资产做统一扫描
通过输出转化的这个工具,对于小中型hw不能说乱杀,但肯定发现资产还是较为有用的:)
其实开发不难,主要还是数据处理以及想法对成果的转化。
工具缺点是子程序不够多,手法没有覆盖到,需要带宽较大,否则扫资产可能会有遗漏。
后续可能会使用goframe开发一个主任务处理+agent的漏扫(攻击面)的平台。