1、介绍
渗透实际是一个永无止境的过程,一般来说,信息收集越广,越深入,可以测试、交叉利用的可能性越高。
在实际中,信息收集是受到多方面影响的,比如时间、精力、重要程度、自身的技术能力等等。
有些收集是必要的,而有些信息的收集看具体情况。有些是预先收集,有些是边测试边收集整理。
2、域名收集
域名收集是最核心的,用于表示待测试的目标。
- 域名可能是随意确定的一个用于随手测试(不推荐)
- src指定一个或多个域名
- src确定一级域名或者所属身份,然后需要测试人员自行收集
(1)搜索引擎
收集子域名
(2)layer工具或者脚本
对域名进行爆破,收集子域名
(3)通过站内链接进行收集,这个过程是边测试边收集
3、ip和旁站、C段
对上一过程收集的域名,通过ping查询对应的ip地址(可以写脚本)。
- 是否存在多域名在同一主机ip
- ip对应的是云服务器还是自行搭建,国内还是国外
- edge浏览器访问确认ip、域名注册ip与其是否相同,cdn排查情况
- 进行ip反查,除了收集域名,是否存在其他域名关联
4、域名资料
- 备案情况,确认域名所属、个人还是企业、联系手机号、邮箱等
- 权重查询,确认网站的重要程度、价值
站长工具-百度权重排名查询-站长seo查询 – 爱站网 (aizhan.com)
公安机关互联网站安全管理服务平台 (beian.gov.cn)
以及各云服务器平台域名管理、搜索引擎
5、系统和端口、服务
首先需要确定ip是真实ip,而非cdn服务商的ip
- 通过搜索引擎确认暴露的端口号
- 基于nmap工具扫描
- telnet工具测试
- Server和X-POWER-BY等字段确认
6、其他信息
这一过程很多都是不必要的,或者是边测边挖掘的
- 搜索引擎收集开发者、所属、个人的新闻和报道等
- 网页和js文件等查看注释、以及敏感变量词,比如username、password等
- 文件后缀名确定编程语言及开发者习惯
- 网页确定开发者
- github、个人博客查看编程习惯和项目代码
- 开发者和管理者的联系方式和邮箱、手机号、生日等信息
- robots.txt
- 各组件或框架,比如nginx的50x.html,jquery的version注释,以及文件名本身暴露的类型和版本信息