0Pricing
Cloud & IT Cert Prep · 课时

漏洞扫描与渗透测试

了解自动化扫描(非侵入式、按计划执行)与手动渗透测试(目标驱动、通常破坏性更强)之间的关键差异。

漏洞扫描与渗透测试 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。

主动 Security:先发现缺陷

被动式 Security 会在攻击发生后作出响应;主动式 Security 则会在攻击者能够利用弱点之前发现并修复它们。两种互为补充的主动式实践是漏洞 Scanning和渗透测试。二者都能发现 Security 弱点,但在 scope、方法、授权要求、风险级别以及向组织交付的内容方面存在显著差异。理解这些差异对于 Security+ 考生以及向利益相关者说明每项活动能够——以及不能够——告诉您哪些 Security 状态信息至关重要。

漏洞 Scanning 的定义

漏洞 Scanning是一种自动化过程,用于将系统与已知漏洞数据库进行比对检查。Scanner 会将版本号、配置设置和软件签名与 CVE 数据库及厂商公告进行比较,以识别潜在弱点。Scanning 通常是非侵入式的——它根据版本或配置识别某个漏洞很可能存在,但通常不会尝试利用该漏洞。扫描可以定期运行(每天、每周或持续运行),也可以大规模覆盖数千个系统。根据 PCI-DSS(由 ASV 执行每季度一次的外部扫描)及许多其他 framework 的要求,扫描属于合规 requirement。

# Vulnerability scan types:
# Credentialed (authenticated): logs into system, checks installed
#   packages, registry, configurations -- more accurate
# Uncredentialed (unauthenticated): probes from outside,
#   checks network-visible services -- more false positives

# Scanning frequency recommendations:
# Internal: weekly (or continuous)
# External: monthly + after significant changes
# PCI-DSS: quarterly external by ASV + internal after changes
# HIPAA: periodic (frequency by risk assessment)

渗透测试定义

渗透测试(渗透测试)是一种有结构、目标明确的尝试,使用攻击者可能采用的相同技术来入侵系统。与扫描不同,渗透测试会主动利用漏洞,确认漏洞确实存在且可以被利用,而不只是理论上存在。渗透测试人员会展示实际影响:他们能否获得特权访问权限?能否窃取数据?能否从一个系统横向移动到另一个系统?渗透测试能够证明漏洞确实可被利用,从而推动及时修复,并且经常发现自动化扫描器无法识别的复杂多步骤攻击路径。

交战规则与授权

未经授权进行渗透测试属于违法行为——根据美国的 CFAA(《计算机欺诈与滥用法》)等法律,这构成未经授权的访问。在任何渗透测试开始前,都必须签署一份Rules of Engagement(RoE)文档,明确规定:范围(哪些系统、IP 范围和域名)、时间窗口(工作时间或非工作时间)、禁止的操作(不得实施物理攻击,不得对生产环境发起 DoS)、紧急联系人以及授权签名。渗透测试团队携带的免责授权函,可在被安全人员发现时证明其已获得授权。没有完整的书面授权,绝不能开始测试。

# Rules of Engagement - key elements:
# 1. Authorized systems (IP ranges, domains, applications)
# 2. Exclusions (do NOT test: 10.0.1.100 - CEO's laptop)
# 3. Time window: Mon-Fri 9pm-5am only
# 4. Allowed techniques: no DoS, no physical
# 5. Emergency stop: call John at +1-555-0100
# 6. Reporting requirements and classification
# 7. Signatures: CISO + legal counsel + pen test lead
# 8. Duration: June 1 - June 15

按知识掌握程度划分的渗透测试类型

渗透测试按照测试人员掌握目标信息的多少进行分类。黑盒测试不提供任何预先信息——测试人员像外部攻击者一样开始工作,使用 OSINT 和扫描来发现目标。这种方式最贴近现实,但可能遗漏内部漏洞。白盒测试提供完整信息:网络拓扑图、源代码和凭据,从而能够进行彻底但不太贴近现实的测试。灰盒测试提供部分信息(例如一个普通用户账户),代表内部人员已被入侵或凭据被盗的场景。现实中的大多数测试项目属于灰盒或黑盒测试。

# Test knowledge types:
# Black box:
#   Tester knows: target organization name and scope
#   Simulates: external attacker with no prior knowledge

# Gray box:
#   Tester knows: some network info, may have user credentials
#   Simulates: insider threat or compromised employee account

# White box:
#   Tester knows: full network maps, source code, all credentials
#   Simulates: insider admin or code review
#   Best for: thorough coverage of all attack surfaces

内部测试与外部测试

渗透测试针对不同的观察视角。外部测试模拟没有内部访问权限、位于互联网一侧的攻击者,测试边界防御、面向互联网的应用以及电子邮件安全。内部测试模拟已经进入网络内部的威胁主体(例如被入侵的员工或通过恶意软件进行横向转移),测试横向移动控制、内部应用安全以及活动目录加固。大多数组织都能从这两种视角中受益。许多真实入侵事件都涉及外部攻击者先获得初始访问权限,然后在内部横向移动,因此两种测试结合起来比单独进行任何一种都更有价值。

扫描中的误报与漏报

