ZAKU渗透论:黑客信息收集手法全解析
时间:2026-06-01 08:41
信息收集占渗透测试工作量半数以上,包括被动与主动收集。通过DNS查询、子域名枚举、搜索引擎语法、GitHub密钥泄露、社交媒体技术栈暴露、历史快照及端口扫描等途径绘制攻击地图。2026年关注供应链踩点,瞄准开发流程和依赖链。
第二章:信息收集——黑客怎么找到你?
先做一个判断:信息收集这一步,占整个渗透测试工作量的50%以上。
这不是在吹牛。真正有经验的渗透测试工程师,拿到目标之后,前面两三天几乎不会去碰任何漏洞扫描器。他们在忙什么?就一个字:找。找信息。
道理其实特别朴素——你连目标长什么样都不知道,从哪儿下手?想象一下,你要进一栋大楼。你知道它有几个门、几个窗、几个地下车库入口;你知道保安几点换班;你知道哪个摄像头是摆设;你甚至搞到了保洁阿姨的工牌样式。那你还用得着跟防弹玻璃正面对抗吗?
信息收集的本质,就是在帮你找到那条“阻力最小的路”,这是黑客攻击路径中的关键步骤,也是网络安全防御者必须了解的情报收集技术。
被动收集 vs 主动收集
在动手之前,先搞清楚两种信息收集的区别。
被动信息收集
不直接接触目标系统,只利用公开渠道。这种方式完全合法,而且目标根本不会察觉有人在关注它。它是渗透测试信息收集中最安全、最隐蔽的起点。
主动信息收集
直接与目标系统发生交互,比如扫个端口、探测个服务。这么做就可能留下日志,甚至触发安全告警,属于有风险的情报收集方式。
实战中的铁律:永远先做被动,再做主动。因为很多时候,被动收集已经把你想要的大部分答案摆到桌面上了,这正是网络安全情报收集的高效策略。
IP与域名:攻击的起点
每个网站背后都有个IP地址。域名(比如
example.com)只是方便人类记忆的“昵称”,真正的地址是IP。黑客进行网络攻击信息收集时,会先从这些基础资产入手。
具体来说,黑客会从这三个角度下手。
第一件:DNS查询
把域名转换成IP地址。这事儿就像查电话簿,完全公开,毫无攻击性。一条简单的查询命令,就能把目标服务器的IP拿到手。这是渗透测试信息收集中最基础的操作之一。
第二件:子域名枚举
一个公司可不只有一个域名。
mail.example.com是邮箱入口,
admin.example.com是管理后台,
api.example.com是接口服务——每个子域名都可能是一个独立的突破口,是黑客扩大攻击面的常用手法。
举个典型的例子:
example.com可能做得滴水不漏,但
test.example.com说不定只是个测试环境,密码还挂着默认的
admin/123456。黑客要的就是这种“疏忽”,这也说明网络安全信息收集需要覆盖所有的子域名资产。
第三件:反向查询
同一个IP地址上可能挂着好几个域名。把它们都找出来,就等于找到了目标公司的“亲戚”网站。这些网站可能共享同一台服务器——攻破一个,就等于攻破一片。这是一种高级的威胁情报收集手段。
搜索引擎:被低估的武器
大多数人用搜索引擎只搜“表面”,而黑客用搜索语法去挖“底层的灰尘”。在安全信息收集领域,搜索引擎是绝对不可忽视的“金矿”。
以Google为例,几个常用的搜索指令:
site: 限定在某个域名内搜索
filetype: 搜索特定文件类型,比如PDF或Excel
intitle: 搜索标题中包含某关键词的页面
inurl: 搜索URL中包含某关键词的地址
cache: 查看谷歌缓存的旧版本网页
一个经典组合:
intitle:"index of" "parent directory" site:example.com。这行命令能帮你找到目标网站上忘记关闭目录列表的文件夹——有时候里面直接躺着密码文件和备份包。这是网络安全情报收集中的“Google Hacking”技术。
技术含量高吗?其实也就那样。就是个搜索功能,只是大多数人不知道还能这么用。而黑客正是利用这些信息收集技巧,快速定位目标弱点。
GitHub:开发者的“自爆现场”
GitHub是全世界最大的代码托管平台,同时也是信息泄露的重灾区。在渗透测试信息收集阶段,GitHub是必须检查的重要环节。
开发人员为了图方便,经常把密钥、密码、内部配置直接写在代码里,然后上传到公开仓库。
常见的泄露类型:云服务密钥(AWS、阿里云、腾讯云)、数据库密码、内部API地址与Token、
.env文件、各种配置文件。这些都是黑客梦寐以求的敏感数据。
有人专门写了工具,24小时不停地在GitHub上扫这些泄露的密钥。不是啥高深技术,说白了就是“捡钥匙”。但正是这种看似简单的信息收集方法,往往能带来突破性的进展。
有个真实案例:某大厂的云服务密钥被员工不小心传到了GitHub。一个安全研究员扫到了,直接用这个密钥登录了该公司的云控制台,发现可以访问上百万条用户数据。他上报了问题,公司连夜撤换密钥。这警示所有网络安全从业者:GitHub上的信息收集必须纳入日常安全审计。
到了2026年,又多了个新趋势:不只是代码仓库会泄露密钥,连GitHub Actions的运行日志里也可能藏着秘密。自动化脚本在调试时打印环境变量,如果这些日志是公开的——只要你会去看,就能捡到别人丢掉的钥匙。这意味着信息收集技术也要与时俱进。
社交媒体与招聘网站
LinkedIn、脉脉、Boss直聘——这些网站,是黑客的“情报部”。在渗透测试信息收集阶段,社交媒体是获取技术栈和人员信息的高效渠道。
为什么?因为公司会在招聘信息里写自己用什么技术栈。比如:“招聘Ja va开发,熟悉Spring Cloud、K8s、Redis、MongoDB”。
这句话等于直接告诉黑客:我用的是Spring Cloud全家桶、K8s容器化、Redis做缓存、MongoDB做数据库。这些信息有什么用?知道用K8s,就重点关注容器逃逸和kubeconfig泄露;知道用Redis,就检查是否存在未授权访问;知道用Spring Cloud,就去翻Spring相关历史漏洞。这种情报收集能大幅缩短攻击路径。
另外,员工的社交媒体账号也可能暴露更多信息。一张工牌照、一次“上班打卡”的定位、一个“今天加班”的动态——这些都可能成为社会工程学攻击的素材,属于高级网络安全信息收集的范畴。
历史快照与Whois
Wayback Machine(archive.org)是一个互联网档案馆,保存了几十亿个网页的历史版本。它的价值在于:一个网站现在可能修好了漏洞,但三个月前的版本里可能还有可乘之机。Wayback Machine就是帮你找回那个“旧版本的自己”,是渗透测试信息收集的利器。
实战中,它可以帮你找到旧版本的API接口(新版可能删了,但旧版还在),找到曾经泄露过的文件,分析网站的技术演变。这些都是非常实用的信息收集技巧。
Whois是一个查询域名注册信息的协议:注册人姓名和邮箱、注册商、创建时间和过期时间、域名服务器。在网络安全信息收集阶段,Whois数据能提供关键的资产归属信息。
这些信息有什么用?可以用来做社会工程学(比如给注册人发钓鱼邮件),可以用来判断目标公司的IT成熟度(一个刚注册一年的域名 vs 一个注册了二十年的域名),甚至可以做域名劫持的准备——如果对方忘记续费,你可以抢注。这属于威胁情报收集的重要组成部分。
端口扫描:敲敲门
每台服务器就像一个小区,有无数个房门,叫做端口。不同的端口开给不同的服务。端口扫描是主动信息收集的核心技术之一。
- 端口22是SSH,远程登录的“管理员通道”
- 端口80是HTTP,普通网站的“正门”
- 端口443是HTTPS,加密网站的“安全正门”
- 端口3306是MySQL数据库
- 端口6379是Redis缓存
- 端口27017是MongoDB数据库
端口扫描就是逐门逐户地敲门,看看哪个门开着。这是黑客攻击路径中探测服务的第一道工序。
不过,到了2026年,直接扫整个公网已经很低效了。更好的做法是:先用被动收集拿到目标的大致范围——域名、AS号、云服务商IP段——然后只针对这个范围做定向扫描。这种组合式的信息收集方法能大幅提升效率。
目录与文件探测
一个网站上有很多你从首页看不到的路径。比如:
/admin是后台登录页
/backup.zip是备份文件
/api/v1/users是接口地址
/phpinfo.php是PHP环境信息
/.git/是Git版本控制文件夹
目录探测就是用一个字典(常见路径列表),逐个尝试,看看哪些路径存在。这是渗透测试信息收集中发现隐藏资产的重要手段。
这一步经常能收获意想不到的东西。如果你发现一个可读的
/.git/文件夹,意味着你可以直接下载整个网站的源代码,包括数据库配置、内部API逻辑、甚至管理后台的密码哈希。这种信息收集成果往往能直接导致网站沦陷。
2026年的信息收集:供应链踩点
传统的信息收集是“盯着目标本身”。2026年的信息收集,则是“盯着目标的上游”。这是网络安全领域最前沿的信息收集理念。
一个现代应用不是从零写的。它依赖开源库(npm、pip、ma ven)、开发工具(GitHub Actions、GitLab CI)、云服务(AWS、阿里云)。
供应链踩点的思路是这样的:
- 目标公司用的是哪个开源库?这个库的作者有没有被钓鱼?
- 目标公司的GitHub Actions配置文件有没有泄露密钥?
- 目标公司依赖的镜像仓库(Docker Hub)里有没有藏后门?
一个具体的例子:你不是直接攻击
example.com,而是去GitHub上搜索
example.com的员工最近提交了什么代码。你发现某员工在一个公开仓库里留下了公司的内部API地址。你不攻击网站,你攻击这个API——因为它可能防护更弱。这就是供应链攻击的信息收集思维。
这就是2026年的信息收集:攻击面不再是“一个网站”,而是“一群人 + 一堆工具 + 一串依赖链”。这意味着网络安全情报收集必须扩展到供应链的每一个环节。
信息收集的产出是什么?
信息收集结束后,渗透测试工程师手里应该有一份这样的“情报地图”:
- 域名列表:example.com, api.example.com, admin.example.com
- IP范围:某个具体的网段
- 开放端口:22(SSH), 443(HTTPS), 3306(MySQL)
- 技术栈:Nginx、PHP、MySQL
- 员工信息:开发人员小张、运维人员小李
- 泄露密钥:发现一个过期的AWS Key
- 历史快照:3个月前存在
/test/admin路径
这份地图告诉你:哪里最容易突破。它是整个渗透测试信息收集工作的最终交付物,也是制定攻击方案的核心依据。
这一章你该记住什么
- 第一,信息收集占渗透测试50%以上的工作量——不要急着“攻击”,先学会“观察”。这是网络安全从业者必须牢记的基本原则。
- 第二,被动收集(公开渠道)优先于主动收集(扫描)——合法、隐蔽、零成本。合理运用信息收集技术能事半功倍。
- 第三,搜索引擎语法、GitHub、社交媒体、历史快照都是金矿,不要只盯着IP和端口。拓宽情报收集的渠道才能发现更多弱点。
- 第四,2026年的新方向是供应链踩点——盯着目标的开发流程和依赖链。网络安全信息收集必须跟上时代变化。
- 第五,信息收集的产出是一份“攻击地图”,告诉你从哪里切入最省力。这份地图就是渗透测试的作战指南。
下一章,我们将进入Web攻击的核心原理:SQL注入——为什么拼接字符串会出大事?