渗透测试前期信息收集,这些容易被忽略的要点

很多刚入行做渗透测试的同学,拿到目标之后第一反应就是直接开 Nmap 扫端口、启动漏洞扫描器跑 POC。但在真实的项目实战里,信息收集才是整个渗透测试中耗时最长、最重要的环节,通常会占用一半以上的工作量。信息收集做得好不好,直接决定后续能不能找到突破口,很多高危漏洞不是靠扫描器扫出来,而是通过信息挖掘找到薄弱资产。

大多数教程只讲基础的子域名、端口、Web 指纹收集,大量实战中高价值的信息点被大家习惯性跳过。这些容易被忽略的细节,往往就是整个项目的突破口,比如防护薄弱的测试环境、泄露的代码仓库、供应商的弱资产、历史遗留旧站点等。本文就梳理渗透侦察阶段,那些很容易漏掉的收集要点,覆盖被动 OSINT 和主动探测,同时说明对应的实战思路。

说明:本文所有渗透测试思路,仅用于客户授权范围内的安全测试。未经授权对网站、服务器进行扫描、探测、攻击属于违法行为,由此产生的一切法律责任由操作者自行承担。

一、前期范围确认,很多人直接跳过的第一步

拿到测试目标第一件事不是开始搜集域名,而是确认测试范围与规则,这一点很多新手直接忽略,最后出现范围越界、项目纠纷。

  1. 明确目标资产边界
    客户给的目标往往只有一个主域名,但企业资产包含子域名、旁站、IP 段、小程序、APP、第三方供应商系统。需要提前确认:哪些资产属于本次测试范围,哪些禁止测试,是否包含测试环境、预发布环境。很多测试人员盲目扫描关联的子公司、外包服务商站点,直接造成越界违规。
  2. 确认时间窗口与告警规则
    询问客户安全设备策略:是否有 WAF、IDS、SOC 告警,什么时间段可以做扫描,是否允许高频扫描、目录爆破。如果不提前确认,大规模扫描会触发告警,直接被拉黑 IP,甚至引发客户内部应急。
  3. 确认是否存在 CDN、云防护
    如果目标站点开启 CDN,直接解析得到的 IP 并不是源站真实 IP。如果直接对 CDN 节点进行端口扫描,浪费大量时间,还拿不到真实后端资产。需要提前标记 CDN 资产,后续单独寻找源 IP。

二、域名与资产收集:不止简单子域名爆破

子域名收集是基础,但很多人只跑一遍子域名工具就结束,忽略大量隐藏资产。

1. 证书透明度日志挖掘 SAN 域名

很多人只依赖子域名爆破工具,但是 crt.sh 证书日志里,SSL 证书 SAN 字段会附带大量未公开、字典无法爆破出来的域名,包含内部管理后台、预发布站点、旧业务域名。很多测试环境域名不会公开解析,但是申请证书的时候被记录在证书日志中。

小坑提醒:收集到域名之后,需要区分泛解析域名。泛解析的域名随便解析都能返回页面,这类域名不属于真实业务资产,不要把泛解析结果混入资产清单,造成资产统计混乱。

2. DNS 历史解析记录,挖掘 CDN 之前的真实源 IP

企业网站早期没有使用 CDN,历史 DNS 解析记录中会保留原始服务器 IP。即使现在业务接入 CDN,旧的解析记录里保留的 IP,很可能还在继续使用,没有做严格防护,这是获取源 IP 非常经典的思路,但是经常被忽略。
工具推荐:SecurityTrails、ViewDNS、微步在线历史解析。

3. ICP 备案反查、股权穿透,挖掘关联企业资产

只查主域名的备案远远不够。拿到企业名称,通过工信部备案系统反查主体名下所有备案域名。再通过企查查、天眼查做股权穿透,找到子公司、分公司、外包供应商。
供应链资产是非常容易被忽略的攻击面。很多大型企业自身安全防护很强,但是外包服务商、合作子公司安全水平薄弱,一旦拿下供应商系统,就可以作为横向移动入口。

4. 小程序、公众号、APP 资产收集

大部分人只盯着 Web 网站,忽略微信小程序、支付宝小程序、移动端 APP。小程序的后端接口、APP 的 API 域名,很多没有接入 WAF,测试环境接口经常直接暴露在公网。
可以在应用商店、小程序后台查看开发者主体,和目标企业做关联,提取 API 域名、后台管理地址。APP 抓包、反编译也可以提取大量后端接口、域名、密钥信息。

