【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架

摘要

在满足实际需求的同时,生成正确的网络配置以最小化攻击面是一项具有挑战性的任务,特别是当考虑到分散在物理、网络和信息领域的配置之间的相互依赖关系时。由于不同域中的配置通常是单独生成的,而它们之间的复杂相互关系是独立的,因此会引入额外的漏洞。本文提出了一种新的风险评估框架MDC-Checker,以帮助网络管理员评估所涉及的风险。首先,该框架从多个域配置和网络文档中提取语义。然后,依次建立多域语义图(MDSG)和权限依赖图(PDG),从用户的初始权限推断用户的实际权限。最后,使用用户应得权限和用户实际权限之间的差异来衡量多个域配置对网络安全的影响。一个具有不同配置集的模拟网络场景被用来验证我们的框架和方法的有效性和可扩展性。实验结果表明,该框架成功地捕获了多域配置对网络安全的影响,并且该方法可扩展到不同规模的网络。

1.简介

配置管理是网络管理的基础工作之一。在网络运行和维护过程中,网络管理员需要生成和修改网络配置,以满足不断变化的需求,因为这些配置的目的是多种多样的。除了用于满足业务要求的配置外,管理要求还需要许多配置,例如允许员工进入办公室并使用计算机,允许数据库管理员远程访问数据库服务器,或者向网络管理员授予交换机密码。这些配置跨越不同的设备,并在不同的领域生效,如物理领域、网络领域和信息领域,这可能会对网络安全状态产生复杂或意外的影响。很可能,该员工可以在同一办公室中使用他自己以外的其他计算机,数据库管理员可以从数据库服务器连接其他服务器,网络管理员可以使用相同的密码远程登录其他交换机。

与实际网络运行和维护一样,不同系统中的配置始终由不同的管理员管理,并单独生成。由于缺乏对配置影响的全面分析,配置之间的相互关系往往被忽略,这将给网络安全带来额外的漏洞。

已经进行了许多尝试来识别网络配置中的问题,并将其与特定漏洞联系起来。一些人专注于发现网络设备中的错误配置(Jarraya等人,2015;Javed等人,2013年;Ngoupé等人,2014年),而其他人则专注于安全政策有效性的验证(Fitzgerald等人,2009年;Himura和Yasuda,2013年;Pamula等人,2006年;王等人,2007年)。但这些研究仅限于网络领域。此外,一些研究侧重于发现多个领域的高级策略和低级策略之间的不一致性,这被称为安全策略一致性(Alvarez-Meza et al.,2016;迪姆科夫,2012年;考尔茨,2018年;Pieters等人,2013年)。然而,现有的模型主要适用于具体问题,难以推广到一般情况。

本文提出了一种基于语义推理的多领域配置风险评估框架。本文的主要贡献是:

(1)开发了一个基于多域配置语义的安全风险评估框架MDC-Checker。该框架考虑了多个域配置之间的相互依赖关系,并采用以用户权限为中心的度量来定量评估安全风险

(2) 定义一个MDSG来表示多个域配置语义,包括实体、关系、保护和特权依赖规则,这是一个表示网络安全的静态语义和动态语义的形式化模型

(3) 定义一个PDG来正式表示用户权限之间的依赖关系,以及在多项式时间内从用户初始权限推断用户实际权限的方法。

本文的其余部分组织如下。第2节概述了网络风险评估的相关工作。第3节介绍了框架MDC检查器,并详细描述了该方法,包括概述结构、各种基本信息、MIG和PDG的定义以及以用户权限为中心的度量。第4节重点介绍了从用户初始权限推理用户实际权限的过程,这是框架的关键点。第5节介绍了实验装置和结果。第6节讨论了我们的实验结果。最后,第7节对本文进行了总结,并对今后的工作进行了展望。

2.相关工作

据我们所知,这是对网络多种配置进行统一风险评估的首次尝试。然而,我们的工作得益于访问控制理论、以特权为中心的风险评估、配置安全评估和多域安全策略协调等方面的相关研究。本节总结了相关领域的最新技术。

2.1.安全问题

对权限之间的关系进行建模并确定主体是否最终能够获得对对象的访问权限,这是安全中的一个经典问题,称为安全问题(Harrison et al.,1976)。