漏洞扫描器并不完美。误报是指扫描器报告了实际并不存在的漏洞——例如,版本号看起来存在漏洞,但补丁已经被反向移植。误报会浪费修复资源,并削弱人们对扫描器输出结果的信任。漏报是指实际存在漏洞,但扫描器没有发现——例如,漏洞需要身份验证,而扫描未经过身份验证;或者漏洞刚刚出现,尚未被加入数据库。与未经身份验证的扫描相比,使用凭据的扫描可以显著减少误报和漏报。

# False positive/negative scenarios:

# False Positive:
# Scanner reports OpenSSL 1.0.2g as vulnerable to Heartbleed
# But: this OS distribution backported the fix to 1.0.2g
# Fix: validate with credentialed scan or manual verification

# False Negative:
# Scanner misses SQL injection in custom web application
# Because: scanner tests generic payloads, not app-specific logic
# Fix: supplement with DAST web app scanning or manual pen test

# Credentialed scan reduces both error types significantly

持续漏洞管理

现代安全项目将漏洞管理视为持续过程,而不是周期性事件。持续扫描会在新漏洞出现时(以及新的 CVE 发布时)发现这些漏洞,而不是等待下一次计划扫描窗口。漏洞管理生命周期包括:发现、确定优先级(依据 CVSS 分数和业务环境)、修复(打补丁、进行配置或接受风险)、验证(重新扫描以确认修复)以及报告。补丁管理集成可确保发现的漏洞触发自动化补丁部署工作流。SLA 会规定不同严重程度的漏洞必须在多长时间内完成修复(例如,Critical:24 小时,High:7 天)。

# Vulnerability remediation SLA examples:
# Critical (CVSS 9.0-10.0): patch within 24-48 hours
# High     (CVSS 7.0-8.9):  patch within 7 days
# Medium   (CVSS 4.0-6.9):  patch within 30 days
# Low      (CVSS 0.1-3.9):  patch within 90 days

# Exceptions process:
# If patch cannot be applied within SLA:
# -> document compensating control
# -> manager + CISO approval
# -> risk acceptance with expiration date

渗透测试交付物与报告

渗透测试最终会形成一份全面报告,这是主要交付物。报告通常包括:面向非技术管理层的执行摘要(总体风险评级、业务影响和主要发现);技术发现部分(详细的漏洞描述、证据截图和复现步骤);以及包含分优先级建议的修复路线图。发现通常使用 CVSS 分数结合业务环境,按风险级别(Critical/High/Medium/Low)评级。一份优秀的渗透测试报告能够让客户复现并验证每一项发现,并准确了解需要采取哪些修复措施。

# Pen test report structure:
# 1. Executive Summary
#    - Overall risk rating
#    - Key business risks identified
#    - High-level recommendations
# 2. Scope and Methodology
# 3. Technical Findings (per vulnerability):
#    - Title and severity rating
#    - Description
#    - Evidence (screenshots, output)
#    - Steps to reproduce
#    - Business impact
#    - Remediation recommendation
# 4. Appendices: tool output, timestamps

漏洞赏金计划

漏洞赏金计划向外部安全研究人员付费,邀请他们发现并负责任地披露组织系统中的漏洞。HackerOne、Bugcrowd 和 Intigriti 等平台将组织与全球数千名安全研究人员联系起来。漏洞赏金计划能够大规模持续开展外部测试,并且只需为经过验证的发现付费。它们通过提供多样化的研究人员视角,并在正式评估之间持续测试,来补充内部渗透测试。Critical 级别的发现通常可获得 500 至 50,000 美元以上的奖励,具体取决于严重程度和计划规定。组织对范围和规则的定义方式与渗透测试的 Rules of Engagement 类似。

扫描与渗透测试对比

对于 Security+ 考试,请清楚理解两者的关键区别。漏洞扫描:自动化、无破坏性、覆盖范围广,用于识别潜在漏洞,但不会确认漏洞是否可被利用;执行频繁或持续进行,通常由内部员工完成。渗透测试:手动(或半自动化)执行,可能造成干扰,覆盖范围较深且有针对性,能够确认实际可利用性和现实影响;按周期进行(每季度或每年),通常需要专业的外部技能和正式授权。两者相辅相成——扫描提供广度,渗透测试提供深度。成熟的安全项目会定期同时使用两者。

快速检查

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

课程回顾

在本课中,您学到了:漏洞扫描是自动化、频繁且非侵入式的,不利用漏洞即可识别潜在漏洞;而渗透测试是手动、目标明确的过程,会主动利用漏洞,以证明实际影响和攻击路径。两者都需要适当授权和 Rules of Engagement 文档;与未经身份验证的扫描相比,使用凭据的扫描可以显著减少误报和漏报。接下来,我们将了解常见的扫描工具,包括 Nessus、OpenVAS 和 Nmap。

常见问题解答

「漏洞扫描与渗透测试」课时是免费的吗?

是的 — 「漏洞扫描与渗透测试」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。

「漏洞扫描与渗透测试」这节课中我会学到什么?

了解自动化扫描(非侵入式、按计划执行)与手动渗透测试(目标驱动、通常破坏性更强)之间的关键差异。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cloud & IT Cert Prep 需要有经验吗?

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

「漏洞扫描与渗透测试」课时需要多长时间?

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

我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?

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

此课程中的所有课时

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