三、网页历史存档,找回已经被修复的漏洞和旧接口

很多站点现在修复了漏洞,删除了敏感文件,但是互联网归档网站(Wayback Machine)会保存多年前的网页快照。这一块是新手最容易漏掉的宝藏信息。
可以从历史快照中获取:

  1. 旧版本页面、已经下线的后台地址、废弃的 API 接口;
  2. 曾经存在的备份文件、配置文件、测试页面;
  3. 旧版网站的技术栈,已经停用的中间件版本。

很多时候主站已经升级加固,但是归档记录中找到的旧后台地址,还可以继续访问,没有下线。同时还能找到曾经泄露的目录、文件路径,用来补充目录爆破字典。

四、JS 源码与前端文件深挖,隐藏接口、内网 IP、密钥泄露

目录爆破是常规操作,但是绝大多数人不会仔细分析网站 JS 文件。前端 JS 里面藏着大量信息。

  1. 页面内 JS、异步请求 JS、压缩后的 JS 代码,里面经常写死后端 API 地址、内部接口路径、测试环境域名、内网 IP 地址;
  2. JS SourceMap 源码映射文件,如果没有关闭,访问.map文件,直接拿到未压缩完整前端源码,里面包含后端接口、鉴权逻辑、密钥;
  3. 前端注释,开发人员遗留的注释,会写数据库账号、测试地址、后台账号。

推荐工具:JSFinder、LinkFinder,批量提取 JS 里的 URL、域名。拿到接口路径之后,可以补充到目录字典,甚至直接发现未授权访问接口。

五、代码仓库泄露:Git 仓库、Gitee、GitHub 搜索

开发人员经常因为操作失误,把项目代码上传到公开代码平台,这个点属于高价值信息,但很多侦察流程会漏掉。

  1. 在 Github、Gitee、GitCode,使用关键词检索:公司名称、域名、邮箱、项目名,查找员工上传的公开仓库;
  2. 检测网站根目录下是否存在.git目录泄露,一旦存在可以还原完整项目源码,拿到数据库配置文件、账号密码;
  3. 注意检索 fork 仓库,员工 fork 之后提交代码,同样会泄露敏感配置。

实战案例中,大量数据库账号、Redis 密码、API 密钥、OSS 密钥,都是在公开代码仓库中找到。

注意:如果找到私有仓库,未经授权不要进入仓库查看,仅记录公开泄露内容,避免违规。

六、人员与邮箱信息收集,社会工程学基础素材

很多人觉得社工属于附加项,前期信息收集不做员工信息整理,实际上员工邮箱、命名规则,是后期钓鱼、爆破账号的基础素材。

  1. 收集员工邮箱,分析邮箱命名规则,比如姓名拼音@shturl.,批量生成账号字典;
  2. 在公开泄露数据库中检索邮箱,查看是否存在账号密码泄露;
  3. 脉脉、领英、招聘网站,收集员工岗位信息,运维、开发、DBA 人员的账号权限往往更高。

招聘网站也是一个容易忽略的渠道。企业招聘运维、开发岗位的 JD,会直接写明使用的操作系统、中间件、数据库版本、云厂商,快速判断目标技术栈。

七、端口与服务探测,不要只扫 80、443

端口扫描是常规操作,但很多人扫描只扫常用端口,忽略小众端口。

  1. 不要只使用默认 top1000 端口,大型内网对外暴露的服务,经常使用非标准端口:8080、8081、9000、7001、3389、22、5900 等;
  2. 识别端口对应的服务版本,重点关注老旧版本的中间件,比如旧 Tomcat、WebLogic、JBoss;
  3. 区分公网管理服务:VPN、堡垒机、远程桌面、数据库端口。这类服务一旦暴露在公网,弱口令就是高危入口。

⚠️ 注意:扫描前确认客户授权,高频全端口扫描容易触发安全告警,尽量控制扫描速率。

八、目录与敏感文件,这些冷门文件容易被忽略

大家都会跑 dirsearch、gobuster 做目录爆破,但字典大多只包含 admin、login 这类常规后台,很多高风险文件容易漏掉:

  1. 备份文件:.bak、.swp、.zip、.tar.gz、~结尾的编辑器缓存备份;
  2. 各类配置文件:config.php、application.properties、env环境变量文件;
  3. 框架自带监控端点:SpringBoot /actuator、PHP 探针 phpinfo;
  4. 各类文档:excel、word、pdf,运维不小心上传到网站的运维手册、网络拓扑、账号清单;
  5. robots.txt、sitemap.xml:很多人只看 robots 禁止目录,但是 sitemap 里面会列出大量隐藏页面、接口。