安全问题最初是在自由访问控制(DAC)时代讨论的。在早期的工作中,访问控制模型基于众所周知的子对象、对象和访问权限抽象,为分析多用户系统中的安全策略提供了形式化方法。Harrison等人首先将保护系统的安全属性形式化为Harrison-Russo-Ullman(HRU)模型(Harrison等人,1976),该模型具有非常广泛的表达能力。不幸的是,HRU的安全性在一般情况下是无法确定的,即使是在HRU的单调版本中也是如此(Harrison和Ruzzo,1978)。针对HRU的负面结果,开发了许多保护模型,包括原理图保护模型(SPM)(Sandhu,1988年)、扩展SPM(Ammann和Sandhu,1990年)、类型访问矩阵(TAM)(Sandhu,1992年)等。这些模型在可判定安全性方面的表达能力有限。Solworth等人提出了一种基于la-bels和重新标记的具有可判定安全性的分层DAC模型,该模型考虑了DAC模型的设计和实施过程(Solworth和Sloan,2004)。这些工作表明,基于特权分析的复杂系统安全性验证是可行的,但特权分析主要局限于操作系统,而不是一般的网络环境

2.2.以权限为中心的网络风险评估

许多工作基于以权限为中心的方法分析权限关系对安全性的影响。Decier等人提出了基于TAM模型的特权图,以找出可能导致不安全保护状态的特权转移(Dacier和Deswarte,1994)。Chinchani等人(2005年)提出了关键挑战图(KCG)来描述存储在物理实体中的信息对用户权限的影响。Mathew等人提出了一个类似的图,名为能力获取图(CAG),该图以信息为中心,重点分析信息获取对用户权限的影响(Mathew等人,2008)。依赖关系图(Toth和Kruegel,2002)提出了一个网络模型,该模型关注用户和资源之间的关系,试图模拟对计算机网络的攻击和对攻击的反应的影响(Jahnke等人,2007;Kheir等人,2010a,2010b)。其中,攻击图(Bopche和Mehtre,2016;Phillips和Swiler,1998)是最流行的方法,已被用于确定主动和被动安全措施(Kaynar,2016)。攻击图试图对利用主机漏洞并逐步获得额外权限的过程进行建模,从而排除潜在攻击者可能入侵目标网络的所有可能路径。

上述工作在网络安全领域发挥了重要作用。但是这些模型的构建在很大程度上依赖于网络的高级语义,例如,获取服务、使用服务等。此外,如何从网络配置或扫描结果中准确提取高级语义还没有得到充分讨论。此外,需要注意的是,在实际网络分析中,提取过程耗时且容易出错

2.3.配置安全性评估

先前的许多研究都是为了模拟网络配置对网络安全的影响。荷马等人提出了一种基于攻击图的方法来生成适当的配置(荷马等人,2008)。具体来说,他们使用布尔公式对配置设置或用户权限之间的因果关系进行编码,然后在为受保护的权限分配FLASE时找出正确的配置值。Ngoupe等人提出了一种延迟评估策略,用于根据事先给定的一组正式约束,判断网络设备的配置参数是否设置为适当的值(Ngoupe等人,2014)。然后,他们提出了不同供应商网络设备配置的通用数据模型,该模型在配置管理中提供了独特的词汇表(Ngoupe等人,2015)。Javed等人(2013年)提出了一种基于预定义错误配置模式找出可能的访问控制错误配置的方案。Jarraya等人(2015)提出了一个框架,用于在虚拟机迁移后验证分布式防火墙的配置。当前的防火墙策略和网络环境都被编码到不同的约束集合中,防火墙配置的合理性和完整性在两个集合之间的一致性上得到验证。

也有许多尝试来衡量网络配置的安全性。Dacier等人(1996年)使用MTTF(平均故障时间)来衡量基于特权图和马尔可夫模型的网络安全性。Pamula等人(2006年)介绍了一种基于攻击图的度量。Wang等人(2007年)提出了一种攻击抵抗度量,该度量是根据预定义的单个抵抗计算的,用于测量不同网络配置的相对安全性。此外,还考虑了这些电阻之间的依赖信息。

2.4.多领域安全策略一致性

安全策略一致性涉及社会技术系统中不同级别指定的安全策略的匹配(Pieters等人,2013),涉及多个领域,包括物理领域、数字领域和社会领域。

Dragovic等人提出了一种包容模型,以提供空间的统一表示,连接物理和虚拟领域(Dragovic和Crowcroft,2005)。Scott专注于软件代理在空间领域的移动性,并使用新的应用程序级安全策略语言来定义这些代理的行为(Scott,2005)。Kotenko等人提出了一种基于攻击树的信息系统安全分析方法,其中包括需要物理访问控制区域的社会工程攻击和攻击,以进行安全分析(Kotenko等人,201 1)。MacDonald等人关注网络/物理安全漏洞综合评估,并修改了及时检测方法,以包括网络组件(MacDonald等人,2013)。Perkins等人展示了复杂网络物理基础设施攻击的分析方法,并确定了限制攻击者成功可能性的关键安全措施(Perkins和Muller,2015)。Dimkov提出了一个名为Portunes图的模型和一种形式化方法,用于确定网络的高级策略与多领域信息的实施策略之间的一致性(Dimkov,2012;Pieters等人,2013年)。然而,这些方法是基于形式表示和推理的。受表达能力的限制,该方法只能解决少数特殊问题,如顶圈移动,但难以扩展以解决更复杂的问题。

