目录

Penetration Testing_ Discovering Network Vulnerabilities

本文为摘录(或转载),侵删,原文为: https://www.esecurityplanet.com/networks/penetration-testing/

渗透测试是由白帽黑客对系统和网络进行的模拟网络攻击。这些模拟旨在检测出潜在的漏洞、错误配置、失误以及其他真实攻击者可能利用的弱点。

渗透测试人员与所服务的组织紧密合作,以提升其安全态势。然而,为了获得最佳结果,必须遵循不同类型的渗透测试、方法论和最佳实践。

1 Different Methods and Types of Penetration Testing 渗透测试的不同类型和方法

当公司聘请渗透测试服务时,通常会选择三种类型的模拟测试:黑箱、白箱和灰箱测试。这些测试在进行模拟攻击之前,提供给渗透测试人员的信息量有所不同。

  • 黑箱渗透测试
    黑箱测试没有任何知识或信息,属于最耗时和成本最高的渗透测试类型。然而,它们也是最真实的测试,模拟了真实攻击者的步骤。渗透测试人员没有任何信息,必须“盲目”进行测试。他们需要首先对整个基础设施进行映射,以寻找弱点入口点并识别关键业务资产的位置。

  • 灰箱渗透测试
    灰箱测试,也称为有限知识测试,组织会向渗透测试人员提供一些信息,但不会完全披露系统架构。提供给渗透测试人员的信息通常包括雇主的访问凭证或对内部网络或应用程序的了解。

  • 白箱渗透测试
    在白箱渗透测试中,组织会向道德黑客提供有关其系统和模拟目标的信息。提供的信息可以包括应用程序源代码、用户凭证、特权管理访问权限以及其他关键数据,这些数据可以用于模拟内部攻击。由于大部分访问信息都是事先提供的,因此这些测试的费用通常低于黑箱测试。

此外,测试可以是全面的或有限的。有限测试可以集中在更狭窄的目标上,例如网络、物联网设备、物理安全、云安全、web 应用程序或其他系统组件。

2 Comprehensive & Limited Testing 全面与有限测试

渗透测试可以是全面的,即组织会测试其整个网络、系统和终端,或仅限于特定的基础设施组件。全面测试较为罕见、成本高且执行困难。

由于组织通常会 设立渗透测试计划,并定期安排测试 ,因此测试往往局限于一个或几个组件。有限测试允许对特定环境进行更深入的研究,适用于版本更新和新应用程序,且更具针对性,执行成本较低且速度更快。

一些有限的渗透测试包括:

  • 网络渗透测试:测试所有可能的内外部入口点,以识别漏洞。
  • 无线渗透测试:无线评估检查无线网络和设备的安全性。
  • 物理渗透测试:渗透测试人员使用各种工具和技术,包括撬锁工具、RFID 克隆器和社会工程学,来获取物理场所的访问权限。
  • Web 应用程序渗透测试:Web 应用程序渗透测试由道德黑客对 Web 或软件应用程序的安全性进行测试。
  • 云渗透测试:渗透测试人员评估云环境、基础设施、应用程序和服务的安全性。
  • 移动渗透测试:与 Web 应用程序渗透测试类似,攻击者对移动应用程序进行漏洞测试。
  • 物联网渗透测试:对物联网连接的设备和网络进行测试。

根据目标的大小,一名道德黑客可以独立进行渗透测试。然而,测试也可能涉及多个团队共同参与攻防。

3 Red & Blue Teams 红队与蓝队

在所有三种类型的渗透测试中,安全团队和渗透测试人员偶尔会进行一种被称为红队与蓝队策略的活动。