九、WAF、CDN 与网络架构识别,提前规避踩坑

很多人上来直接丢 payload 测试漏洞,没有判断 WAF。一旦存在 WAF,普通 payload 会被拦截,浪费大量时间。

  1. 识别 WAF 厂商:查看响应头、返回拦截页面特征,判断是云 WAF 还是硬件 WAF;
  2. 识别 CDN 节点,区分源站与节点 IP;
  3. 路由信息、TTL、DNS 解析结果,辅助判断服务器操作系统、机房位置;
  4. 寻找 CDN 绕过思路:多 IP 解析、Host 头碰撞、子域名不使用 CDN 的资产。

十、旁站、同 IP 资产,同服务器上的其他站点

同一个 IP 上可能托管多个网站,也就是旁站。即使主站防护很强,同一服务器上的其他站点安全可能很薄弱。拿到旁站资产,作为突破口,提权后横向拿到目标主站权限。
使用网络空间测绘工具,输入 IP,查询该 IP 上绑定的所有域名。这里有一个坑:CDN 节点 IP 的旁站没有意义,一定要排除 CDN 之后,再查真实源 IP 的旁站。

十一、信息收集之后,资产整理与画像构建(最容易忽略的收尾)

很多人收集一堆域名、IP 之后,直接进入漏洞测试,没有做资产归类,导致信息混乱。收集完信息,一定要整理资产清单:

  1. 区分资产等级:生产环境、预发布环境、测试环境、废弃站点;测试环境防护最弱,优先重点测试;
  2. 标记资产技术栈、中间件版本、开放端口、WAF 状态;
  3. 关联资产关系:主站、子域名、小程序、供应商资产;
  4. 标记敏感信息清单:泄露的配置、密钥、员工账号、历史漏洞;

信息收集不是一次性操作,它贯穿整个渗透测试全过程。在漏洞测试阶段,还会不断发现新的域名、接口,需要持续补充进资产清单。

写在最后

渗透测试不是拿着扫描器一键跑漏洞,侦察阶段考验的是耐心和思路。大部分新手的通病就是急于找漏洞,轻视信息收集,漏掉大量隐藏攻击面。很多项目里,直接拿到后台地址、源码、密钥,都来自上面这些容易被忽略的信息收集点,而不是扫描器的 POC。

工具只是辅助,核心思路是尽可能收集目标全部公开信息,绘制完整资产画像,优先寻找防护薄弱的边缘资产、测试站点、遗留旧系统。在实际项目中,做好信息收集,渗透工作已经成功一半。

免责声明:本文所介绍的渗透侦察技术,仅用于企业授权范围内安全评估、安全学习。未经授权扫描、探测、入侵网站、服务器属于违法行为,严禁在未授权环境下操作,一切违规行为的法律后果由操作者自行承担。


了解网络安全,首先要搞清楚下面这些前提

  • 网络安全到底包含哪些技术?是否需要会编程?
  • 网络安全行业有哪些职业方向?“我”该如何选择?
  • 网络安全的职业发展和成长路线是什么?

如果你是准备学习网络安全(黑客)或者正在学习,下面这些你应该能用得上:

①网络安全学习路线
②20份渗透测试电子书
③安全攻防357页笔记
④50份安全攻防面试指南
⑤安全红队渗透工具包
⑥网络安全必备书籍
⑦100个漏洞实战案例
⑧安全大厂内部视频资源
⑨历年CTF夺旗赛题解析

一、网络安全(黑客)学习路线

网络安全(黑客)学习路线,形成网络安全领域所有的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、网络安全教程视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

三、网络安全CTF实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这里带来的是CTF&SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~

img

四、网络安全面试题

最后,我们所有的作为都是为就业服务的,所以关键的临门一脚就是咱们的面试题内容,所以面试题板块是咱们不可或缺的部分,这里我给大家准备的就是我在面试期间准备的资料。

在这里插入图片描述

网安其实不难,难的是坚持和相信自己,我的经验是既然已经选定网安你就要相信它,相信它能成为你日后进阶的高效渠道,这样自己才会更有信念去学习,才能在碰到困难的时候坚持下去。

机会属于有准备的人,这是一个实力的时代。人和人之间的差距不在于智商,而在于如何利用业余时间,只要你想学习,什么时候开始都不晚,不要担心这担心那,你只需努力,剩下的交给时间!

这份完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

img

更多推荐