关于自动资产收集轮子开发的一些思路
技术选型:使用golang进行开发,调用第三方轮子(除非能比第三方轮子写的好,可以不调用),调用第三方存在依赖问题,可采用docker或者添加自动管理依赖
收集思路:
App 人工收集,七麦数据查同开发商的全部应用
小程序 人工收集,重点资产,突破口
公众号 人工收集,重点资产,突破口
兄弟域名 人工收集,取决于厂商大小
企业信息查询 人工收集 ,天眼查,企查查,收集企业信息,方便鱼叉攻击
多来源获取子域名(爆破,第三方接口,域传送漏洞,已知域名站点爬取。。。。)
域名whois查询
备案号查询,收集备案信息
企业供应链信息收集,暂定
反查联系人
企业历史漏洞收集 人工确定,自动爬取
真实ip获取
整理ip确定C段(人工确定是否扫描C段)
查询目标拥有ip资产,ipwhois
c段主机存活检测
快速发现子域名+ip 存在的web应用(常见web端口)
ip top1000扫描,全端口扫描具体情况而定
端口指纹识别
筛选整理web应用
Web指纹识别
厂商历史漏洞获取
根据指纹检索通用漏洞cve
定位脆弱资产(xxx系统,xxx后台,未授权,脆弱中间件。。。,)
脆弱资产识别:
UI设计比较过时和过于简单的页面
搭建框架比较老旧的页面
没有验证码、验证码过于简单或验证码没有生存期的页面
数据参数过滤不严格的站点
交互信息量比较大的站点
多渠道信息泄露收集
邮箱,电话,ip
github
搜索引擎,QQ群,微信群,钉钉,招聘等
收集个人信息,账号密码,配置文件
对web应用进行目录扫描
收集站点url
对web应用进行爬虫
搜索引擎
通用漏洞扫描
调用xray被动扫描
整理结果输出