3.多域配置的网络安全风险评估框架

在本节中,我们介绍了多域配置的网络安全风险评估框架,称为MDC-Checker。该框架的核心思想很简单:如果所有用户只获得他们应得的特权,那么网络是安全的。因此,我们可以通过分析用户实际权限和用户应得权限之间的差异来衡量当前配置下的网络安全风险。

3.1.框架概述

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第1张图片

框架的体系结构如图1所示。整个评估过程可分为三个阶段:语义提取、模型构建和安全评估。该框架的输入是网络规划文档和多域配置。网络规划文档用于提取理想的安全状态,而多域配置用于推断实际的安全状态。该框架的最终目标是当前配置下的安全风险,这些风险通过基于两种安全状态之间差异的安全评估指标进行定量测量。

第一阶段:语义提取。多域配置安全风险评估的第一阶段是从多个域配置中提取语义并统一表示。在一个模型中表示多个领域的信息是一项具有挑战性的任务。极低级别的抽象将使表示变得复杂和不可用,而极高级别的抽象将使抽象无法充分准确地把握配置更改的影响。因此,我们关注的是设备功能和相互关系,而不是配置细节。从多域配置中引出了四种基本语义,即实体、关系、保护和特权依赖规则(PDR),这些在第3.2节中有详细讨论。

第二阶段:模型构建。此阶段的主要任务是根据提取的语义依次构造MDSG和PDG。MDSG是一个表示所有基本语义的形式化模型,包括静态语义和动态语义。静态语义描述当前网络安全状态,动态语义描述网络安全状态可能发生的变化,是网络实际安全状态分析的基础。此外,该模型还可以在语法层面上发现构形语义之间潜在的不一致和冲突。

PDG由MDSG构建,MDSG提供了用户权限之间相互关系的清晰和直接表示。与MDSG的复杂性相比,PDG更为简单,它关注的是网络风险评估中的核心问题。本质上,PDG是配置安全属性的有效表示。如果不同的配置可能导致不同的用户权限依赖关系,则它们将导致不同的PDG。

第三阶段:安全评估。此阶段的主要任务是评估配置的安全风险。在该框架中,网络安全状态由用户权限矩阵表示。评估涉及三个矩阵。第一个矩阵是用户应得特权矩阵(UDPM),它描述了网络安全目标。第二个是用户的初始权限矩阵(UIPM),它描述了网络的初始状态。最后一个是用户的实际权限矩阵(UAPM),它描述了从初始状态开始可能出现的最差安全状态。当前配置的安全风险通过基于UDPM和UAPM之间差异的度量来衡量。

计算安全风险评估指标的过程分为五个步骤。首先,UDPM是从网络规划文档中提取的,它是网络安全策略的一部分,可以由经验丰富的网络管理员简单地建立。之后,UIPM将从多个域配置和系统日志中构建,其中仅包括显式授予用户的权限。然后,在第4.2节所示的PDG的基础上,使用一种形式化的方法从UIPM重新生成UAPM。最后,从UDPM和UAPM计算评估指标,这两个指标定量地衡量了当前配置的安全性,如第3.4节所示。

在此过程中,我们还可以验证提取的基本语义。在从UIPM推理UAPM的过程中,还将从可能的初始权限推理可能的路径到目标权限。这些路径可以在实际环境中进行验证,以找出不准确的语义

3.2.配置语义

应从配置中提取基本语义,包括实体、关系、保护和PDR。在本节中,我们将讨论不同语义的含义。

实体。框架涉及七种实体,即空间、对象、端口、服务、文件和信息和人。空间实体表示一个物理位置,如城市、凸轮、建筑或房间。对象实体表示评估中涉及的物理对象,不仅包括路由器、交换机或终端等网络设备,还包括可能影响用户权限更改的密钥或ID卡。端口实体表示网络设备上的物理或虚拟端口,用于描述数据包转发或路由策略。服务单元表示网络服务。它不仅可以代表传统的网络服务,如WWW(万维网)、FTP(文件传输协议)、电子邮件,还可以代表虚拟服务。例如,可以响应PING的终端被建模为部署PING响应服务。文件实体表示存储在文件系统中的数字文件。信息实体表示在空间中发布、存储在文件中或为人们所知的信息。个人实体代表参与评估的用户、管理员或潜在的攻击者。表1显示了所有类型的实体,其中列域表示它们执行的分析。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第2张图片 