渗透测试人员作为红队,专注于使用进攻能力攻击目标网络或应用程序,而蓝队则专注于检测和防御资产免受攻击者的侵害。这一策略使安全团队能够了解真实攻击的表现,并衡量他们的响应和表现效果。

  • 红队:红队通常由较小的道德黑客、锁匠、程序员和社会工程师组成。红队成员的任务是使用各种战术模拟真实世界中的攻击者试图破解网络或应用程序,并报告他们的发现。

  • 蓝队:蓝队负责保护组织的系统和网络免受网络攻击。这可能包括维护网络和设备、处理用户访问以及解决漏洞和安全问题。蓝队可能由多个团队组成,如网络安全、终端安全或安全运营中心(SOC)。

最近,安全团队实施了一种紫队策略,其中包括红队和蓝队成员共同合作,积极制定超越单个渗透测试的攻防策略,涵盖全面且持续的测试目标,以达到最佳效果。

无论选择哪个团队或策略,公司及其 IT 和安全团队都必须确定一个满足其需求的渗透测试计划。这对希望保护其资产不受各种可能威胁的组织至关重要。

4 Starting a Pentesting Program

大多数组织会聘请外部公司进行渗透测试,而大型公司拥有更为庞大的安全团队,可以启动自有的内部渗透测试项目。拥有一个内部渗透测试团队的额外好处在于,他们可以进行持续的、更加全面的测试计划。

无论是选择外部公司还是建立内部团队,了解渗透测试的过程都是最好的。这将有助于设计您的渗透测试计划,以确保实现目标并保护最关键的资产。

有关渗透测试项目设计和组建团队的更多信息,请阅读《如何在10个步骤内实施渗透测试计划》。

渗透测试的 6 个步骤

聘请渗透测试服务的公司也应熟悉每个评估阶段。道德黑客必须对所有步骤有深入了解,包括通常被忽略的第一步和最后一步。渗透测试的阶段包括:

  1. 预接洽阶段:这一阶段是渗透测试人员与客户确定评估范围、参与规则、批准的工具和技术以及其他程序的时机。

  2. 勘测和信息收集:评估的这一部分涉及测试人员尽可能多地收集有关目标的信息。这些信息至关重要,因为它将在渗透测试的后续阶段中使用。

  3. 扫描与分析:在扫描和分析阶段,渗透测试人员使用工具和其他方法来识别和验证网络、应用程序或设备中的漏洞和弱点。

  4. 利用阶段:利用阶段是渗透测试人员利用在之前阶段找到的信息和漏洞,获取对目标的访问权限。

  5. 利用后阶段:这一阶段在成功利用后进行,测试人员获取更多的信息和对目标系统的访问权限,尝试提升权限,并“移动”或“切换”到网络的其他部分。

  6. 报告与后评估:渗透测试完成后,测试人员必须撰写并提交一份报告给客户,解释整个过程、发现的漏洞、使用的利用工具和技术,以及获得的访问级别。此外,渗透测试人员还会推荐如何修复和补救评估过程中发现的漏洞,并改善安全态势。

尽管渗透测试的各个阶段保持不变,但所采用的方法可能会有所不同。

阅读我们的一篇文章《渗透测试的阶段与步骤解析》,以了解更多关于渗透测试生命周期的信息。

5 Penetration Testing Methodologies 渗透测试方法论

领先的组织已经制定了自己的渗透测试方法论,为道德黑客提供了蓝图。这些方法论为渗透测试的进行提供了明确的指引。然而,方法论可以根据企业或组织的需求有所不同。例如,有些方法符合国家安全和联邦标准,而其他方法则更关注私营公司。

