0Pricing
Security+ Academy · 课时

渗透测试阶段:从侦察到报告

了解渗透测试生命周期:侦察、扫描、利用、利用后活动,以及推动修复工作的最终报告。

渗透测试阶段:从侦察到报告 是 CoddyKit 上的免费 Security+ Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Security+ Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Security+ Academy 课程共包含 4 节课。

渗透测试生命周期

结构化的渗透测试遵循明确的生命周期,以确保覆盖全面、降低对生产系统的风险,并产生可执行的结果。最广泛采用的框架来自PTES(渗透测试执行标准),并与 NIST 方法保持一致。各阶段包括:规划/范围界定、Reconnaissance、Scanning、Exploitation、Post-Exploitation 和 Reporting。每个阶段都建立在前一阶段之上——您无法利用尚未发现的目标,也无法报告尚未记录的内容。跳过或仓促完成某个阶段,会导致评估不完整,Finding 也不可靠。

# Penetration testing phases:
# 1. Planning & Scoping    (Rules of Engagement)
# 2. Reconnaissance        (OSINT + passive recon)
# 3. Scanning/Enumeration  (active discovery)
# 4. Exploitation          (attacking vulnerabilities)
# 5. Post-Exploitation     (lateral movement, persistence)
# 6. Reporting             (findings + recommendations)

阶段 1:规划和范围界定

规划阶段为 Engagement 确立法律和运营基础。关键交付物包括:一份签署的工作说明书(SOW),用于定义目标和定价;一份交战规则(Rules of Engagement,RoE)文档,用于规定授权的 Target、时间窗口、禁止使用的技术、紧急联系人和数据处理要求;以及对成功标准的明确界定(什么情况算是实现了目标)。必须精确界定范围,以防止范围蔓延(意外测试未经授权的系统),并确保评估覆盖最关键的资产。在任何技术工作开始前,都应建立所有通信渠道和升级处理流程。

# Scoping questions to answer:
# - Which IP ranges/domains are in scope?
# - Are cloud environments (AWS/Azure/GCP) in scope?
# - Are physical attacks in scope?
# - Are employees fair game for phishing?
# - Are denial-of-service techniques permitted?
# - What notification procedures exist?
# - Who is the authorized point of contact?
# - What is the test window (dates/times)?
# - How will data be protected and destroyed after?

阶段 2:被动侦察(OSINT)

被动侦察会在不直接与 Target 系统交互的情况下收集有关 Target 的信息——使用不会在 Target 上生成日志的公开来源。这些来源包括:WHOIS 记录(域名注册、注册人联系方式)、DNS 记录、证书透明度日志(可揭示子域名)、LinkedIn(员工姓名、职位、使用的技术)、招聘信息(可揭示技术栈和工具)、Shodan/Censys(面向互联网的服务和开放端口)、GitHub 代码仓库(源代码、意外提交的凭据),以及 Google dorking(针对特定网站搜索敏感文件和暴露的接口)。

# OSINT techniques (no target contact):
# WHOIS:
whois targetcompany.com

# DNS enumeration via public resolvers:
dig @8.8.8.8 targetcompany.com ANY
dnsx -d targetcompany.com -a -aaaa -cname -mx -ns

# Certificate transparency (subdomains):
curl 'https://crt.sh/?q=%.targetcompany.com&output=json'

# Google dorks:
# site:targetcompany.com filetype:pdf confidential
# site:targetcompany.com inurl:admin
# site:github.com targetcompany password OR apikey

阶段 2:主动侦察

主动侦察涉及直接与 Target 系统交互以收集信息。这会在 Target 上生成日志,并且天然比被动侦察更容易引起注意。相关技术包括端口扫描(Nmap)、服务枚举、DNS 区域传送尝试和抓取服务标识信息。侦察与扫描之间的界限并不清晰——侦察的目标是收集信息,而扫描通常意味着识别漏洞。不过,主动侦察可能触发 IDS/IPS 警报,也可能被具备安全意识的 Target 发现,因此测试人员会根据 Engagement 目标在全面性和隐蔽性之间进行权衡(测试检测能力,还是隐蔽地入侵)。

# Active reconnaissance techniques:
# Host discovery:
nmap -sn 192.168.1.0/24 -oG alive_hosts.txt

# DNS zone transfer (if misconfigured):
dig axfr @ns1.targetcompany.com targetcompany.com