关系。关系是实体之间的偏序关系,这意味着关系aRb不等于关系bRa。该框架涉及13种不同的关系,可进一步分为四类,即:遏制、传播、依赖和支配。包含关系是从包含的实体到容器实体的关系,涉及各种实体,描述物理域和数字域中所有可能的包含关系。传输关系是从源空间或端口实体到目标空间或端口实体的关系,考虑到从源实体到目标实体的人员或数据流的直接移动能力。依赖关系是从服务实体到其他服务实体的关系,这意味着前者服务的正常运行在逻辑上依赖于后者服务的正常运行。支配关系描述访问网络服务或管理网络设备的必要条件。表2详细列出了所有关系的含义。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第3张图片

保护。保护是根据当地安全政策防止非法访问的方法。该框架包括空间保护、网络保护和信息保护三种类型。

空间保护代表对空间实体的物理保护方法,表明是否以及如何允许人员进入空间。根据认证方法,空间保护可分为三个子类型。第一种是基于生物学特性,即,照片、指纹、掌纹或虹膜。保护可以简化为允许用户通过。第二种是基于附件,即,密码、身份证或钥匙。这种保护可以简化为允许任何人通过。第三种是基于对应关系的安全策略,如在门禁卡系统上添加个人照片,并由保安进行手动校准。这种保护可以简化为允许有东西的人通过。

网络保护代表了保护网络服务的方法。最常见的网络方法是在路由器或防火墙中设置访问控制列表,该列表根据数据包特征(如地址或端口)阻止特殊的网络流量。网络保护可以简化为允许数据从srcPort流向dstPort,并允许访问服务dstService通过。

信息保护代表信息保护的方法。最常用的方法是加密信息以进行存储或传递。无论是在对称密码系统还是公钥密码系统中,解密信息都需要密钥,因此信息保护可以简化为允许拥有特定信息(加密信息或密钥)的人获得另一条信息(明文)。表3列出了不同类型的保护,表中的符号在MDSG中定义(见第3.3节)。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第4张图片

PDR。如第1节所述,用户权限之间存在复杂的相互依赖关系。这些关系由PDR定义。在该框架中,涉及到九种特权,即空间进入、对象使用、对象支配、端口使用、端口支配、服务到达、服务支配、文件支配和信息知晓

具体来说,空间输入、对象使用和对象控制是物理域中的用户权限。空间输入意味着可以在物理上输入空间,对象使用意味着可以使用对象,如终端、设备、钥匙或ID卡,而对象控制意味着可以更改对象的状态或配置。

端口使用、端口控制、服务覆盖和服务控制是网络域中的用户权限。端口使用意味着可以将端口用作客户端来访问网络服务,而端口控制意味着可以更改端口状态或配置。服务到达意味着来自用户的请求数据流可以到达目标服务,但不能使用该服务,而服务支配意味着用户可以使用该服务的功能。

文件控制和信息知晓是信息领域的用户权限。文件主导意味着人们可以阅读、使用和复制数字文件,而信息知晓意味着人们可以了解信息。PDR在一阶逻辑中正式定义。它们描述了用户从拥有的特权中获得目标特权的必要条件。由于目标网络之间的差异,很难定义一组标准规则来统计所有网络。在第3.3节中,我们详细介绍了标准PDR。这些规则可以在实际的安全风险评估中进行验证和修改。

3.3 MDSG

MDSG是一个统一表示多个域配置语义的有向图。该图表示目标网络的静态属性和动态属性。前者表示当前的网络安全状态。后者表明了网络安全状态的可能演变。

定义1.MDSG是一个有向图,表示为:MDIG=(N,E,P,A,V,R,π,ν,δ)

N是一组表示实体的节点。有七种节点,对应于表1中的七种实体。函数π:N×L为节点分配标签,其中L={NS,NO,NP,NV,NF,NI,NR}是一组节点标签。具有种类空间、对象、端口、服务、文件、信息和人员的节点分别标记为NS、NO、NP、NV、NF、NI和NR。

E是一组表示关系的边。有十三种边,对应于表2中的关系。

P是一组路径,表示从网络端口到另一个端口的可能数据流路径。对于任意路径p(n_{1},n_{2})\in P,它表示从端口n1到端口n2的路径。如果p(n_{1},n_{2})=e_{1},e_{2},...,e_{n},我们有EN(e_{i}) = SN(e_{i+1})SN(e_{1}) = n_{1}EN(e_{n}) = n_{1},其中e_{1},e_{2},...,e_{n} \in E、 SN(e)是边e的源节点,EN(e)是边E的结束节点。

A是一组保护,表示在多个域中部署的保护方法。共有5种保护,其符号如表3所示。

