APP下载

面向分布式网络结构的APT攻击双重博弈模型

2018-07-25陈文武

计算机应用 2018年5期
关键词:博弈论攻击者漏洞

张 为,苏 旸,陈文武

(1.武警工程大学电子技术系,西安710086; 2.武警工程大学信息安全保密重点实验室,西安710086)(*通信作者电子邮箱13022992885@163.com)

0 引言

随着科技的不断进步,很多基础设施为了提高事实态势感知和操作效率开放了公共网络,但同时,像电脑蠕虫、震网病毒等恶意攻击对信息安全造成了极大威胁[1]。尤其是近10年来,随着 Facebook、Twitter等社交网络服务(Social Networking Service,SNS)应用的快速发展普及,人际关系网络已成为新的网络犯罪增长点,相关的社会工程学方法以及策略邮件、网页木马等攻击手段更成为了针对性渗透攻击的突破口[2]。在2016年360威胁情报中监测到高级持续威胁(Advanced Persist Threat,APT)报告中,中国已成为全球APT攻击的第一目标国,涉及APT攻击报告的数量多达26件,APT攻击组织数量多达29个。由此说明传统的防御方法已难以防范APT攻击[3],我国在网络安全领域面临的形势越来越严峻,而APT攻击将成为防范的重点。

APT攻击是针对国家组织、大型企业等主要部门实施的攻击[4],它具有攻击手段高级、攻击时间长、攻击危害大等特点。目前,网络安全通常是由自动化工具和技术检测来减少漏洞,例如使用拓扑脆弱性分析(Topological Vulnerability Analysis,TVA)[5],而分布式网络是由分布在不同地点且具有多个终端的节点相互连接而成的大型网络,防御者在进行预防时,很难做到面面俱到,给攻击者留下可乘之机。传统的安全技术专注于一次性的攻击,在面对持续、隐藏和复杂策略的APT攻击存在严重不足[6],主要表现为以下3个方面:

1)分布式网络分散管理,不易于集中控制,对于一个大型的分布式系统,管理者无法全面掌握所有终端的信息,难以对整个网络系统的风险进行评估。

2)分布式网络中任一节点至少与两条线路相连,当其中一个节点被攻破,攻击者会通过提升权限、横向攻击向其他节点渗透,最终造成重要信息的泄露或整个网络系统的瘫痪。

3)分布式网络分布范围广、网络节点多,在面对拥有大数据分析的APT攻击时,所有存在的漏洞都有被攻击者利用的可能,所以需要对每个节点都采用高强度防御,这样会造成浪费资源多、耗费成本大,而最终不一定取得最优的防御效果。

1 相关工作

博弈论是一种用于事前分析、制定决策的理论,在很早以前就被应用于军事、政治、社会生产实践等多个领域。而在近代开始与网络通信、网络空间安全相结合,博弈论从成本效益的角度分析网络中的各种攻击行为,进而制定效率最高、行动最优的防御策略。例如,Semasinghe等[8]将博弈论用于研究小型分布式资源分配,Altman等[9]用博弈论和进化动力学来解决非合作路由问题,Lin等[10]将博弈论用于用户与视频流服务提供商之间价格的变化,Shree等[11]用博弈论的方法建立网络攻防交互通信网络模型,Zhu等[12]用博弈论的方法用于网络空间系统建模。这些研究已经将博弈论应用于网络空间安全,在博弈论的基础上制定了各种价值很高的网络规则,能够抵御部分网络攻击,但对于攻击方法灵活、攻击行为隐秘的高级攻击仍然束手无策。

近年来,Bowers等[13]对Flipit博弈模型进行了拓展,通过计算攻击频率和防御频率的均衡,实现了密码重置和密钥管理等功能来预防未知的攻击,但在面对多变的APT攻击时存在防御被动性;后来,Pawlick等[14]在攻击者、防御者和云用户之间建立三人博弈模型来捕获隐藏的APT攻击,并提出了Gestalt均衡寻求最优解;Hu等[15]用动态博弈研究攻防双方之间的相互作用,提出攻击者互相竞争有价值信息的同时存在被防御者发现的风险,并通过双重博弈的纳什均衡证明了模型的安全性;Fang等[16]设计了基于攻击路径的博弈模型,通过计算纳什均衡得出攻击者最可能采取的攻击路径以及防御者的最优防御方案。这都充分体现了博弈论在网络攻防对抗中,对于实施网络主动防御中有着重要的价值,但这些研究只是宽泛地实现某种网络功能来预防APT攻击,而没有具体到使用某一网络拓扑结构的机构该如何进行APT攻击的防范。

