用损失超越曲线可视化风险
网络安全领域的任何人都熟悉的风险矩阵被广泛使用,因为它似乎可以在一张图表上简单地说明可能性和影响。在我们提出的简单解决方案中,我们简单地将似然标度替换为明确的概率,并将影响替换为代表一系列潜在损失的90% CI。
在我们提出的解决方案中,垂直轴仍然可以用单个点表示——概率而不是分数。但现在影响不仅仅体现在一个点上。如果我们说某个事件发生的概率为5%,我们就不能简单地说影响恰好是1000万美元。实际上有5%的可能性会损失一些东西,而也许有2%的可能性会损失超过500万美元,1%的可能性会损失超过1500万美元,等等。
如此大量的信息无法用风险矩阵上的单个点来绘制。相反,我们可以用称为“损失超出曲线”(LEC)的图表来表示这一点。本着不重新发明轮子的精神(正如许多行业的风险管理者已经多次做过的那样),这一概念也用于金融投资组合风险评估、精算科学以及核电和核电领域所谓的“概率风险评估”。其他工程领域。在这些其他领域,它也被不同地称为“超出概率”,甚至“补充累积概率函数”。图 3.2显示了LEC的示例。
解释损失超越曲线的要素
图 3.2显示了在给定时间段(例如一年)内由于特定类别的风险而损失给定金额的可能性。该曲线可以完全根据前面的数据表示例(表3.5)中生成的数据构建。可以为特定的情况构建风险曲线漏洞、系统、业务部门或企业。LEC可以显示一系列损失是如何可能发生的(而不仅仅是点值),并且较大损失比较小的损失的可能性较小。在图3.2所示的示例中(考虑到规模,对于大型组织来说可能是企业级网络安全风险),每年有40%的机会损失1000万美元或更多。大约还有15%的机会损失1亿美元或更多。水平轴上使用对数刻度可以更好地显示更广泛的损失(但这只是一个偏好问题-也可以使用线性刻度)。
图 3.2损耗超出曲线示例
我们还可以通过添加几条额外的曲线来创建此图表的另一个变体。图3.3显示三条曲线:固有风险、剩余风险和风险承受能力。固有风险与残余风险是网络安全中的常见区别,分别表示应用建议的控制措施(即减轻风险的方法)之前的风险和应用控制措施之后的风险。然而,固有风险并不一定意味着完全缺乏控制,因为这不是一个现实可行的替代方案。相反,固有风险可能被定义为仅包括最低限度的所需控制。这些控制措施如果排除它们将被视为疏忽,因此对于是否包含它们确实不存在困境。固有风险和残余风险之间的区别只是真正的酌情控制——这种控制被认为是排除风险的合理选择。最小控制的示例可能是密码保护、防火墙、某些所需的更新补丁频率以及限制管理员的某些类型的访问。组织可以制定自己的最低限度控制清单。如果控制被认为是最低要求,那么有没有困境,没有困境,决策分析就没有价值。因此,将我们的注意力集中在控制上是有帮助的,无论是否拥有这些控制都是合理的选择。
LEC提供了一种简单而有用的可视化方法,用于将风险与我们的风险承受能力进行比较。LEC与另一条曲线进行比较,后者代表了我们管理层认为的最大可承受风险偏好。与LEC一样,代表我们风险承受能力的曲线是明确且定量表达的。
我们将互换使用“风险偏好”和“风险承受能力”这两个术语。我们应该注意到,决策科学中有大量的工作对风险承受能力有一些具体的数学定义。这些稍微先进的方法对于在风险和回报之间进行权衡非常有用。(哈伯德在为客户分析大型风险投资时经常使用它们。)但我们将使用这条风险承受曲线来表达一种最大可承受的痛苦,而不管潜在的好处如何。
如图3.3所示,部分固有风险曲线(如较粗的曲线所示)位于风险承受能力曲线(如虚线所示)之上。固有风险曲线高于风险承受能力的部分被称为“违反”或“打破”风险承受能力。另一方面,剩余风险曲线在所有点都位于风险承受能力曲线之上或之下。如果是这种情况,我们就说风险承受能力曲线“随机支配”剩余风险曲线。这仅仅意味着残余风险是可以接受的。我们将很快讨论定义风险承受能力曲线的简单过程,但首先我们将描述如何从我们刚刚运行的蒙特卡罗模拟生成其他曲线。
图3.3固有风险、残余风险和风险承受能力
生成固有损耗和剩余损耗超出曲线
请记住,与本章中使用的其他方法一样,前面提到的网站上的可下载电子表格显示了所有技术细节。如表3.6所示,直方图有两列,其中一列显示一系列损失级别。这些值将显示在LEC的水平轴上。第二列显示生成等于或高于第一列中的值的蒙特卡罗结果的百分比。最简单的方法是使用Excel中的“countif()”函数。如果我们用“Monte Carlo Results”代表表3.5中的第二列值,用“Loss”代表电子表格中同一行损失列中的单元格,则我们得到:
=Countif(Monte Carlo Results,“>”&Loss)/10000
countif()函数的作用正如其听起来的那样。它计算定义范围内满足指定条件的值的数量。如果countif()对于给定范围返回8,840,并且“损失”等于200万美元,则意味着该范围内有8,840个值大于200万美元。除以10,000是将蒙特卡罗模拟中10,000次试验的结果变成0到1(0%和100%)之间的值。由于此公式应用于损失列中越来越大的值,模拟中超过该损失水平的值的百分比将会减少。
现在,我们只需在Excel中的这两列上创建XY散点图。如果你想让它看起来像已经展示过的LEC,您将需要使用用曲线插入点但没有点标记的散点图版本。这是电子表格中设置的版本。只需添加更多数据列即可添加更多曲线。例如,剩余风险曲线是相同的过程,但基于您实施建议的额外控制措施后的估计概率和影响(可能会更小)。
表3.6损耗超出曲线的直方图
损失 | 每年损失或更大的概率 |
$− | 99.9% |
50万美元 | 98.8% |
1,000,000美元 | 95.8% |
1,500,000美元 | 92.6% |
2,000,000美元 | 88.4% |
2,500,000美元 | 83.4% |
3,000,000美元 | 77.5% |
24,000,000美元 | 3.0% |
24,500,000美元 | 2.7% |
LEC图的一个缺点是,如果显示多个LEC,它可能会显得非常忙碌。在典型的风险矩阵中,每个风险都显示为一个点(尽管这是一个极其不现实且模糊的点),但LEC是一条曲线。这就是为什么一个制作了包含大量LEC的图表的组织将其称为“意大利面条图表”。然而,只需针对不同类别使用单独的图表即可轻松管理这种复杂性。此外,由于LEC始终可以以数学上正确的方式组合,因此我们可以拥有聚合LEC图表,其中该图表上的每条曲线都可以分解为多条曲线,显示在该曲线的单独详细图表上。这是使用LEC等工具来沟通风险的另一个关键优势。我们在本书的网站上提供了一个电子表格来展示这是如何完成的。
现在,将其与网络安全风险评估中的流行方法进行比较。典型的低/中/高方法缺乏特异性来说明“七个低值和两个中等值比一个高值风险更大”或“九个低值加起来为一个中等值”,但这可以通过LEC来完成。再次,我们需要指出,低/中/高方法的高度模糊性决不能让分析师不必思考这些事情。有了风险矩阵,分析师就被迫以更加模糊的方式思考风险。
我们需要做的是创建另一个类似表3.5的表,然后将其汇总到另一个表3.6中,但表中的每个值都是几个模拟风险类别的总和。同样,我们在www.howtomeasureanything.com/cybersecurity上提供了一个可下载的电子表格。我们可以对想要累加的所有风险再进行10,000次试验,并且我们按照LEC程序计算总数。您可能认为我们可以单独生成表,如表3.6并将每个箱内的值的数量相加以获得聚合曲线,但这会产生错误的答案,除非风险完全相关(我将跳过为什么会出现这种情况的细节,但进行一点实验会如果您想了解这两个过程之间的差异,请向您证明)。通过这种方法,我们可以看到一个系统的多个漏洞带来的风险,一个业务单元的多个系统带来的风险,以及整个企业所有业务单元的风险。
风险承受能力曲线从何而来?
理想情况下,风险承受能力曲线是在管理层的会议上收集的,该管理层能够从政策上说明组织愿意接受多少风险。Hubbard从许多组织(包括多个网络安全应用程序)收集了多种类型的风险承受能力曲线(LEC是风险承受能力量化的一种类型)。所需的会议通常在90分钟左右完成。它涉及简单地向管理层解释这个概念,然后要求他们在曲线上建立几个点。我们还需要确定我们正在捕获的风险承受能力曲线(例如,单个系统的每年风险,整个企业的每十年风险)。但一旦我们奠定了基础,我们就可以简单地从任意一点开始并提出以下问题:
分析师: | 您是否愿意接受每年因网络安全风险而损失超过500万美元的10%的可能性? |
管理人员: | 我宁愿不接受任何风险。 |
分析师: | 我也是,但你现在在很多方面都接受了风险。你总是可以花更多的钱来降低风险,但显然这是有限度的。 |
管理人员: | 真的。我想我愿意接受每年有10%的机会损失500万美元或更多。 |
分析师: | 一年内损失超过500万美元的可能性为20%? |
管理人员: | 那种感觉就像是在推。我们还是坚持10%吧。 |
分析师: | 太好了,那么10%。现在,您愿意接受更大损失(例如5000万美元或更多)的可能性有多大?你会说1%吗? |
管理人员: | 我认为我更厌恶风险。我可能会接受每年1%的机会接受2500万美元或更多的损失…… |
等等。绘制出三四个点后,我们可以插入其余的内容并将其交给执行人员最终批准。这在技术上并不是一个困难的过程,但了解如何回应一些潜在的问题或反对意见很重要。一些高管可能会指出,这个练习感觉有点抽象。在这种情况下,请给他们一些来自他们公司或其他公司的现实生活中的特定损失示例以及这些损失发生的频率。
此外,有些人可能更愿意仅在给定的网络安全预算下考虑这样的曲线,例如,“这种风险是可以接受的,具体取决于避免它的成本。”这也是合理的担忧。如果高管愿意花更多时间,你可以在不同的情况下声明更高的风险承受能力规避风险的支出水平。有多种方法可以捕获风险回报权衡(有关此方法的详细信息,请参阅哈伯德之前的书籍《风险管理的失败》和《如何衡量任何事物》)。但大多数人似乎愿意考虑仍然存在最大可接受风险的想法,这就是我们试图捕捉的。
还值得注意的是,作者有很多机会从组织的高层管理人员那里收集网络安全及其他领域问题的风险承受能力曲线。如果您担心高层管理人员不会理解这一点,我们可以说我们没有观察到这一点,即使我们被告知管理层不会理解这一点。事实上,高层管理人员似乎至少和网络安全领域的任何人一样明白必须确定哪些风险是可以接受的。
当我们讨论这个问题以及采用定量方法的其他虚幻障碍时,我们将在第五章中再次提出对管理层采用的担忧。在后面的章节中,我们还将讨论思考风险承受能力的其他方法。
从这往哪儿走
网络安全分析师可以使用许多模型来表示他们当前的不确定状态。您可以简单地直接估计可能性和影响,无需进一步分解。您可以开发一种建模方法,通过指定威胁类型、威胁能力、漏洞或系统特征来确定如何修改可能性和影响。您可以列出应用程序并按应用程序评估风险,也可以列出控制措施并评估各个控制措施将解决的风险。
最终,本书将不知道您使用哪种建模策略,但我们将讨论如何评估各种建模策略。当有足够的信息可以证明行业采用单一、统一的建模方法的合理性时,就应该这样做。在那之前,我们应该让不同的组织采用不同的建模技术,同时注意衡量这些方法的相对性能。
首先,有一些现成的解决方案可以分解风险。除了Hubbard使用的方法之外,解决方案还包括Jack Jones和Jack Freund开发的FAIR方法所使用的方法和工具。3作者认为,FAIR作为另一个基于蒙特卡罗的解决方案,在如何将风险分解为更多组件方面有自己的变化,可能是您的公司朝着正确方向迈出的一步。我们还可以在我们已经提供的简单工具的基础上构建了很多东西(并且在后面的章节中将提供更多)。对于学过基础编程、数学或金融课程的读者来说,他们也许可以毫不费力地添加更多细节。因此,大多数读者将能够从中推断出他们认为合适的内容。该网站还将为此部分添加更多工具,例如感兴趣的人可以使用R和Python。但由于我们在本书中所做的一切都可以完全在Excel中处理,因此这些工具中的任何一个都是可选的。
到目前为止,这种方法仍然只是一个基于专家判断的非常基本的解决方案——稍后使用统计方法用数据更新这个初始模型。尽管如此,即使在现阶段,与风险矩阵相比,这种方法也有其优点。它可以捕获有关网络安全专家知识的更多详细信息,并且使我们能够使用更强大的分析工具。如果我们愿意,我们可以执行以下任意或全部操作:
正如我们刚才提到的,我们可以将影响分解为不同类型成本的单独估算——法律、补救、系统中断、公共关系成本等。其中每一个都可能是已知约束的函数,例如受系统中断影响的员工数量或业务流程,或者系统上可能因违规而受到损害的记录数量。这利用了组织对其系统细节的了解。
我们可以在事件之间建立联系。例如,网络安全分析师可能知道,如果事件X发生,事件Y的可能性就会大大增加。同样,这利用了原本不会直接用于较少定量方法的知识。
在可能的情况下,可以使用适当的统计方法从已知数据中推断出其中一些可能性和影响。我们知道如何使用数学上合理的方法用新数据更新该方法中描述的不确定性状态。
这些结果可以适当地“相加”,为整套系统、业务部门或公司创造总体风险。
我们将在本书后面详细介绍这些改进和其他改进,但我们已经演示了简单的快速风险审核和一对一替代是什么样子。现在我们可以将注意力转向评估风险评估的替代方法。在我们可以在这个简单模型中开始使用的所有方法以及我们可以添加到其中的所有方法中,我们如何选择最适合我们目的的方法?或者,就此而言,我们如何知道它是否有效?
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...