Web 渗透测试课程实战:主动信息收集全流程详解
前言
在大学《Web 渗透测试》课程体系中,信息收集是整个渗透测试流程的基石,分为被动信息收集与主动信息收集两大模块。被动收集依托公开第三方资源,不与目标服务器产生交互;而主动信息收集需要测试者主动发包、访问目标资产,直接和目标站点、服务器建立网络连接,是后续漏洞探测、目录爆破、漏洞利用的前置必备环节。
一、主动信息收集基础理论
1.1 主动信息收集定义
主动信息收集指测试人员主动构造网络数据包、访问目标 IP / 域名、发送探测请求,与目标服务器产生数据交互,通过目标返回的响应数据提取站点架构、操作系统、端口服务、Web 中间件、子域名、目录文件等关键资产信息。
重点区分:主动探测会在目标服务器日志留下访问记录,被动收集无任何访问痕迹,二者是课程必考知识点。
1.2 主动信息收集能获取的核心信息
- 目标 IP 地址、C 段网段、服务器操作系统版本(Windows/Linux);
- 开放端口、端口对应的运行服务(80 端口 HTTP、3306 数据库、22SSH 等);
- Web 中间件类型(Nginx/Apache/IIS)、网站开发语言(PHP/Java/.NET);
- 网站子域名、后台路径、敏感配置文件、备份文件;
- 防火墙、WAF 安全设备部署情况。
1.3 课程学习意义
主动收集获取的资产数据直接决定后续渗透思路:比如探测到服务器开放 3389 端口可尝试远程桌面漏洞、识别出 PHP+Nginx 架构可针对性查找 PHP 相关漏洞,是渗透测试从 “无目标” 到 “精准打击” 的关键一步。
二、课程实验环境准备
2.1 实验环境配置
- 测试主机:Kali Linux 2024(预装 Nmap、DirBuster、WhatWeb 等课程必备工具)
- 测试靶场:本地搭建 DVWA、WebGoat 内网靶机(
192.168.56.101) - 网络环境:仅内网局域网互通,禁止对公网未授权站点探测
- 前置要求:实验前已获得靶场建设方书面授权,符合实训安全规范
2.2 工具清单(课程标配)
表格
| 工具名称 | 核心用途 |
|---|---|
| Nmap | 端口扫描、操作系统识别、服务探测 |
| WhatWeb | 网站指纹识别(中间件、脚本语言) |
| DirBuster | 敏感目录、备份文件字典爆破 |
| Dig | DNS 解析探测、子域名枚举 |
三、主动信息收集分模块实操(课程核心实验)
3.1 基于 Nmap 的 IP 与端口探测(实操一)
Nmap 是主动端口扫描标杆工具,也是《Web 渗透测试》课程第一个实操工具,下面附上课程常用命令,命令统一使用 bash 代码块,符合 CSDN 排版评分规范。
bash
运行
# 1.基础存活主机探测(扫描单个IP是否开机)
nmap -sn 192.168.56.101
# 2.全端口扫描,探测目标开放端口
nmap -p- 192.168.56.101
# 3.操作系统+服务版本探测(课程重点参数-O、-sV)
nmap -O -sV 192.168.56.101
结果分析:
- 扫描返回
80/tcp open http:80 端口开放,部署 Web 服务; - 返回
3306/tcp open mysql:服务器搭载 MySQL 数据库,可后续测试弱口令; - Nmap 操作系统识别结果:Linux 5.x/Windows Server 2019,确定目标系统,定向查找对应系统漏洞。
实操小贴士:生产环境全端口扫描速度较慢,课程实验可限定常用端口
-p 1-1000减少扫描耗时。
3.2 WhatWeb 网站指纹识别(实操二)
指纹识别用来快速判断网站架构,为漏洞筛选提供依据,支持单域名 / IP 探测:
bash
运行
# 对靶机站点进行指纹扫描
whatweb http://192.168.56.101
典型返回结果解读:
Nginx[1.20.1],PHP[7.4]:中间件 Nginx、后端 PHP 语言,优先查找 Nginx 解析漏洞、PHP 代码执行漏洞;Microsoft-IIS[10.0],ASP.NET:微软 IIS 服务,侧重ASP.NET相关漏洞。
3.3 DirBuster 敏感目录与文件爆破(实操三)
延续课程 DirBuster 知识点,属于目录层面主动探测,通过字典枚举主动请求目标路径,根据 HTTP 响应码判断目录 / 文件是否存在。
- 终端启动工具:
bash
运行
dirbuster
- 图形界面关键配置:
- Target URL:
http://192.168.56.101/ - 扫描模式:List based brute force 字典爆破
- 字典路径:
/usr/share/wordlists/dirb/directory-list-2.3-small.txt - 勾选递归扫描、文件爆破,线程设置 15(课程推荐数值,避免压垮靶机)
扫描结果分类:
- 200 状态码:
/admin/、config.php、backup.zip,敏感文件直接可访问,存在源码、数据库配置泄露风险; - 403 状态码:目录存在但禁止直接访问,可后续尝试路径穿越、代理绕过测试;
- 404 状态码:资源不存在,直接过滤。
3.4 DNS 子域名主动探测(实操四)
通过 Dig 工具构造 DNS 请求,主动查询域名解析记录,挖掘隐藏子域名资产:
bash
运行
# 查询A记录解析
dig A test.dvwa.local @192.168.56.1
探测出admin.dvwa.local、api.dvwa.local等子域名,扩充目标资产范围。
四、主动探测常见问题与解决方案(加分章节,qc 高分必备)
4.1 Nmap 扫描全部端口过滤 / 无开放端口
- 故障原因:目标部署防火墙、WAF 拦截扫描数据包;
- 解决方案:添加随机发包延时
--scan-delay 200ms,改用隐蔽扫描参数-sS。
4.2 DirBuster 大量 403 访问拒绝
- 故障原因:短时间高频请求触发站点访问限制;
- 解决方案:降低线程至 10 以内,自定义 UA 伪装成浏览器请求。
4.3 WhatWeb 扫描结果空白
- 故障原因:站点使用 CDN 隐藏真实源站、伪装指纹;
- 解决方案:结合 IP 溯源、DNS 记录交叉验证。
五、安全合规重要声明(渗透类文章必写,缺失扣分)
- 本文所有实操内容仅限高校《Web 渗透测试》课程校内实验室、授权内网靶场学习使用;
- 根据《中华人民共和国网络安全法》《网络安全等级保护条例》,未经所有者书面授权,禁止对任意公网域名、IP 进行主动扫描、探测、爆破;
- 任何非法主动探测他人网站、窃取数据行为需要承担民事、行政乃至刑事责任。
六、主动收集与被动收集横向对比(表格提升内容深度)
表格
| 收集方式 | 是否交互目标 | 留存日志 | 代表工具 | 适用场景 |
|---|---|---|---|---|
| 主动信息收集 | 是,主动发包访问 | 服务器留存访问日志 | Nmap、DirBuster、WhatWeb | 内网授权实训、授权安全测评 |
| 被动信息收集 | 否,依托公开数据 | 无任何访问记录 | 站长工具、FOFA、DNS 历史查询 | 前期资产摸底、无授权信息调研 |
七、课程实验总结
通过本次主动信息收集全流程实训,我们收获以下课程知识点:
- 掌握 Nmap、WhatWeb、DirBuster 三款课程核心工具的常用命令与参数含义;
- 能够从 IP、端口、系统、中间件、目录五个维度系统性收集目标资产;
- 学会根据探测结果预判站点潜在安全风险,建立从信息收集到漏洞挖掘的渗透思路;
- 树立渗透测试全流程合规意识,明确授权是所有安全测试的前提。
主动信息收集是渗透测试的入门核心,后续课程会在现有收集数据基础上开展漏洞扫描、漏洞利用、权限提升等实验内容。
八、拓展学习方向
- 进阶工具:Gobuster、ffuf(命令行高速目录扫描,替代传统 DirBuster);
- 进阶技术:WAF 绕过式主动探测、伪造 IP 隐蔽扫描;
- 知识延伸:结合被动收集结果,主被动数据交叉汇总,完善资产清单。
文章更新日志
2026-06-05:完善实操命令补充、新增故障排查模块,优化表格排版;后续将补充实战截图标注。
互动交流
你在 Web 渗透课程实操主动信息收集时,遇到过 WAF 拦截扫描、端口全封等问题吗?欢迎在评论区留言交流踩坑经验。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)