我国是APT的主要受害国,怎样确保重要部门、大型企业机构系统资源的网络安全,是当前的一个热点问题。传统的防御措施对于APT攻击很难奏效,本文针对分布式网络结构提出了双重博弈对其进行建模,主要有以下3点工作:

1)针对分布式网络分布广,管理者难以对整个网络系统进行风险评估的问题,在流量监控、漏洞扫描和入侵检测的基础上,提出用节点博弈计算可疑行为风险系数。

2)针对分布式网络之间相互连通,容易被攻击者利用横向攻击进行渗透的问题,在节点博弈的基础上,提出了改进后的OAPG模型(Attack path prediction model Oriented to APT)对APT攻击路径进行建模,分析了攻击者可能使用的攻击策略。

3)针对分布式网络对每个节点采用高强度防御,造成浪费资源多、耗费成本大的问题,在改进后的OAPG模型的基础上,计算了攻防双方理论收益,分析了均衡策略,提出了防御者最优的防御方案。

2 模型初始化

2.1 APT 攻击步骤

通过对近些年来对APT攻击的统计分析,黑客在进行渗透时一般采用鱼叉攻击(邮件攻击)、水坑攻击(网站攻击)、已知漏洞攻击、0day漏洞攻击等攻击方式。而在攻击时,一般步骤分为情报收集、定向攻击(中间主机俗称“肉鸡”)、横向扩散(目标主机)、收集信息以及清除痕迹5个步骤。APT攻击方法多种多样,攻击者在进行攻击时可以灵活运用这些步骤。图1为APT攻击步骤示意图。

图1 APT攻击步骤Fig.1 Steps of APT attack

2.2 分布式网络结构

在我国,很多重要部门、大型企业机构为了实现各个部门、区域的管理常采用分布式网络机构体系。分布式网络结构能够连接分布在不同地点的计算机,实现资源共享;具有很高的可靠性,便于分散管理,即使局部故障也不会导致整个系统的瘫痪;易于扩充,如果想加入新的节点,可在网络的任意点进行网络连接;分布式系统廉价高效,由成本低廉的PC服务器组成的集群,在性能方面能够达到或超越大型机的处理性能,在成本上远低于大型机。图2展示了分布式网络结构的简单架构。

图2 分布式网络结构Fig.2 Structure of distributed network

2.3 建立网络防御框架

通过对近些年网络事故的分析,针对分布式网络结构特点,在网络防御常用措施基础上,引进了节点博弈模型对可疑行为进行风险评估,通过OAPG模型对高风险行为进行理论收益博弈,进而提出网络防御框架如图3所示。

本框架通过流量监控、漏洞扫描和入侵检测等措施对分布式网络中存在的可疑行为进行捕捉,当发现异常行为后,通过节点博弈计算该行为的风险系数(见3.2节):若风险系数较低,可通过传统安全措施进行防御;若风险系数较高,则引用OAPG模型对该行为进行建模(见3.1节),寻找可能的攻击路径,进而形成最优防御策略保护系统资源的安全。

图3 网络防御框架Fig.3 Framework of network defense

3 建立博弈模型

OAPG模型是文献[16]提出的针对APT攻击的博弈模型,定义1、定义2和定义3对原有模型的相关参数进行了定义,该模型用博弈论的方法,对APT攻击的路径进行判断,进而提出有效的防御措施。本文在此基础上对该模型进行了改进,通过定义4、定义5对攻击成本和防御成本进一步量化,通过定义6引进漏洞风险系数,并使用节点博弈对风险系数进行建模,通过双重博弈的后的模型架构更充实、计算结果更可靠。

3.1 OAPG 博弈模型

1)V表示网络中的节点。分别用V1,V2,…,Vn表示。

2)T表示节点的状态,分别为Scanning、Remote access permission、Local user permissions、Root permissions。

3)Si表示参与博弈的攻击方和防御方,在这里用S1代表攻击方,S2表示防御方。

定义2 用value表示核心数据的总价值。

定义3 用fi表示风险系数,当攻击者攻占一台主机后,根据获得的权限不同,对系统造成的风险也不同。一般关系参考文献[16]如表1所示。

表1 攻击者对系统风险系数Tab.1 Hazard coefficient of attackers to the system

定义4 用ci表示攻击方攻击成本,攻击成本ci会因攻击方式和攻击节点的不同而改变。

定义5 用di表示防御成本,防御成本di会因防御方式和防御节点的不同而改变。其中Ocost表示操作代价,Ncost表示负面代价,Rcost表示残余损失。方程详解请参考文献[17]。

改进后的OAPG模型计算方法如下:

攻击方可以选择不同的攻击方式和攻击路径,如果这时防御方没有进行任何防御,可以得出攻击方的收益函数为攻击者获取当前节点访问权限的收益与攻击成本之差:

当防御方进行主动防御时,攻击方成功获取节点数据访问权限便成为一个概率事件,当攻击方用策略,防御方用策略S2j,攻击方的收益为:

由于函数(1)、(2)是在防御方是否进行防御时,对攻击者所产生的收益,那么其收益差减去防御方防守需要花费的成本di即为防御方的收益,从而得出防御方的收益函数为:

计算出攻击方和防御方的所有策略的收益后,可以生成网络攻防收益矩阵(Attack-Defense Benefit Matrix,ADBM):

其中:行表示防御方策略,列表示攻击方策略。

定义7 演化纳什均衡,在改进后的OAPG模型G{V,T,是一个纳什均衡,当且仅当对每一个局中人n,策略是对付另一个参与人的最优策略,所以有:对于任意,对于任意

3.2 节点博弈模型

定义8 节点博弈模型 H{Vi,pij,bsi,q(sji)}是一个四元组,其中:

1)Vi表示节点,分别用 V1,V2,…,Vn表示。

2)pij表示节点Vi到节点Vj的有向边。

3)bsi表示节点i的漏洞CVSS评分值。

CVSS(Common Vulnerability Scoring System)是一套通用的漏洞评分机制,可以对系统存在的漏洞进行风险评估。其基本度量组包含6项属性:入侵途径(Access Vector,AV)、身份认证(Authentication,AU)、攻击复杂度(Access Complexity,AC)、机密性影响(ConfImpact,CI)、完整性影响(IntegImpact,II)、可用性影响(AvailImpact,AI)。

漏洞风险分析算法(Vulnerability Risk Analysis Algorithm,VRAA)是参考国家漏洞数据库(National Vulnerability Database,NVD)各项数据库的数据表示和CVSS推荐分值的基础上,通过实验测试每个漏洞的各项属性值,计算每个攻击策略的漏洞风险值,可将策略风险系数q(sji)表示为:

其中

当各项属性取最大风险值时,可计算得BS=10为系统漏洞的最大风险评价分值。其余漏洞可通过实验室漏洞测试各项属性值以及CVSS评分标准及式(6)计算出相应的评价分值。

当防御方实施防御策略前,期望获得各个攻击策略的漏洞风险评估,通过式(5)可以计算所有策略风险系数,获得最大风险系数max q(S*1),以及最小风险系数min q(S*1)。

基于OAPG模型和节点博弈的算法步骤如下:

输入 OAPG模型G和节点博弈模型H;

输出 攻击策略和最优防御策略。

根据图1、图2生成网络攻击树;

While bsj∈bsi,通过式(5)计算所有风险系数q(Sm1),得出最大风险系数max q(S*1)和最小风险系数min q(S*1);

While Sm1∈S1,Sn2∈S2,通过式(3)、(4)计算所有攻击策略收益和防御策略收益并生成ADBM;

对得到的数据进行分析得出最优攻击策略S*1以及最优防御策略S*2;

通过定义7和节点博弈对计算结果进行验证;

4 模型应用

4.1 仿真实验

为了验证网络攻防OAPG模型,本文模拟黑客组织对某一企业机构进行APT攻击,实验环境如图4所示。

图4 实验室网络环境Fig.4 Laboratory network environment

1)针对分布式网络分布广、网络节点多等特点,将实验网络环境划分为工作区、服务区和中心主管区,各个区内部通过局域网和专用网实现网络功能。

2)针对分布式网络任一节点至少与两条线路相连的特点,设定3个区之间通过互联网连接且相互之间具有信任关系,攻击者攻击其中一个节点后,可通过横向攻击另一个节点进行渗透。

3)针对分布式网络由分布在不同地点且具有多个终端的节点机互连而成的特点,实验网络环境设置有FTP服务器、smtp服务器和database服务器,外部电脑可通过互联网对ftp服务器、smtp服务器和办公电脑进行数据访问,database服务器(IP2)存储核心数据,只有办公电脑(IP1)可以通过专用网对其进行数据读写,外部网络无权访问。可利用的漏洞如表2所示。

表2 各节点存在的漏洞情况Tab.2 Vulnerabilities in each node

参考文献[18]的原子攻击信息和攻防行为数据库,综合以往的漏洞数据库和文献[17]的防御费用计算方法,在分析路由文件、漏洞数据库、攻击策略和防御策略的基础上,可得原子攻击动作如表3所示,防御原子动作费用如表4所示。

表3 攻击策略信息Tab.3 Information about strategy of attacker

表4 防御策略信息Tab.4 Information about strategy of defender