函数φ:E→ D为边指定保护标签。D={TRUE,FALSE}表示边缘是否可以执行任何保护。δ:E→ A∗为边指定保护,这表示在边上执行的保护。

V⊂N×K是一组用户权限,其中K = { SE, OU, OD, PU, PD, VR, VD, FD, IK} 是一组权限类型,分别表示权限空间进入、对象使用、对象支配、端口使用、端口支配、服务到达、服务支配、文件支配和信息知道的类型。

R是PDR的集合。MDSG定义中有14个标准PDR,如下所示。

PDR 1:如果一个人可以进入一个空间并通过该空间和另一个空间之间的保护,他可以进入后一个空间。

\forall n_{s1},n_{s2},n_{r} \in N:\pi (n_{s1})=NS\wedge \pi (n_{s2})=NS\wedge \pi (n_{r}) =NR\wedge (n_{s1},n_{s2}) \in E \wedge HP(n_{r},n_{s1},SE) \wedge(\varphi (n_{s1},n_{s2})=FALSE \vee (\varphi (n_{s1},n_{s2})=TRUE \wedge PASS(n_{r},\delta (n_{s1},n_{s2}))))\rightarrow HP(n_{r},n_{s2},SE)

其中HP(s,o,p)表示某人s在o上拥有p特权。PASSS(s,p) 意味着s可以通过保护p,s的种类根据p的种类而变化。

PDR 2:如果一个人可以进入空间,他可以使用空间中的对象。\forall n_{s},n_{o},n_{r} \in N: \pi(n_{s}) = NS \wedge \pi(n_{o}) = NO \wedge \pi(n_{r}) = NR\wedge (n_{o},n_{s})\in E\wedge HP(n_{r},n_{s},SE) )\rightarrow HP(n_{r},n_{o},OU)

PDR3:如果一个人可以使用一个对象,他可以使用端口来访问它。

PDR 4:如果一个人可以使用某个端口,他就可以从该端口访问服务。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第5张图片 

PDR 5:如果一个人能够访问某项服务并知道其密码,他就可以主宰该服务。

 

PDR 6:如果一个人可以支配一项服务,他就可以支配从该服务获得的文件。

 

PDR 7:如果一个人能够主宰一项服务,他就可以知道从该服务中获得的信息。

 

PDR8:如果一个人能够控制一个文件,他就可以知道文件中存储的信息。 

PDR9:如果一个人控制一个文件并知道解密密钥,他可以得到解密的文件。 

PDR10:如果一个人知道一条信息并知道解密密钥,他就可以得到解密的信息。 

PDR 11:如果一个人主宰一项服务,他可以主宰该服务管理的设备。 

PDR12:如果一个人支配一个对象,他可以使用该对象。

PDR13:如果一个人控制一个对象,他可以控制属于它的端口。 

PDR14:如果一个人控制一个端口,他可以使用该端口。

 

MDSG应该满足一些基本的和直接的向心不变量,例如,只允许表2中列出的边,只允许某些类型的用户权限,每个服务必须至少在一个端口上运行,等等。这些不变量也可以正式定义。由于篇幅的限制,本文没有列出不变量。但是这些不变量提供了一种在提取的语义中发现不一致性的方法。事实上,MDSG的构造过程是循环的,在这个过程中,不准确的配置语义会逐渐得到纠正。

3.4.PDG

PDG是一个表示用户权限之间关系的有向图,它进一步简化了配置语义。

定义2.PDG是一个元组,表示为:PDG=(N',E',\pi',\sigma ')

N'是一组节点。涉及到3种节点,包括NPS、NPRI和NAND。NPS节点表示参与评估的人员。NPRI节点代表参与评估的用户权限。NAND节点是辅助节点。E'是一组有向边。从节点n_{a}n_{b}的边缘意味着用户n_{a}n_{a}是NPS节点)或具有权限n_{a}的用户(n_{a}是NPRI节点或NAND节点)将拥有权限n_{b}n_{b}必须是NPRI节点或NAND节点)。同一NPRI节点的多条边意味着由起始节点代表的任何用户或具有起始节点代表的任何权限的用户将拥有权限n_{b},而同一NAND节点的多条边意味着具有由起始节点代表的所有权限的用户将拥有NAND代表的权限。函数π':N'×L'为节点指定标签,其中L'={NPS、NPRI、NAND}是一组节点标签。类型为NPS、NPRI和NAND的节点标记为NPS、NPRI和NAND。函数σ':N×{0,1}将节点值分配给节点,可以是0或1。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第6张图片 

图2显示了一个典型的PDG。有六个NPRI节点、两个NPS节点和两个NAND节点。从图中,我们可以发现Alice将拥有特权P5,拥有特权P5的Bob将拥有特权P6,任何同时拥有P2和P3的用户都将获得特权P4。

