使用概率攻击图的定量信息安全风险评估
1 引言
信息通信技术系统已成为企业和生活不可或缺的一部分。与此同时,这些系统变得极为复杂,通常托管数千个软件应用程序、数据库、操作系统、服务器、进程、数据等。在这些复杂的系统之系统中,存在大量漏洞,可能被潜在的威胁行为者利用[27,30]例如电网被关闭1,智能汽车被控制2,以及金融机构遭受服务器端[20]和拒绝服务攻击。这一趋势已引起主管部门的关注,他们正在提高风险管理的最低要求[5],包括定期风险分析的要求[7,8]。然而,由于关于网络攻击影响的各种相互矛盾的数据,政府行动受到阻碍,从而难以确定新的具有成本效益的安全策略[2]。因此,衡量安全性的能力如今已成为大多数组织的首要任务。这一趋势的一个例子是世界经济论坛(WEF)于1月发布的报告《为网络韧性合作:迈向网络威胁量化》 2015[9]。世界经济论坛承认,网络风险正日益被视为企业风险管理的关键要素,并呼吁建立行业特定风险模型,以实现网络风险转移。
在各个组织中,有许多利益相关者关注IT环境及其安全的管理[11]。对于部分利益相关者而言,只需提供系统概览即可,而另一些人则需要更详细的细节。目前这种情况也体现在常用的工具中,例如面向高层管理的Visio和PowerPoint,以及面向网络管理员的漏洞扫描器。这些解决方案往往要么仅提供系统的整体视图而缺乏与实际技术细节的关联,要么只关注系统的一小部分,从而忽略了整体情况。因此,亟需能够兼顾技术细节的整体方法[29]。然而,现有的大多数方法依赖人工操作,且需要高水平的专业知识,而在信息安全领域,这种专业知识既昂贵又稀缺[26]。
pwnPr3d[18](用于Pwn3 Prediction,发音为[p”@UnprId])是一种以攻击者为中心的威胁建模技术,基于网络建模实现自动化威胁识别与量化。与其他大多数类似方法不同,pwnPr3d集成了可复用的分析能力。它无需依赖人工安全专业知识来分析模型并判断其安全性,而是能够自动执行此类分析,即将安全专业知识内置于模型之中。在分析过程中,pwnPr3d会为系统中每个资产生成被攻破所需时间(TTC)的概率分布,并将信息安全风险估计为系统范围安全失效成本的概率分布。因此,pwnPr3d能够为组织的各类利益相关方提供针对其关注点定制的网络安全评估。
本文介绍了一种对pwnPr3d元建模架构的扩展,该扩展支持自动化定量信息安全风险评估。一种新的建模实体,称为信息,使用户能够定义针对特定信息的安全漏洞的基本成本(即机密性、完整性以及可用性违规)。然后,一个专用算法直接集成到TTC计算中,根据对攻击者呈现的可能性来计算全局定量信息安全风险。最终结果是随时间推移安全漏洞的成本影响的累积频率分布。
本文其余部分结构如下:第2节介绍了相关工作,重点讨论与pwnPr3d或多或少相似的其他建模方法。接着,第3节介绍pwnPr3d建模架构的最上两层。接下来,第4节描述了信息安全风险的定量估计计算。第5节通过一个动机示例说明了pwnPr3d的使用。最后,第6节对全文进行总结。
2 相关工作
一些方法侧重于识别和量化系统或系统之系统中存在的安全风险[1,6,21,23]。这些方法通常将风险分析与评估分解为若干活动,并提供如何高效执行每一项活动的指导。例如,澳大利亚/新西兰标准AS/NZS 4360[6]规定了一个包含六个阶段的风险管理流程:确立背景、识别风险、分析风险、评估风险,最后是处理风险。NISTSP800‐30风险评估框架[23] 提出一个更为详细的九阶段流程,通常分别进行威胁和漏洞的识别。OCTAVE[1] 包含一个三阶段的风险评估策略,评估团队必须遵循该策略以提取适当的缓解措施。有时还会引入文本或图形语言以提供进一步指导。CORAS[21], 遵循[6], 中定义的流程,将威胁场景建模为有向无环图,其节点和边具有权重,即被赋予可能性值(例如概率、频率或这些值的区间)。
这些方法的一个常见缺点是,它们往往将威胁视为独立事件,从而未包含其潜在的条件依赖关系在风险估计中。此外,它们不提供自动分析,这项工作仍需手动完成。
许多方法提出通过建模概率攻击图来评估系统和网络的网络安全。一种流行的方法是利用网络漏洞扫描器的输出来建模攻击图。Mul‐Val[14]通过将扫描提取出的漏洞与基于其CVSS评分导出的概率相关联,推导出逻辑攻击图,该评分表示攻击者成功利用这些漏洞的可能性。NAVIGATOR[4]认为已识别的漏洞可被攻击者直接利用(前提是攻击者能够访问存在漏洞的系统)。TVA工具[24]以安全状态对网络进行建模,并使用漏洞数据库作为这些安全状态之间的转换。另一种广泛用于表示攻击图并计算攻击概率的解决方案是贝叶斯网络 [10,28,31]。在[10],中,作者将使用TVA工具获得的“原始”攻击图转换为动态贝叶斯网络,并将漏洞的CVSS评分转换为概率。类似地,[31]中的作者依赖CVSS来建模攻击结构中的不确定性、攻击者的行为以及警报触发情况。在 [28],中,作者使用贝叶斯攻击图来估计网络系统的安全风险,并利用遗传算法生成安全缓解计划。在目标上与pwnPr3d相似的是P2CySeMoL[13],,它是一种概率关系模型(PRM),旨在评估企业级系统架构的网络安全状况。
这些方法在从威胁和漏洞识别、可能性及严重性方面评估系统的网络安全时是高效的。然而,它们主要关注威胁和漏洞的技术层面,而未考虑企业的业务价值。此外,其中大多数方法要么是手动的,要么间接依赖于漏洞扫描器,而如上所述,这些漏洞扫描器的漏洞检测率存在争议。
诺埃尔等人[25]提出使用攻击图来衡量网络的安全风险。该分析考虑了相关的网络运营成本和攻击影响成本,从而能够结合攻击的可能性、其预期成本以及缓解成本。然而,攻击图的建模和计算仍然依赖人工完成。
3 pwnPr3d的元模型架构
pwnPr3d是一种以攻击者为中心的威胁建模方法,通过结合网络架构建模语言和概率推理引擎,基于被分析网络的模型实现威胁的自动识别与量化。该语言将网络中的资产与攻击步骤关联起来,定义了这些资产可能被损害的方式以及对其他资产可能产生的后果。因此,基于一个具体的网络模型实例, pwnPr3d能够根据资产的性质及其相互关系自动生成攻击图。该攻击图通过考虑攻击者在网络中的入口点(即被定义为成功尝试的一个或多个攻击步骤)进行分析。此外,pwnPr3d还可通过量化攻击步骤之间的(条件)依赖关系,为攻击步骤的被攻破所需时间(TTC)提供概率分布。此类量化数据可从多种来源收集,包括调查和研究,例如[12,19]。pwnPr3d能够自动识别并量化广泛的威胁,覆盖大多数STRIDE分类[16]。
基于一个网络模型实例,pwnPr3d自动生成攻击图,并通过考虑攻击者在网络中的入口点(即被定义为成功尝试的一个或多个攻击步骤)来分析该攻击图。通过量化攻击步骤(条件)依赖关系并推导出攻击步骤的被攻破所需时间(TTC)上的概率分布,可以获得资产被损害的可能性 L。此类定量数据可从各种来源收集,包括调查和研究,例如[12,19]。信息安全事件对信息资产的成本影响 I 由用户定义。对于每个资产,考虑三种类型的安全事件:机密性、完整性和可用性破坏。因此,pwnPr3d根据计算出的攻击者进展,随时间定量估计信息安全风险 R。
pwnPr3d的建模语言被设计为一种封闭的元建模架构,类似于MOF[22],,在系统和网络建模方面具有多项优势。一方面,它提供了关注点分离,使得能够在元模型的较低层捕获攻击图理论,并向较高层扩展。最终目标是使终端用户仅对资产及其关系进行建模,而所有攻击图逻辑均封装在较低层级中。另一方面,这种方法在引入新型资产和漏洞方面具有高度灵活性。组件可以以很高的细节层次进行建模,并作为封装的整体被重复使用。例如,一个操作系统可以被建模为子组件(应用程序、用户账户、网络接口)的组合,而这些子组件本身又可表示为更下层子组件的组合。通过高精度建模,能够广泛覆盖组件之间以及组件内部的各类攻击。这最终促成了包含特定产品(例如Netgear wgr614路由器)的标准组件库的建立。
接下来的章节介绍了pwnPr3d的术语和建模概念。为了使表述简洁,仅描述前两层。
3.1 第0层:资产和攻击图理论
第0层的主要目的是将IT基础设施的组件与攻击者的攻击面关联起来。它定义了攻击图理论,即攻击者通过攻击步骤的可能的进展,以及TTC计算。第0层的元模型如图1所示。其三个主要实体描述如下。
资产是将pwnPr3d逻辑关联在一起的类。该类随后会实例化系统和网络的核心组成部分,例如软件、硬件和信息。这些组成部分可以通过资产关系实体相互关联(例如,表示两台计算机之间的物理连接)。这遵循标准的面向对象建模方法。
攻击者代表通过破坏资产来威胁系统安全的恶意行为者。在pwnPr3d中,攻击者实体定义了攻击的起点。它可以连接到任何攻击步骤实体;这些连接表示攻击向量的来源。因此,这些特定的攻击步骤的TTC始终为0。
攻击步骤是攻击者为损害资产而执行的操作。因此,pwnPr3d中的每个攻击步骤都与它所针对的资产相关联。攻击步骤通过攻击步骤关系实体相互关联,形成攻击图。该derives链接将一个或多个攻击步骤关系实体绑定到一个资产关系实体。这是pwnPr3d的一个关键特性,因为它定义了第0层中的攻击图构建理论,并延伸至语言的更高层级。这使得可以从资产之间的行为关系自动推导出攻击图。详见第3.2节。
pwnPr3d将攻击图建模为边加权有向图,其中节点表示攻击步骤,这些节点的一个子集表示攻击的起始点(s),有向边定义了攻击者在所建模系统中通过成功尝试攻击步骤而产生的可能进展,边权重函数则定义了攻击者成功尝试某个攻击步骤所需时间的概率分布(即TTC)。pwnPr3d引入了两种类型的攻击步骤:攻击步骤最小值 asmin 和攻击步骤最大值asmax,用于说明某攻击步骤的可能先决条件,例如攻击者需要具备访问权限以及适当的权限才能损害一个系统。这两种特化形式呼应了以往研究中常用的AND门和OR门,但在 pwnPr3d中已被调整以支持对攻击步骤TTC的概率推理。因此,对于 asmin,仅当攻击者已成功尝试该攻击步骤的至少一个父节点后,才能尝试该步骤,类似于OR门的行为。当多个父节点均已被损害时,该攻击步骤的TTC将基于其父节点中最低的TTC计算得出。如果该攻击步骤是 asmax,则攻击者必须先成功尝试其所有父节点,才能尝试该步骤,类似于AND门的行为。该攻击步骤的TTC将基于其父节点中最高的TTC计算,作为真实AND门TTC的近似值。此近似为最坏情况,因为通常情况下攻击者所需时间会更长。
需要注意的是,攻击步骤之间的先决条件关系不应与直接因果关系混淆。由于攻击的成功依赖于多种因素,因此无法保证攻击一定会成功。漏洞利用的不完美性质是其中一个因素,攻击者的技能水平是另一个因素。因此,攻击步骤的出边定义了在成功损害该攻击步骤后呈现给攻击者的可能性。
TTC的计算遵循一个两步过程: 1.通过从每条边的TTC概率分布中进行采样,将攻击图中的每条边“具体化”。采样得到的值作为该边的权重,表示在攻击者成功执行该边源攻击步骤后,到达目标攻击步骤的TTC;2.使用改进版的Dijkstra最短路径算法,根据每个攻击步骤的祖先节点计算其最小TTC值。更具体地说,我们采用Dial的近似桶实现[3]。
此过程执行N次(例如,500次),每次攻击步骤都会记录其被分配的 TTC值。最终结果是攻击步骤在时间上的成功尝试的频率分布。
3.2 第一层:网络和系统特定逻辑
第1层引入了用于攻击图生成的网络和系统特定逻辑、可在网络中识别的各种威胁类型,以及由机密性、完整性、可用性泄露导致的损失计算。它以第0层作为元模型,本层引入的所有类均为资产实体的实例,且每个资产实例包含其自身的攻击步骤。
,虚边定义了攻击者从一个攻击步骤到另一个攻击步骤的可能进展(AttackStepRelationship实例)。(Derive关联未在图中表示。))
第0层封装了攻击图理论,而第一层封装了攻击图逻辑,即如何从对象模型推导出攻击图。每个第1层实体拥有一组相互关联的攻击步骤,且每两个实体之间的关系会衍生出特定的一组AttackStepRelation-ships。因此,用户在创建第1层对象模型时,只需实例化四个实体(代理、身份、数据、漏洞)及其关系即可。
第一层的模型,如图2所示,包含四个资产实例,下文将对此进行讨论。对于每个实体,我们描述其性质、与其他实体的关系,以及这些关系导出的攻击步骤边。
身份是指定在系统中实施的限制规则的授权概念。它们在pwnPr3d中的核心目的是指定读取和写入数据、控制代理、利用漏洞所需的权限。例如,只有管理员才允许读取特定文件,如/etc/passwd/。
身份实体有一个攻击步骤: compromisedmin。如果攻击者破坏了一个身份(例如通过凭证泄露),则其将“冒充”该身份,并获得该身份在网络上的所有权限。
身份具有四种不同的关系类型。第一,一个身份可以已授权访问某个代理。在攻击步骤层面,这会导致从身份.损害到代理.授权的边的生成。第二,一个身份可以认证为另一个身份(例如,系统的管理员也具有用户权限)。通过损害该身份,攻击者也能获得被认证身份的权限。这种关系派生出一条从管理员.损害到用户.损害的边。第三,一个身份可以被授权读取和/或写入数据。此类关系派生出一条从身份.损害到数据项.已授权读取和/或数据项.已授权写入的边。最后,一个身份可以被授权利用某个漏洞,例如,攻击者必须先获得系统上的用户权限才能利用某个漏洞。一个授权关系会导致从身份.损害到漏洞.已授权的边的生成。
代理代表网络中的任何主动实体:软件、硬件或人员。一个代理具有四个攻击步骤:(i) accessmin(攻击者对代理具有逻辑访问权限,因此可以到达该代理),(ii) authorizedmin(攻击者具备控制该代理的能力),(iii) compromisemax:攻击者已完全接管并控制该代理,以及(iv) denyServicemin:攻击者正在阻止该代理正常工作,即拒绝服务(DoS)。
access和 authorized均为 compromise的父节点,这表示为了损害一个代理,攻击者必须对该代理具有逻辑访问权限和必要的权限。
代理可能需要另一个代理才能正常运行,例如,操作系统需要网络接口才能在网络上传输数据。如果攻击者对网络接口发起拒绝服务攻击,则操作系统将无法再进行通信。因此,会推导出一条攻击步骤边,从被依赖代理的拒绝服务到依赖代理的拒绝服务。代理之间也可能相互使用,例如交换机和主机的网络接口相互配合以交换数据。由此推导出两条攻击步骤边:一条从代理A的损害到代理B的访问,另一条从代理B的损害到代理A的访问。
此外,一个代理可能需要require数据才能正常运行,例如,为了计算两个地点之间的最快路线,必须提供关于这两个地点的数据。因此,一条边从数据项 denyService派生到 denyService的该代理。代理也可能拥有数据,例如数据库服务器包含敏感数据。当攻击者破坏了拥有数据的代理时,他/她将获得对该数据的逻辑访问权限。如果他/她对该代理实施拒绝服务攻击,则数据将无法再被访问。由此推导出两条攻击步骤边:(1)从agent.compromise到datum.access,以及(2)从agent.denyService 到datum.denyService。
最后,一个代理可能包含一个漏洞,表示资产存在缺陷。如果攻击者破坏了该代理,他/她就能访问该漏洞。因此,此攻击序列由从agent.compromise 到vulnerability.access的边表示。
数据代表任何形式的信息:文件、传输消息、命令、凭证、加密等。数据实体包含六个攻击步骤:(i) accessmin(攻击者具有对该数据项的逻辑访问权限,但仍无法进行读/写操作),(ii) authorizedReadmin(攻击者获得读取该数据项的授权),(iii) authorizedWritemin(攻击者获得写入该数据项的授权), (iv) compromiseReadmax(攻击者能够读取该数据项),(v)compromiseWritemax (攻击者能够写入该数据项),以及(vi) denyServicemin(攻击者拒绝他人对该数据项的访问)。 access和 authorizedRead是 compromiseRead的父节点,access和 authorizedWrite是 compromiseWrite的父节点:当攻击者具备对某一数据项的逻辑访问权限,并且获得了读取(或写入)限时,便可读取(或写入)该数据项。此类权限通常可通过身份compromise(例如身份欺骗)获得,或通过利用某个可直接绕过访问限制的漏洞来获取。
pwnPr3d中一种特殊的数据项是凭证和加密密钥。这些通过authenticate关系与Identity相关联。如果攻击者在某个数据项上成功执行 compromiseRead,则该攻击者也会破坏该数据项所认证的所有身份。请注意,由于空间限制,此处仅展示了数据的简化表示形式,省略了封装数据以表示网络消息和加密文件的能力。
漏洞代表系统在实现或设计中的缺陷:它们构成了其他资产、关联和关系所表示的规则集中的漏洞。在pwnPr3d中,建模的是漏洞利用的可能先决条件和后果,而非漏洞被利用的具体方式。并非所有漏洞利用都会导致成功破坏这一事实,通过攻击步骤关系中的概率来体现。此外,漏洞的存在性可能存在不确定性。例如,尽管制造商尚未发布补丁,但管理员可能已经对其系统进行了加固。漏洞存在的不确定性以概率分布的形式表示,这将进一步影响TTC的计算。
漏洞实体包含三个攻击步骤:(i) accessedmin(攻击者具有对漏洞的逻辑访问权限),(ii) authorizedmin (攻击者已获得利用该漏洞所需的权限), 以及(iii) exploitmax(攻击者可以利用该漏洞)。
access和 authorized都是 exploit的父节点:攻击者需要访问漏洞并拥有必要的权限才能利用该漏洞。例如,只有在(远程)连接到目标系统并拥有用户权限的情况下,攻击者才可能安装固费rootkit。
漏洞可被利用来伪造身份以提升权限,即通过另一个身份对其进行损害。伪造关系会导致从 exploitmax到被伪造身份的攻击步骤 compromisedmin生成一条边。漏洞利用还允许攻击者在具备逻辑访问权限的情况下读取(或分别地写入,即数据篡改)某个数据项(即信息泄露)。此关系派生出两条边:从 vulnerability.exploit到datum.read以及到datum.write。最后,漏洞利用还可以授权对代理的访问,即绕过现有限制。因此,从vulnerability.exploit到 agent.authorized生成一条边。最后,当漏洞被利用时,可能使攻击者对包含该漏洞的代理实施拒绝服务攻击。从vulnerability.exploit到agent.denyService生成一条边。
4 定量信息安全风险评估的扩展
信息安全风险在ISO/IEC 27005中被定义为“某一特定威胁利用资产或资产组的漏洞,从而对组织造成损害的可能性”,其度量方式为“事件发生的可能性与其后果的组合”[17]。形式上来说,风险 R由安全事件发生的可能性与该事件对组织造成的 L影响的乘积得出(I)R= L ∗ I。
在上一节中,我们描述了pwnPr3d如何自动计算攻击发生的可能性,即以被攻破所需时间来衡量:资产 L被损害的可能性是通过量化攻击步骤(条件)依赖关系,并推导出攻击步骤的被攻破所需时间(TTC)上的概率分布得到的。在本节中,我们提出对pwnPr3d类模型的一个扩展,使用户能够为信息资产分配安全事件的成本值 I,反映安全事件对相应资产造成的成本影响。对于每个资产,考虑三种类型的安全事件:机密性、完整性和可用性破坏。因此,pwnPr3d能够随着时间的推移,基于攻击者进展的计算结果,定量估计信息安全风险 R,如图3所示,该扩展引入了一种新的第一层元素,用于表示信息资产。
信息被视为非物质的,因此与代理、身份或漏洞没有直接关系。它只能通过表示该信息的数据实体间接地与这些要素相关联。represents 数据实体表示格式(例如,XML),而信息实体则表示其含义和价值。因此,当某个身份对数据项具有读取权限时,也就相应地对该信息本身具有读取权限。此外,一份信息可能由存储在不同位置的多份数据来表示(例如,企业定期备份数据库)。
信息实体可能遭受三种攻击步骤的损害,对应于CIA三要素:
– compromiseConfidentialitymin:攻击者已获得对表示该信息的其中一个数据的逻辑访问权限,并拥有读取权限,这使其能够访问该信息。
– compromiseIntegritymax:攻击者已获得对其中一个数据的逻辑访问权限,并拥有写入权限,因此可以损害该信息的完整性。
– compromiseAvailabilitymax:攻击者使所有表示该信息的数据对其周围环境不可用(例如,通过拒绝服务),从而损害了该信息的可用性。由于这是直接的技术后果,因此在数据.denyService与 compromiseAvailability之间的攻击步骤边的TTC被设置为0。
compromiseIntegrity和 compromiseAvailability是 asmax,因为信息可以在系统中的多个位置存在。因此,如果攻击者破坏了其中一个表示数据,从技术上讲,信息仍然可用/一致。相反,compromiseConfidentialitymin是一种 asmin,因为攻击者只需对其中一个表示数据尝试 compromiseRead即可损害信息保密性。
每个信息实例必须用三个属性来评估其机密性、完整性和可用性泄露的成本影响。成本类型取决于攻击步骤的类型,即compromiseConfidentiality与保密性成本相关,compromiseIntegrity与完整性成本相关,而 compromiseAvailability与可用性成本相关。用户有责任量化每个信息实例的 CIA泄露成本影响。实际上,评估此类成本是一项繁重且高度推测性的任务,涉及许多因素[15]。人们可以考虑直接损失以及延迟损失,包括时间敏感性、对股票市场的影响、资产恢复成本等。决定应考虑哪些因素及其程度是一个真正的挑战,因此,无论采用何种评估方法,量化结果都可能相当不准确。为了缓解这种不准确性,影响成本被定义为概率分布。在下一节中,例如,使用截断正态分布来量化成本。另一种选择是可以使用贝塔分布,以在分布内建模不同程度的置信水平。请注意,在本文中,我们并未提供有关如何计算单个影响成本以及如何从中推导出概率分布的具体方法(因为这些内容在文献中已有充分讨论)。相反,重点仅在于这些成本如何根据攻击图分析进行聚合。
定量信息安全风险的计算直接集成在TTC计算算法中。每次TTC计算之前,会对所有机密性、完整性、可用性成本影响的概率分布进行采样。每次TTC计算之后,会检查由信息实体拥有的已成功尝试的攻击步骤,以收集由攻击步骤的TTC值和所属信息实体的采样成本影响组成的元组。这些元组随后根据其 TTC值(从最早到最晚)排序,并对其关联的成本影响进行累积:给定元组的累积成本等于其初始成本与其前一个元组累积成本之和。当TTC计算算法执行 N次后,得到的N个元组集合将被合并并按时间区间分布。最终结果是随时间推移,基于攻击者在网络中的进展,机密性、完整性、可用性泄露的累积成本影响的累积频率分布。用户将看到一个包含5、50和95百分位数的累积直方图。
5 动机示例
将 pwnPr3d 应用于测试企业网络涉及设计一个拓扑模型,该模型包含网络中的所有组件和资产、它们之间的连接方式、各种访问限制(例如防火墙规则)、信息资产的价值,以及引入一个(或多个)攻击者。当然,只有在定义并归类复杂类,并最终将其作为组件库提供给终端用户时,才能实现全面的威胁分析和安全风险计算自动化(例如,需要有人定义 Windows 10 的构造方式)。一旦适当的类可用,pwnPr3d 就可用于评估不同的设计场景。然而,高层组件和产品库不在本文讨论范围之内,本文的重点是 pwnPr3d 的核心层及其扩展功能,该扩展使其能够计算全局信息安全风险。因此需要注意的是,下文提出的动机示例并未反映终端用户对其企业网络建模的实际方式。
考虑一个高度简化的软件开发企业网络的片段。该网络由一台Windows 10客户端主机组成,该主机具有两种权限级别:访客和用户。要获得用户权限,必须知道相关的凭证。该Windows 10客户端主机连接到一台Linux服务器主机,后者存储了企业在内部创建的所有源代码。在Windows 10客户端主机上拥有用户权限时,可以访问与该用户账户相关的主文件夹,以及Linux服务器主机上的管理员权限。最后,该Windows 10客户端主机存在一个已知(虚构)漏洞,如果被利用,将使攻击者能够授权读取该主机的用户凭证。在此示例中,
目标是衡量攻击者在拥有对Windows 10客户端主机的逻辑访问权限且具备访客权限的情况下可能实现的进展,以及相应的信息安全风险估计。该目标在模型中通过两条从攻击者到相关对象的startingPoint关系进行定义。本示例的 pwnPr3d对象模型如图4所示,使用pwnPr3d的第一层元模型设计。
由于攻击者拥有对Windows主机的逻辑访问权限且具备来宾权限,因此该主机被视为已受损。于是,攻击者现在可以利用漏洞以获取用户凭证的读取权限。一旦实施,攻击者就有可能成为 User在Windows主机上。由于凭证属于数据,若发生机密性泄露,则设定9800的成本,并标记为“已达到”。攻击者还可以继续
在Windows主机上作为 User,攻击者可以横向移动并以管理员权限损害 Linux服务器。此外,如果成功执行,相关违规成本也将标记为“已达到”。进一步地,攻击者将有可能读写用户主文件夹中的数据。同样,如果执行此操作,将进一步的安全成本标记为“已达到”。
图5展示了pwnPr3d为测试网络生成的结果。如(a)所示,针对攻击者成功尝试的每个攻击步骤,计算出其被攻破所需时间的频率分布。在此示例中,对源代码数据的读取访问平均被攻破时间约为6天。随后,将所有与信息资产相关的攻击步骤的TTC与其对应资产的影响成本相结合,并以直方图的形式呈现给用户,如(b)所示,表示随时间增加的安全风险。第5百分位数和第95百分位数是每个时间段(一个时间段为十分之一天)的影响成本分布。例如,在图中的第6天,5%最低成本计算的影响成本最高约为2000美元。这意味着,如果在6天后有1000次计算,按总体影响成本从低到高排序,第5百分位数即为第50个最低计算的总体影响成本。同样,第95百分位数即为第50个最高计算的总体影响成本。
6 结论
pwnPr3d 是一种以攻击者为中心的概率性威胁建模技术,基于被分析系统的拓扑模型,用于自动化的风险识别与量化。系统组件根据其性质以及彼此之间的关联,自动与定义这些资产如何被损害的攻击步骤相关联:威胁分析内置于其中,用户无需具备安全专业知识。从拓扑模型中计算出攻击图,并在每个攻击步骤上填充关于被攻破所需时间(TTC)的概率分布,从而定义已识别的威胁利用漏洞的可能性。一旦用户定义了信息资产对其组织的价值,pwnPr3d 将根据计算出的攻击者进展,自动计算随时间推移的信息安全风险的定量估计。
未来的工作将朝着两个研究方向展开:(i)扩展语言以包含复杂的组件和产品,供用户简单实例化;(ii)扩展对有形资产的风险分析,以提高其整体的准确性和精确性。此外,目前正在对真实生活中的系统进行充分的实验,以验证该方法的有效性。
932

被折叠的 条评论
为什么被折叠?



