《ZAKU渗透论:卓伊凡的2026渗透工程》信息收集——黑客怎么找到你?

举报
卓伊凡 发表于 2026/05/31 17:47:27 2026/05/31
【摘要】 第二章:信息收集——黑客怎么找到你?信息收集为什么是第一关?在渗透测试中,信息收集占整个工作量的50%以上。这不是夸张。一个经验丰富的渗透测试工程师拿到目标后,前两到三天几乎不碰任何漏洞扫描器,而是在做一件事:找信息。道理很简单:你不知道目标长什么样,就不知道从哪里下手。想象你要进入一栋大楼。你知道它有几个门、几个窗、几个地下车库入口;你知道保安几点换班;你知道哪个摄像头是假的;你知道保洁阿...

第二章:信息收集——黑客怎么找到你?

信息收集为什么是第一关?

在渗透测试中,信息收集占整个工作量的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。这个搜索可以找到目标网站上忘记关闭目录列表的文件夹——有时候里面直接放着密码文件和备份包。

不要以为这是“高级技巧”。这就是个搜索功能,只是大多数人不知道可以这么用。


GitHub:开发者的“自爆现场”

GitHub是全世界最大的代码托管平台,也是信息泄露的重灾区

开发人员为了图方便,经常把密钥、密码、内部配置直接写在代码里,然后上传到公开仓库。

常见的泄露类型包括:云服务密钥(AWS、阿里云、腾讯云)、数据库密码、内部API地址与Token、.env文件、以及各种配置文件。

有人专门写了工具自动扫描GitHub,24小时不停地寻找这些泄露的密钥。这不是什么高深的技术,这是“捡钥匙”。

一个真实的案例:某大厂的云服务密钥被员工不小心上传到GitHub。一个安全研究员扫描到了,用这个密钥登录了该公司的云控制台,发现可以访问上百万条用户数据。他报告了这个问题,公司连夜撤换密钥。

2026年的新趋势:不只是代码仓库,连GitHub Actions的运行日志里也可能泄露密钥。当自动化脚本打印环境变量用于调试时,这些日志如果是公开的——只要你懂得去看,就能捡到别人丢掉的钥匙。


社交媒体与招聘网站

LinkedIn、脉脉、Boss直聘——这些网站是黑客的“情报部”。

为什么?因为公司会在招聘信息里写自己用什么技术栈。比如:“招聘Java开发,熟悉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是一个协议,用于查询域名的注册信息:注册人姓名和邮箱、注册商、创建时间和过期时间、域名服务器。

这些信息可以用来做社会工程学(给注册人发钓鱼邮件),判断目标公司的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、maven)、开发工具(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注入——为什么拼接字符串会出大事?

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。