通过分析表2各个漏洞的情况,通过实验室多次测试,参照CVSS评分标准,各节点之间可利用漏洞的各项属性值如表5所示。

表5 利用CVSS评价各节点之间的漏洞情况Tab.5 Vulnerability between nodes using CVSS evaluation

当黑客使用APT攻击向某个企业机构发起进攻时,首先会通过情报收集了解目标的地理位置、网络技术、人员分布等一些可利用信息;然后投放带有恶意程序的邮寄或钓鱼网站,引诱目标上钩,当攻击方控制某一台主机后,便会利用这台主机进行横向扩散,通过木马病毒或者漏洞利用提升自己的权限,获得最终目标的数据访或操作,通过图1、图2、图4可以得出APT攻击常采用的攻击路径,如图5所示。

图5 APT攻击路径示意图Fig.5 Schematic diagram of APT attack paths

从攻击图可以得出攻击方的策略:

S11:V1→V2→V4→V5,攻击方从节点V1渗透到节点V2,进而渗透到节点V4,最后渗透到V5。

S21:V1→V3→V4→V5,攻击方从节点V1渗透到节点V3,进而渗透到节点V4,最后渗透到V5。

S31:V1→V4→V5,攻击方从节点V1渗透到节点V4,最后渗透到V5。

相应防御方的策略有:

S12表示防御方对节点V2实施防御;S22表示对节点V3实施防御;S32表示对节点V4实施防御;S42表示对节点V5实施防御。

通过式(5)可以计算得到个策略的漏洞风险系数为:

其中:max q(S1*)=q(S21)=0.52;min q(S1*)=q(S31)=0.23。

本文设定核心数据的总价值value=1000,通过式(3)、(4)可以计算得出攻击方和防御方各策略的收益,得出攻防收益矩阵(ADBM)。

从上述矩阵可以得知策略(S21,S22)是一对纳什均衡,当攻击方使用S21时,有U1(S*1)≥U1(Sm1),当防御方使用S22,有U2(S*2)≥U2(Sm2),而通过节点博弈的漏洞风险计算,策略S21的漏洞风险系数计算,q(S21)为最大风险系数,所以攻击方最有可能采取策略S21对目标发起攻击,本文应采取防御策略S22:Patch FTP.rhost on SMTP Sever进行防御,通过 ADBM,可以得出策略S22取得了420最大防御收益。综合以上分析,防御策略S22为最优防御策略。

4.2 实验数据分析

通过以上仿真实验,可以得出该模型有以下优势:

1)根据以往的案例和已有的经典文献,分析APT攻击特点,在此基础上,形成APT攻击导图,分析攻击者可能的攻击策略,避免在制定防御策略时出现混乱,提高防御策略的指向性和高效性。

2)针对分布式网络覆盖范围广、节点多等特点制定了节点博弈模型,实现了对各个网络节点的风险评估,通过计算max q(S*1),得出q(S21)=0.52为最大风险系数,说明危害最大的攻击路径不一定是最大风险项,为实现主动防御提供了依据。

3)使用OAPG模型计算攻防双方理论收益,生成攻防收益矩阵,得出攻击者收益最高的攻击策略S21=420以及防御者最优的防御策略S22=420,说明投入最高的防御策略不一定能取得最好的防御效果,只有针对性的采取防御措施才能确保重要资源的相对安全。

5 结语

近年来,世界各地都出现了一系列针对不同目标的、收益颇高的网络攻击,这些攻击表明高安全,高隐藏的网路都存在被攻破的风险[19],充分说明了APT攻击的威胁之大。本文提出的博弈论的方法,跳出前人的传统思维,从攻击双方的收益出发,通过纳什均衡和节点博弈就攻防双方在经费上进行博弈,建立攻防双方的收益函数,提出了最优的防御方案。将博弈论的经典理论和对APT攻击的防御相结合,符合在网络攻防对抗中的实际经费开支问题,它从一种新的视觉去权衡APT攻击中的敌我较量,能够很好地防范APT攻击。但因为APT攻击具有系统性、复杂性、大规模性等特点,对于APT攻击的路径和攻击方式的研究还需进一步深入,本文利用双重博弈对APT攻击进行了建模,对于各个节点的博弈还需进一步细化。

猜你喜欢

博弈论攻击者漏洞
漏洞
基于贝叶斯博弈的防御资源调配模型研究
科学史上十大革命性理论
——博弈论
基于selenium的SQL注入漏洞检测方法
正面迎接批判
正面迎接批判
漏洞在哪儿
无知之幕与博弈:从“黄灯规则”看博弈论的一种实践方案
博弈论视角下的建筑工程外包道德风险
评博弈论在反垄断中的应用