3.5.网络安全风险评估指标

如第3.1节所述,评估中涉及三种权限矩阵UDPM、UAPM和UIPM。这些矩阵的主要结构相同,可以表示为矩阵,其中s是当前配置,U是网络用户数,P是网络权限数。矩阵元素p_{ij}^{(s)}=1表示第i个用户拥有第j个权限,而p_{ij}^{(s)}=0表示第i个用户没有第j个权限。

矩阵UDPM和UAPM之间的差异用于衡量当前配置的安全性。由于用户权限的重要性不同,引入一个权重向量来表示特权在安全性中的重要性,其中0≤W(i)≤1代表第i项特权的重要性。安全评估指标可表示为以下内容。

其中Sec(s)是当前配置的网络安全风险评估指标,函数是安全风险评估函数。在本文中,我们使用两种不同的方法来实现Fas。

实现Fas的方法之一是基于加权平方Frobenius范数,称为DFN:

 

其中函数abs(\Theta )取矩阵\Theta中每个元素的绝对值, ||\Theta||_{L}^{1}是矩阵\Theta的L1范数。

另一种实现的方法是基于加权的Jaccard相似系数,称为JAC:

其中Mpq表示仅保留其值在UDPM中为p且在UAPM中为q的元素(其他元素设置为0)而形成的矩阵。

这两个指标的值都在0和1之间。值越大表示UDPM和UAPM越相似。这两个指标各有优势。DFN更简单、更直接。它只是测量两个矩阵之间的差异。另一方面,JAC具有更实际的物理意义。它关注的是正确授予的权限比率,这始终是权限分配的目标。

4.UAPM计算

在本节中,我们将讨论从UIPM计算UAPM的过程,这是框架的关键点。该流程分为两个子流程。一个是根据MDSG建立PDG,另一个是根据PDG计算UAPM。

4.1.PDG施工

PDG施工可分为三个步骤。首先,我们构建了一个空的PDG。然后我们将节点添加到PDG。在MDSG中,对于任何n_{r}\in N,如果\pi(n_{r} )=NR,则对应的节点nr'添加到具有的PDG中。对于MDSG中的每个特权v∈ V,对应的节点n_v'添加到带有的PDG中。最后,根据MDSG中的PDR将边添加到PDG。对于每个在MDSG中pdr∈R ,我们逐案考察了它对特权推理的影响。

如果除了PDR中节点和边的类型要求之外,不需要满足其他条件,则添加从原始特权到合理特权的边。例如,对于PDR 2,如果MDSG中存在从T1到S1的边(T1位于S1中),则我们只能将空间S1的空间输入权限中的边添加到终端T1的对象使用权限中。此方法可用于PDR 2、PDR 3、PDR 4、PDR 6、PDR 7、PDR 8、PDR 11、PDR 12、PDR 13和PDR 14。

如果需要满足额外条件,节点首先添加。然后从原始特权和条件到被添加到图表中。最后,的边向升级的权限中添加。例如,对于PDR5,如果MDSG中的服务S1与信息I1之间存在边缘(服务S1具有密码I1),我们可以首先添加一个节点,然后从服务到达权限s1和信息知道权限i1添加一条边到n_{and },同样从添加一条边服务主宰特权的S 1。此方法可用于PDR 5。

如果不需要同时满足限制条件,我们将分别处理这些限制条件,例如,对于PDR 1,如果存在多个空间保护,即仅允许具有ID卡d1的用户u1和具有ID卡d2的用户u2从空间S2进入空间S1,我们将此问题转化为两个单独的问题。两个节点被添加到PDG中。然后将六条边添加到PDG,包括来自空间enter权限s1和用户u1到,从空间输入特权s1和用户u2到,来自到空间中输入s2的特权。此方法可用于PDR1、PDR 9和PDR 10。

 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第7张图片

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第8张图片 

4.2.UAPM计算

从UIPM计算UAPM的过程如算法1所示。在此过程中,将分别计算每个用户的实际权限。这意味着我们只考虑同一用户的特权之间的相互关联关系,而不是考虑不同用户之间的相互授权。

算法1包含四个函数,分别命名为getRowByNum(m,i)、setRowByNum(m,v,i)、getUserBy-RowNum(m,i)和getActualPrivilege(G,u,v)。第一种方法是从矩阵m中得到特定的行,输出是一个向量。第二种方法是将向量v设置为ma-trix m的特定行。第三个是获取由矩阵m中的第i行表示的用户指示符。最后一个是根据单个用户的初始权限推断实际权限,如算法2所示。

