渗透测试信息收集方法详解
一、信息收集概述
信息收集是渗透测试的第二阶段,也是至关重要的一环。通过全面收集目标系统的相关信息,能够直接影响后续渗透测试的效果和成功率。
1.1 信息收集分类
-
主动收集:通过技术手段直接侦察目标,可能被目标系统记录
- 示例:使用扫描工具探测目标端口
- 特点:准确性高,但可能触发安全警报
-
被动收集:收集目标遗留的信息,目标无法感知
- 示例:从公开渠道收集目标员工信息
- 特点:隐蔽性强,但信息可能不完整
二、信息收集具体方法
2.1 子域名收集
方法:
-
子域名枚举:使用字典轮询查询二级域名
- 工具:Sublist3r、subfinder
- 特点:准确性高但可能有遗漏
-
域传送漏洞:利用DNS服务器漏洞获取记录
- 适用场景:老旧的DNS服务器
-
DNS数据集平台:
- DNSdumpster (https://dnsdumpster.com/)
- VirusTotal (https://www.virustotal.com/)
- 特点:快速但依赖平台收录情况
案例:通过枚举发现admin.xxx.com管理后台,弱口令破解成功并getshell
2.2 防火墙(WAF)识别
原理:通过响应头、正文内容匹配识别规则
应对策略:
- 尝试绕过黑名单规则
- 获取防火墙源码审计
- 基于经验绕过
2.3 端口服务收集
工具:Nmap
功能:
- 主机存活检测
- 端口开放情况
- 服务类型及版本
- 操作系统识别
- 漏洞扫描
案例:发现6379(Redis)端口存在未授权访问漏洞,直接获取服务器权限
2.4 C段IP信息收集
概念:同一C类地址子网(/24)中的IP段
利用场景:
- 大型企业可能将业务部署在同一C段
- 通过薄弱IP间接攻击目标
工具:Nmap
2.5 旁站信息收集
概念:同一服务器上部署的不同Web站点
查询工具:
- http://dns.aizhan.com
- http://s.tool.chinaz.com/same
- http://i.links.cn/sameip/
- http://www.ip2hosts.com/
攻击路径:
- 通过旁站获取权限
- 利用系统权限配置不当跨目录攻击
2.6 敏感目录/文件收集
方法:
- 使用字典轮询常见敏感路径
- 根据状态码判断:
- 200:存在
- 403/401:存在但无权限
- 500:服务器错误
工具:DirBuster、御剑后台扫描工具
2.7 IIS短文件名枚举
原理:利用Windows 8.3短文件名兼容特性
适用场景:IIS服务器
案例:发现xxx_lo~1.php,推测为xxx_login.php登录页面
2.8 GitHub信息收集
风险:开发人员可能无意公开敏感代码
工具:https://github.com/MiSecurity/x-patrol
2.9 网站资产信息探测
收集内容:
- 操作系统
- 中间件
- 脚本语言
- 数据库
- CMS类型
CMS指纹识别原理:检查特定URL或文件是否存在
工具:
- 云悉 (http://www.yunsee.cn/info.html)
- CMS指纹识别 (http://whatweb.bugscaner.com/look/)
案例:识别CMS类型后利用已知漏洞getshell
2.10 网络空间搜索引擎
工具:
- Shodan
- Fofa
- 钟馗之眼
用途:
- 全网设备搜索
- 漏洞POC查询
- 无目标渗透时作为高级漏洞扫描器
2.11 寻找真实IP
场景:目标使用CDN/云防线/反向代理
方法:
- 从子域名入手
- 历史DNS记录查询:
- https://dnsdb.io/zh-cn/
- https://x.threatbook.cn/
- 邮件原文分析
- HTTPS证书查询 (https://censys.io/)
案例:通过phpinfo.php泄露获取真实IP
2.12 搜索引擎语法
常用语法:
- 后台:
site:xxx.xxx admin|login|system|管理|登录|内部|系统 - 钓鱼:
site:xxx.xxx 邮件|email - 社工:
site:xxx.xxx qq|群|微信|腾讯 - 越权:
site:xxx.xxx inurl:uid=1|userid=1 - 包含:
site:xxx.xxx inurl:php?include=
2.13 爬虫分析
用途:
- 分析网站结构
- 推测开发逻辑
- 发现隐藏功能
案例:通过爬虫发现规律性命名,推测可能存在admin/add.php等页面
2.14 Web弱点扫描
工具:AWVS (Acunetix Web Vulnerability Scanner)
功能:
- 自动爬虫检测
- 常见Web漏洞扫描
- 购物车、表单等应用安全检测
特点:可能有误报,需人工验证
漏洞列表:https://www.acunetix.com/vulnerabilities/
2.15 主机弱点扫描
工具:Nessus
功能:
- 系统漏洞扫描
- 安装软件分析
- Web漏洞检测(辅助)
- 信息收集(辅助)
重点:关注严重/高/中级漏洞
2.16 社工类信息收集
收集内容:
- Whois信息
- 员工信息
- 公司名称
- 社工库数据
- 云盘搜索
云盘搜索:可能发现企业上传的敏感资料
案例:通过云盘获取员工编号规则,结合密码字典破解员工系统
三、信息收集总结
- 重要性:直接影响渗透测试的后续工作和效果
- 特点:枯燥但关键,需要耐心和持续性
- 工具选择:不断尝试新工具,找到最适合的
- 综合应用:多种方法结合使用效果最佳
四、推荐工具汇总
| 类别 | 工具/平台 | 链接 |
|---|---|---|
| 子域名 | DNSdumpster | https://dnsdumpster.com/ |
| 子域名 | VirusTotal | https://www.virustotal.com/ |
| 旁站查询 | 站长工具 | http://dns.aizhan.com |
| CMS识别 | 云悉 | http://www.yunsee.cn/info.html |
| CMS识别 | WhatWeb | http://whatweb.bugscaner.com/look/ |
| GitHub扫描 | x-patrol | https://github.com/MiSecurity/x-patrol |
| 历史DNS | DNSDB | https://dnsdb.io/zh-cn/ |
| 证书查询 | Censys | https://censys.io/ |
| 空间引擎 | Shodan/Fofa | - |
| Web扫描 | AWVS | - |
| 主机扫描 | Nessus | - |