# Banner grabbing:
nc -v 192.168.1.10 22    # SSH version
curl -I https://targetcompany.com  # web server header

# SMTP enumeration:
nmap --script smtp-enum-users 192.168.1.25

# Web crawler:
whatweb targetcompany.com

阶段 3:扫描和漏洞分析

扫描阶段会系统地发现范围内 Target 上开放的端口、服务、软件版本和已知漏洞。此阶段使用 Nmap 进行服务枚举,并使用 Nessus/OpenVAS 进行漏洞扫描。渗透测试人员会手动审查扫描器输出并关联 Finding:Nmap 识别出的 Apache 版本,可能与 CVE 数据库中的已知漏洞利用相匹配。此阶段还包括手动探测 Web 应用(使用 Burp Suite)以及测试身份验证机制。输出结果是一个按优先级排列的潜在攻击路径列表,供 Exploitation 阶段继续处理。

# Scanning phase workflow:
# 1. Port and service scan:
nmap -sV -sC -O 192.168.1.0/24 -oX services.xml

# 2. Vulnerability scan (Nessus/OpenVAS):
# Import Nmap results -> credentialed scan -> export report

# 3. Web application scanning:
burpsuite                              # manual + scanner
niklto -h https://192.168.1.10
wpscan --url https://targetsite.com   # WordPress-specific

# 4. Correlate version with CVEs:
# searchsploit apache 2.4.41
# Check NVD: https://nvd.nist.gov/vuln/search

阶段 4:Exploitation

Exploitation 阶段会尝试利用已识别的漏洞,以实现未授权访问、权限提升或其他已定义的目标。Exploitation 必须严格遵守范围和 Rules of Engagement。相关技术包括利用未修补的漏洞(使用 Metasploit 或手动漏洞利用程序)、凭据攻击(密码喷洒、默认凭据、暴力破解)、Web 应用攻击(SQL 注入、XSS 利用),以及在获得授权时进行社会工程。每项操作都必须记录时间戳:执行了什么操作、何时执行、结果如何,以及使用了什么工具。这些 Documentation 构成最终报告的证据基础。

# Documentation during exploitation:
# Use a testing journal (OneNote, CherryTree, Obsidian)
# For each finding, record:
# - Date/time: 2026-06-15 14:32 UTC
# - Target: 192.168.1.25 (web-prod-01)
# - Finding: SQL injection in /login.php username parameter
# - Command: sqlmap -u 'http://target/login.php' --data 'user=*&pass=x'
# - Screenshot: login_sqli_01.png
# - Impact: retrieved admin credentials from users table
# - CVSS: 9.8 (Critical)

阶段 5:Post-Exploitation

Post-Exploitation 会在获得初始访问权限后开始,用于探索攻击者能够将控制范围扩展到多远。相关活动包括:权限提升(从受限的用户访问权限提升到管理员或 root 权限)、凭据收集(提取哈希、票据或明文密码)、横向移动(使用收集到的凭据访问其他系统)、数据发现(识别从已攻陷位置可以访问的敏感数据),以及建立持久化(模拟 APT 的长期访问)。目标是展示初始入侵的实际影响——不仅是某个系统被攻陷,还要说明攻击者最终能够访问哪些资源。

# Post-exploitation with Meterpreter (Metasploit):
meterpreter> sysinfo                  # OS/hostname
meterpreter> getuid                   # current user
meterpreter> getsystem                # attempt privilege escalation
meterpreter> hashdump                 # dump local NTLM hashes
meterpreter> run post/multi/gather/credentials
meterpreter> run post/windows/manage/migrate  # migrate to stable process

# Lateral movement (CrackMapExec with dumped hash):
crackmapexec smb 192.168.1.0/24 -u admin -H <NTLM_hash> --shares

通过跳板访问内部网络

跳板利用已攻陷的主机作为中继,访问渗透测试人员原本无法访问的网络网段(例如只能从应用服务器访问的内部数据库 VLAN)。Metasploit 的 route add 命令和 SSH 隧道(使用 ssh -L 进行本地转发,或使用 ssh -D 作为 SOCKS 代理)是常见的跳板机制。跳板可以验证网络分段是否真正有效——分段良好的网络应阻止已攻陷的 DMZ 服务器访问内部数据库,而扁平网络则允许自由进行横向移动。报告中记录的跳板路径可以明确显示网络分段存在缺口的位置。

