风险评估是网络安全整体方案的一部分,并且是许多IT(互联网技术)标准的要求。渗透测试是评估网络安全风险的最常见(也是经常需要)的方法之一。渗透测试在风险评估中起着很重要的作用:全面的测试可帮助您识别、评估风险并确定其优先级。
在本文中,我们讨论用于风险评估的三种常见的安全测试类型,并对它们的优缺点进行了分析。我们还将调查渗透测试的类型和阶段,并共享优秀实践,以使网络安全风险评估更加有效。
网络安全风险评估
风险评估是一个过程,包括:
- 识别可能对组织造成任何损害的漏洞,威胁和风险
- 评估风险发生的概率
- 根据风险严重程度和发生的可能性确定缓解优先级
在风险管理中,评估之前先确定风险的背景,然后对这些风险作出响应和监控。
NIST Special Publication 800-39定义的风险管理
评估风险和威胁是改善网络安全的最重要步骤之一。这是一个持续的过程,可以帮助您评估安全控制,检测问题并评估其影响。进行评估有几个主要原因:
- 为了防止黑客入侵,数据泄露和数据丢失。定期检查网络安全控件可以使您在黑客利用漏洞之前检测并关闭漏洞。
- 检查网络安全性。独立的风险评估可对网络的安全控制进行检查。它可以帮助您更新有关受保护环境的知识,尤其是在进行重大更改(例如部署新软件,安装新硬件或移至新位置)之后。
- 提高决策能力。确定风险带来的影响是风险评估的重要组成部分。此信息对于做出与网络安全有关的进一步决策很有用,比如预算,计划改进,确定修复的优先顺序等。
- 减少网络安全支出。评估是一个既费时又费钱的过程。但从长远来看,它可以防止数据泄露、黑客攻击和违反法规遵性,从而使您免受更严重的损失。
- 确保合规。风险管理是许多法律、法规和标准的一部分,包括NIST Special Publications,HIPAA,PCI DSS和GDPR。不遵守与您的业务有关的规定可能会导致巨额罚款。
有效风险评估的三个阶段
风险评估的程序和工具对于每个组织和项目都是独一无二的。然而,在任何情况下都必须实施三个阶段。
风险评估的三个基本阶段
第一步是确定您需要保护的内容。这是一个可由安全团队执行的管理程序。该活动的结果是需要保护所有的数据和资源的列表。通常,此列表包括:
- 客户/客户和员工的个人身份信息
- 财务数据
- 商业和工业秘密
- 关键基础设施
- 其他……
风险评估的第二阶段是检测漏洞。在网络安全中,这可以通过漏洞扫描来实现,漏洞扫描是一种基于已知软件和硬件缺陷来识别安全系统中问题的自动化过程。
通过此分析,您将获得环境中的漏洞列表。
风险评估的第三个也是最后一个阶段是定义威胁并评估风险。在此阶段,您需要:
- 分析发现的漏洞
- 找出可能的漏洞
- 估计发生风险的可能性
- 评估风险发生后对业务的潜在后果
风险评估的结果是按风险的严重程度和对业务的影响优先级的风险列表。此列表是进行风险缓解活动、优先考虑安全修复和实施新的安全控制的基础。但在编制这份清单之前,我们需要选择一种评估风险的方法。
有三种流行的方法可以进行第三阶段的风险评估。在下一部分中,我们将分析选择每种方法的功能,工作流程以及原因。
比较常见的风险评估方法
有很多可用于风险评估的安全实践和方法。最受欢迎的三个是:
- 渗透测试
- 红队测试
- 基于风险的测试
让我们了解一下这些测试方法的优缺点,以及它们之间的区别。
风险评估的安全测试方法
渗透测试使用多种手动技术和自动化工具来模拟对组织的网络安全系统和应用程序的攻击。在此过程中,测试人员确定漏洞的可能利用情况,并估计它们可能造成的潜在损害。渗透测试可能还包括漏洞扫描。渗透测试的主要目标是确定和评估组织的所有网络安全威胁和风险。
红队测试与渗透测试有很多共同点。这种方法还可以模拟对受保护环境的攻击,但是这种攻击更具针对性、可控性和直观性。测试团队不会利用所有漏洞,而是选择他们想要获取的数据类型,要利用哪些安全问题以及如何模拟高级威胁攻击者的行为。红队只能由第三方测试团队进行,因为重点是要从外部获取安全控制。红队测试最流行的用例之一是评估渗透测试后所做的安全性改进。但是使用这种类型的测试来检查整个受保护的环境是不合理的。
基于风险的测试是一种安全测试方法,它根据发现的威胁和风险对活动进行优先级排序。通过这种方法,测试人员和安全专家可以就潜在风险达成共识,并根据影响程度对其进行分级。当项目有严格的时间限制或者您需要紧急的风险评估和安全性改进时,基于风险的测试是最好的选择。
让我们从风险评估的角度比较这些测试方法的有效性。
在这三种方法中,用于网络风险评估的渗透测试在时间消耗,成本,风险覆盖范围和结果方面是最平衡的。另外,定期进行渗透测试是NIST,HIPAA,PCI DSS,GDPR和其他制度的要求。
在进行渗透测试之前,重要的是要了解渗透测试的类型以及此过程的基本工作流程。
渗透测试
除了模拟黑客攻击之外,还有更多的事情要做。根据您的要求,期望的结果和目标,您需要选择适当的渗透测试类型,然后考虑将要使用的方法以及可能遇到的问题。
渗透测试分为三种:
- 白盒测试 -测试团队完全了解目标环境,包括有关软件体系结构和源代码的知识。他们不需要进行额外的研究或漏洞扫描,从而为更多的测试活动节省时间。此外,他们只需要证明漏洞利用的可能性,而不是如何利用漏洞。白盒测试可以由内部安全专家或第三方供应商执行。当您想针对内部攻击测试安全控件时,这种类型的测试非常有用。白盒测试方法包括DoS攻击,内存取证,物理侵入,逆向工程,模糊测试等。
- 黑盒测试 -测试团队几乎不了解环境。因此,他们必须使用任何可公开访问的信息进行渗透。换句话说,这种渗透测试模拟了外部黑客攻击。黑盒测试需要花费大量时间,但可以提供最客观的安全漏洞和风险评估。您需要一个外部组织来进行这种渗透测试。而且,您的IT专家必须不知道他们正在接受测试。黑盒测试人员使用与白盒测试人员相同的方法,只是增加了物理攻击。他们还利用漏洞扫描,社会工程,暴力破解和特权升级,以及创建或使用现有的恶意软件来渗透受保护的环境。
- 灰盒测试 —它是白盒测试和黑盒测试的结合版,测试团队在渗透的环境中获得有限的数据。例如,您可以为测试人员提供所用应用程序的文档,但不提供访问凭据或源代码。与黑盒测试相比,此类测试花费的时间相对较少;与白盒测试相比,仅提供部分代码覆盖。灰盒测试也必须由第三方进行。进行这种类型的安全评估的测试人员会使用白盒测试和黑盒测结合的方法。
三种渗透测试
这些测试类型都有自己的工作流程。然而,与风险评估程序类似,任何持久性测试共有三个阶段。
首先,攻击前有一个准备阶段:映射网络和外围环境、扫描端口、研究漏洞利用和已知漏洞、选择工具等。在白盒测试中,此阶段还包括收集目标组织及其员工的信息。准备是渗透测试最耗时的阶段,但也是最重要的。
在攻击阶段,测试人员试图破坏目标网络:破坏受保护的外围设备、获取或升级权限、访问数据和清除痕迹。
最后,攻击后阶段包括评估潜在损害并报告渗透测试过程的结果。此类报告总结了风险评估过程,通常包括:
- 发现的漏洞(如果扫描它们属于渗透测试的范围)
- 测试期间使用的方法和工具的说明
- 漏洞列表(已使用和可能的)
- 分析这些漏洞可能带来的风险
- 评估发现的风险可能对业务造成的影响
使用此报告,您可以继续进行风险管理的下一阶段:风险缓解和控制。例如,使用渗透测试结果,您可以:
- 评估安全控制的当前状态
- 观察您的安全团队对黑客攻击的反应
- 有理由增加您的网络安全预算
- 定义安全改进并确定其优先级
- 创建修补程序并采取长期的缓解措施
如我们所见,渗透测试是评估网络安全控制和风险的好方法。但是,请务必牢记渗透测试的风险。让我们在下一部分中了解它们。
本文翻译自:https://www.apriorit.com/dev-blog/676-cybersecurity-risk-assessment-with-pentesting
接下篇《渗透测试评估风险的简要指南Part 2》