在算法2中,首先根据被分析用户及其初始特权向量uiv初始化pg。在此过程中,NAND类型的所有节点均设置为值0,除代表当前用户的节点(其值为1)外,所有NPS节点均设置为0,所有NPRI节点的值均根据UIV设置。然后根据节点值将节点分为两组,分别命名为nodeSet_0和nodeSet_1。接下来,逐个分析从节点集_1中的节点到节点集_0中的节点的边。对于集合中的边,如果其目标节点不是NAND类型,或者其目标节点的所有其他边都是值为1的源节点,则目标节点将从nodeSet_0移动到nodeSet_1。分析完所有边后,将重建集合nodeSet_1和nodeSet_0。重复此过程,直到设置的节点集_1和节点集_0稳定为止。最后,无人机由当前PDG构建并返回。

4.3.复杂性分析

我们现在分析UAPM计算的时间复杂性。在分析中,我们使用MDSG中定义的符号。U是相关人员的数量,N是除人员之外的其他人员的数量,P是用户权限的数量,G是MDSG中的边数,G'是PDG中的边数,L是权限依赖链的最大长度(从初始权限到实际权限)。我们有。由于算法2中的外循环最多可以循环L次,而内循环最多可以循环G'次,算法2的时间复杂度低于。因此,算法1的时间复杂度为。我们还有G≤ ,因此PDG构造的时间复杂度小于。根据复杂网络中的小世界效应,L可以被认为是一个相对较小的常数。因此,UAPM计算的时间复杂度为。这意味着,如果在具有多个用户的小型网络上执行评估,或者用户数量与网络大小线性相关,则算法2的时间复杂度将为O(u3),而在大型网络上执行评估,则时间复杂度将为O(n2)。 

5.实验和结果

5.1.实验环境

我们描述了一个典型的环境来说明我们的问题,不仅包括物理设备、物理链路和网络服务,还包括它们所在的空间、它们存储的数字文件和信息,以及管理和使用它们的管理员和用户。该网络是M公司内部网络的简化。有路由器、防火墙、入侵防御系统(IPS)、3台交换机(交换机1、交换机2和交换机3)、6台服务器(Web服务器、数据库服务器、FTP服务器、GM服务器、OA服务器和内部Web服务器)、3台门机(GM1、GM2和GM3)和5台终端(T1、T2、T3、T4和T5)。设备之间的物理链路如图3所示。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第9张图片

所有设备分布在3栋建筑和8个房间内。终端T1、T2和T3位于1号楼1-1室。开关1位于1号楼1–2号房间。GM1位于1号楼大厅(1-3号房间)。T4号端子和T5号端子位于2号楼2–1号房间。开关2位于2号楼2-2室。GM2位于2号楼大厅(2-3号房间)。路由器、防火墙、IP和所有服务器都在3号楼3-1室。GM3位于3号楼大厅(3-2号房间)。

网络中有27项服务。Web服务器和内部Web服务器在其80个端口上提供独立的Web服务。OA服务器在端口80上提供办公自动化服务,为每个用户分配特定的用户名和密码,可以视为不同的服务。FTP服务器在端口21上提供FTP服务,供所有网络管理员共享网络管理信息。数据库服务器在端口1433上提供数据库服务,Web服务器和OA服务器使用该端口。GM服务器在端口8080上提供身份验证服务,所有闸门管理器使用该服务对用户进行身份验证。此外,还有许多网络管理服务。所有服务器在端口3389上提供远程桌面服务;交换机和路由器在端口22上提供SSH服务;防火墙和IPS在端口80上提供web管理服务。

网络中涉及6个文件和42个信息。这些文件表示FTP服务器上的文件、GM服务器上的文件、数据库服务器上的数据库文件、内部Web服务器上的文件以及Web服务器和OA服务器上的配置文件。信息包括不同服务的用户密码、门机的用户身份信息、OA中处理的信任信息、存储在数据库中的加密信息以及加密信息的密钥。

网络中有5名用户,分别是Alice、Bob、Charles、David和Eric。Alice、Bob和Charles是普通员工,他们只能使用自己的终端(T1、T2和T3)访问Web服务器、OA服务器以获取基本信息,而Bob和Charles则能够访问内部Web服务。此外,Charles有权管理内部Web服务器,因为他部署并管理内部Web服务器。David和Eric是网络管理员,可以管理自己的终端(T4和T5)之外的其他设备。根据业务部门,路由器、交换机和通用服务器由David管理,而安全设备和门机由Eric管理。

5.2.实验设置和结果

我们使用python开发了一个名为MDC Checker的工具,并在图3所示的基本环境下进行了两次实验。

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第10张图片 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第11张图片