# SSH local port forward (pivot):
# Access MySQL on internal server through compromised host:
ssh -L 3306:10.30.30.5:3306 user@compromised_host
# Now connect to MySQL locally:
mysql -h 127.0.0.1 -P 3306 -u root

# SOCKS proxy for full network pivot:
ssh -D 1080 user@compromised_host
# Use proxychains to route tools through SOCKS proxy:
proxychains nmap -sT 10.30.30.0/24

# Metasploit route add:
route add 10.30.30.0/24 <session_id>

清理和证据保全

测试完成后,渗透测试人员必须进行清理——移除其安装的后门、账户和工具。与真实攻击者不同,渗透测试人员受 Rules of Engagement 约束,有义务将系统恢复到测试前的状态。清理项目包括:移除创建的用户账户、删除放置的文件(载荷、工具)、移除持久化机制(WMI 订阅、计划任务、注册表启动项),并与客户确认所有测试痕迹均已消失。证据保全会同步进行:以安全格式保留所有 Screenshot、工具输出、日志和笔记,以便撰写报告及可能的法律参考。

# Post-test cleanup checklist:
# Windows:
# - Delete created accounts: net user testuser /delete
# - Remove scheduled tasks: schtasks /delete /tn 'TestTask'
# - Remove registry persistence: reg delete HKLM\...
# - Delete dropped files: del C:\Windows\Temp\payload.exe
# - Clear event logs (if authorized): wevtutil cl Security

# Linux:
# - Remove cron jobs: crontab -r
# - Remove added SSH keys: edit ~/.ssh/authorized_keys
# - Delete dropped files: rm /tmp/payload.sh

阶段 6:Reporting

报告是证明 Engagement 合理性并推动修复工作的最终交付物。一份结构良好的报告包括:执行摘要(风险评级、业务影响、供管理层关注的前三项 Finding);技术 Finding 部分(每项 Finding 都包含严重性、描述、证据、复现步骤、业务影响和具体的修复指导);以及附有原始工具输出和详细时间线的附录。报告被归类为机密文件——其中包含足够详细的信息,可能被用来重复实施攻击。交付通常包括一次复盘会议,由渗透测试团队逐项讲解 Finding 并回答客户问题。高质量的 Reporting 正是专业 Engagement 与业余扫描结果堆砌之间的区别。

考试中的被动侦察与主动侦察

Security+ 经常测试被动侦察与主动侦察之间的区别。被动侦察是在不直接联系 Target 系统的情况下,从公开来源收集信息——不会在 Target 上创建日志。例如:读取 WHOIS 记录、查看 LinkedIn、查询证书透明度日志、运行 Shodan 搜索。主动侦察则涉及直接与 Target 系统交互——进行端口扫描、抓取服务标识信息、尝试 DNS 区域传送。主动侦察会生成日志,并可能触发 IDS 警报。在实际 Engagement 中,被动侦察会先于主动侦察进行,以便在与 Target 网络建立任何可检测的联系之前绘制网络概况。

快速检查

测试您对本课 CompTIA Security+(SY0-701)相关概念的理解。

课程回顾

在本课中,您学习了:渗透测试遵循由规划、侦察、扫描、Exploitation、Post-Exploitation 和 Reporting组成的结构化生命周期;被动侦察使用公开的 OSINT 来源,不会在 Target 一侧创建日志,而主动侦察会直接与系统交互;包含执行摘要、技术 Finding 和具体修复指导的最终报告是推动安全改进的关键交付物。接下来,我们将探索 CVSS 评分以及如何确定漏洞修复的优先级。

常见问题解答

「渗透测试阶段:从侦察到报告」课时是免费的吗?

是的 — 「渗透测试阶段:从侦察到报告」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Security+ Academy 课程的其余内容,请升级到 CoddyKit PRO。 Security+ Academy 课程共包含 4 节课。

「渗透测试阶段:从侦察到报告」这节课中我会学到什么?

了解渗透测试生命周期:侦察、扫描、利用、利用后活动,以及推动修复工作的最终报告。 你通过在浏览器中直接运行的动手代码来练习 Security+ Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Security+ Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Security+ Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「渗透测试阶段:从侦察到报告」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Security+ Academy 课中编写并运行代码吗?

能。每节 Security+ Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 漏洞扫描与渗透测试
  2. 常见扫描工具:Nessus、OpenVAS、Nmap
  3. 渗透测试阶段:从侦察到报告
  4. CVSS 评分与漏洞优先级排序
← 返回 Security+ Academy