这些组织包括 PTES、OSSTMM、NIST 和 OWASP:

  • NIST:美国国家标准与技术研究院(NIST)制定的《NIST 特别出版物 800-115:信息安全测试与评估技术指南》是从开始到结束最为详细的方法论。希望达到高安全标准的公司会采用这种渗透测试方法论。对于某些企业和组织而言,遵循 NIST 是强制要求。

  • OSSTMM:由开放安全和方法学研究所(ISECOM)开发的《开放源代码安全测试方法论手册》(OSSTMM)是一种流行的渗透测试方法论。它具体且灵活,允许白帽黑客根据组织的特定需求定制测试。广泛使用的 OSSTMM 设定了公认的测试标准,经过同行评审,并基于科学方法。

  • OWASP:开放 Web 应用程序安全项目(OWASP)为 Web 和移动应用程序、物联网设备以及应用程序接口(API)设计了其方法论。这有助于渗透测试人员,并在应用程序开发的早期阶段使用。此外,该方法论也会进行更新,以帮助安全社区跟上最新技术的发展。

  • PTES:渗透测试执行标准(PTES)框架为渗透测试的各个阶段提供指导。它包含七个主要部分,涵盖了测试人员所需的一切:初步沟通、情报收集、威胁建模阶段、漏洞研究、利用以及利用后阶段。此外,PTES 还为每个阶段开发了详尽的技术指南。

  • 合规性测试:像健康与人类服务部(HHS)和支付卡行业标准委员会(PCI Standards Council)等组织也发布了针对希望遵守 HIPAA 和 PCI-DSS 标准的组织的渗透测试指导

了解适当的评估方法论对于渗透测试人员和被测试的组织都非常重要。此外,熟悉工具也同样重要。

查看这篇有关渗透测试框架的文章,了解我们的一些推荐选择。

6 Top Pentesting Tools

市场上有多种渗透测试工具,有些是免费的,而其他则是商业解决方案。一些渗透测试人员常用的最受欢迎和有效的工具包括 Kali Linux、Burp Suite、Wireshark 和 John the Ripper:

  • *Kali Linux*:Kali Linux 是一个由 Offensive Security 维护的开源操作系统,旨在促进渗透测试、安全取证和其他活动。Kali Linux 是一个一体化系统,内置 600 种开源安全工具。

  • *Burp Suite*:Burp Suite 是由 PortSwigger 开发的一套应用程序安全测试工具,提供免费和付费许可选项。它还包括流行的 Burp Proxy,允许渗透测试人员在 Web 服务器和浏览器之间进行拦截,以检查网络流量、评估和利用漏洞,以及查找应用程序中的其他安全问题。

    另请阅读:《Burp Suite 入门:渗透测试教程》

  • *Wireshark*:该开源工具旨在进行网络监控。渗透测试人员可以使用 Wireshark 自动读取不同类型网络的实时数据。

  • *John the Ripper*:John the Ripper 是一种免费的密码破解工具,支持多种操作系统。渗透测试人员使用 JtR 获得用户密码哈希值,以快速解密加密并获取明文密码。

渗透测试人员还使用其他多种工具。有些是适用于各种测试的标准工具,而其他则是用于特定小众案例。渗透测试人员必须了解在每种场景中应使用的最佳工具和技术。然而,这只是整个过程中的一步。在评估结束后,还需要经过多个步骤。

欲了解更多关于各种可用渗透测试工具的信息,请参阅《最佳渗透测试工具》。

7 What to Do After a Penetration Test

渗透测试并不在白帽黑客检测和利用漏洞后结束。报告和修复是不可或缺的组成部分,绝不能忽略。顶级渗透测试供应商提供全面的报告,提供错误的 360 度视图、后果以及修复和修补安全漏洞的建议。

报告同样服务于安全团队、IT、开发人员、员工和高层决策者。组织的整体工作和绩效应通过报告得到提升。渗透测试的主要目标不仅是发现弱点,更是提高效率和安全性,防范风险。

此外,渗透测试人员和组织的一个良好实践是将系统恢复到攻击前的原始状态。如果渗透测试人员对配置和设置进行了修改、安装了软件或对系统进行了任何其他变更,他们必须进行清理并恢复系统。

此外,进行渗透测试的公司应在其渗透测试计划和框架内执行这些测试。在修复后,渗透测试团队应监控安全升级和补丁,并准备进行下一个预定测试。 渗透测试并非一次性的过程;这是一个持续的工作 ,当正确执行时,会带来多重益处。然而,这个过程中也存在一些挑战。