在实验1中,我们使用提出的框架来评估图3所示的配置。首先,我们从网络配置语义中提取了160个属性、382个关系和41个保护。接下来,我们构建了MDSG和PDG。MDSG包括160个节点、393条边和1722条路径,其中41个保护部署在12条边上。PDG包含295个节点(5个NPS节点、248个NPRI节点和42个NAND节点)和1022条边。然后,我们建立了UDPM和UIPM矩阵,其中用户仅被授予进入公司和获取基本信息的权限。然后,我们计算了矩阵UAPM。表4显示并比较了这些特权的数量,D列表示用户应享有的特权,I列表示用户初始特权,A列表示用户实际特权。与用户应得的特权相比,表5列出了额外的实际特权。最后,我们建立了矩阵,得到DFN=0.884和JAC=0.695。在W中,类型空间Enter、服务支配和信息知道的特权的重要值设置为1,而其他值设置为0。 

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第12张图片

【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第13张图片 

 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第14张图片

 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第15张图片

 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第16张图片

 【文献翻译】MDC-Checker:一种新的多域配置网络风险评估框架_第17张图片

在实验2中,我们评估了我们框架的性能。我们将图3所示的环境扩展到不同的大小,并比较了不同网络大小所消耗的时间和空间。我们使用了一台联想X1碳素笔记本电脑,配备i7-5500 U CPU和8 GB专用RAM进行实验。在第一种情况下,用户和网络设备的数量同时增加,如表6和图4所示。在第二种情况下,我们固定了网络的大小并增加了用户数量,如表7和图5所示。在第三种也是最后一种情况下,我们固定了用户数量并扩展了网络的其他节点(和边缘),如表8和图6所示。

6.讨论

我们提出了一个多域配置安全评估框架,该框架执行以用户权限为中心的方法来衡量多域配置的安全风险。

实践证明,MDC Checker框架能够把握多种配置对网络安全的影响。如实验1所示,尽管安全策略的设置是合理的,无论是在物理域、网络域还是信息域。用户仍然可以获得比应得的多得多的特权。从表5所示的结果中,我们可以发现两个主要问题:(1)所有用户都有能力访问服务GServer_tcp8080(2) 管理员可以获得比他们应得的多得多的特权。

对于第一个问题,我们发现访问服务GServer_tcp8080的根本原因是所有人都可以进入房间1-3、房间2-3或房间3-2,并且可以使用端口GM1_eth0、GM2_eth0或GM3_eth0访问GServer_tcp8080。这是物理安全配置和网络安全配置之间的典型一致性。

对于第二个问题,我们发现管理员访问更多服务的根本原因是:(1)管理员可以使用他们管理的设备绕过防火墙访问更多服务。EGCharles可以使用T3以外的内部Web服务器访问FServer_ftp,内部Web服务器和FServer之间没有访问控制列表(2) 管理员可以从数据库中获取更敏感的信息,也可以从他们管理的设备中获取配置文件。EG通过从数据库服务器获取服务OServer_Alice的密码,David可以访问服务OServer_web_Alice以获取Alice存储的机密信息。

我们可以发现,MDC Checker能够找出所有可能的用户权限,并评估由额外用户权限引起的安全风险。这些风险无法通过其他方法进行评估。

证明了MDC-Checker框架具有良好的可扩展性。根据表6-8和图中所示的结果。4–6,我们发现,随着网络规模的增加,时间和内存消耗呈近似线性增长,而随着用户数量的增加,时间和内存消耗呈近似线性增长。对于一个拥有450台设备和450名用户的网络,使用普通笔记本电脑时,所消耗的时间不到1.5小时,所使用的内存不超过180MB。更重要的是,如算法1所示,不同用户的实际权限是独立计算的。该算法可以并行执行,这意味着可以进一步缩短执行时间。

7.结论和进一步工作

在本文中,我们提出了一个多域配置安全评估框架,该框架采用以用户隐私为中心的方法来衡量多域配置的安全性。在该框架中,对MDSG进行了形式化定义,以建模多个域配置的语义,包括实体、关系、保护、特权和特权依赖规则。PDG用于描述用户权限之间的依赖关系。并使用两个不同的度量来把握用户服务权限和用户实际权限之间的差异。实验证明,该框架能够把握多个配置对网络安全的影响,并可扩展到不同规模的网络。未来,我们将重点关注以下方向。首先,我们将把我们的框架扩展到云环境。与传统网络相比,可能有更多的基本语义,这将在框架中引入更多的PDR,并增加评估的难度。其次,我们将重点关注多域配置的自动生成。因为我们的框架提供了两个常见的配置安全风险度量,AI(人工智能)方法可以使用这些度量自动生成多个配置。最后,我们将重点关注动态配置下的安全风险评估,因为具有管理权限的人员可能会更改配置以获取更多权限,这将给网络带来更多安全风险。

你可能感兴趣的:(安全配置,网络安全)