首页> 中国专利> 漏洞利用成功概率计算方法及网络安全风险管理方法

漏洞利用成功概率计算方法及网络安全风险管理方法

摘要

本发明涉及漏洞利用成功概率计算方法及网络安全风险管理方法。所涉及的漏洞利用成功概率计算方法中漏洞利用成功概率来源于漏洞可利用性概率大小,网络漏洞利用成功概率计算方法考虑了漏洞可利用性概率大小随着时间动态变化的,建立静态和动态的漏洞可利用性评估指标,可以准确量化漏洞的可利用性,并提高漏洞可利用性评估结果的多样性。本发明的网络安全风险管理方法构建防护成本和攻击收益的经济学指标及指标量化方法,采用粒子群的优化算法可有效地求解最优防护策略,最终保证攻击目标节点的安全,在限定成本预算条件下有效降低了整体网络的安全风险。

著录项

  • 公开/公告号CN105681338A

    专利类型发明专利

  • 公开/公告日2016-06-15

    原文格式PDF

  • 申请/专利权人 西北大学;

    申请/专利号CN201610125022.X

  • 申请日2016-03-04

  • 分类号H04L29/06(20060101);

  • 代理机构61216 西安恒泰知识产权代理事务所;

  • 代理人史玫

  • 地址 710069 陕西省西安市太白北路229号

  • 入库时间 2023-12-18 15:41:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-02-28

    未缴年费专利权终止 IPC(主分类):H04L29/06 专利号:ZL201610125022X 申请日:20160304 授权公告日:20181030

    专利权的终止

  • 2018-10-30

    授权

    授权

  • 2016-07-13

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20160304

    实质审查的生效

  • 2016-06-15

    公开

    公开

说明书

技术领域

本发明属于计算机网络安全技术领域,具体涉及一种漏洞利用成功概率计算方法 及网络安全风险管理方法。

背景技术

计算机网络系统面临复杂的攻击事件,从本质上来说,是由于计算机及网络系统 在设计、开发、运行、维护、配置过程中存在漏洞。

网络攻击是一种复杂的多步骤过程,外部攻击者分析内部网络存在漏洞的相互关 联关系,进而发动多步攻击,使攻击者占有更多的资源,最终对攻击目标造成破坏。多步攻 击具有多阶段性、目的性、隐蔽性的特点。而传统安全防御方法,例如防火墙、入侵检测系 统,只是尽可能识别攻击行为,是一种被动式防御方法,对未知的、多阶段的、隐蔽的攻击行 为无法及时响应,这给传统的安全防御方法提出了新的挑战。

基于攻击图的网络安全风险评估方法能分析漏洞的相互关联关系和由此产生的 潜在威胁。而基于攻击图的风险评估依赖于每一个漏洞的可利用性大小。因此,对单个漏洞 可利用性的量化评估就显得极为重要。当前多数研究工作仅仅依靠通过CVSS评分来获取漏 洞的可利用性大小,而CVSS方法只考虑漏洞本身静态被攻击者利用的特征,没有考虑随着 时间的变化,漏洞利用代码可利用性和补丁可利用性都会随之动态改变。且影响漏洞可利 用性的因素很多,如何正确分配这些因素的影响权重值是漏洞可利用性量化评估的主要问 题。

当前网络安全挑战和突破口是研究主动防护新模型、新技术和新方法,通过风险 评估手段对当前安全态势进行判断,并依据判断结果实施主动安全防御机制。从理论上讲, 识别网络中所有主机的漏洞并打上补丁才可以真正解除安全隐患。然而,在实践中给漏洞 打补丁通常会导致不同的成本,在实际应用当中给所有识别的漏洞打补丁是不可行的。为 了评估和加强整体网络的安全性,通过攻击图模型模拟多步攻击步骤,建立漏洞和利用的 因果关系。在攻击图的应用中,评估当前网络或信息系统的风险,计算最优防护策略进行适 度地控制风险和攻击损失。安全管理员采取的安全防护措施一般包括修改防火墙配置、更 新软件、关闭系统服务和打补丁等。在网络安全风险管理中,每种安全防护措施都有一定的 防护成本,收益和成本如何权衡是一个复杂的问题。因此,在有限的防护成本条件下,如何 选取最优的防护策略已成为当前研究热点问题。目前基于攻击图的网络安全主动防御技术 在计算网络安全风险时,很少考虑网络攻击中存在的不确定性因素。并且以往的优化算法 没有有效地求解最优防护策略,比如贪心算法。

发明内容

针对现有技术的缺陷或不足,本发明的目的之一是提供一种漏洞利用成功概率计 算方法。

本发明所提供的漏洞利用成功概率计算方法包括:

步骤1,获取原始攻击图,所述原始攻击图中包括若干个节点和若干条有向边;

所述若干个节点中包括I个属性状态节点S,其中,I取正整数,Si∈S,i=1,2, 3,...,I;

所述若干条有向边E包括若干条漏洞利用边;

Ev∈(Spre,Spost)为任意一条漏洞利用边,Spre、Spost分别为边Ev∈(Spre,Spost)的前后 节点,Spre、Spost∈S,Spost为任意一个存在漏洞vpost的节点;

步骤2,计算所有漏洞利用边的漏洞利用成功概率,其中漏洞利用边Ev∈(Spre, Spost)的漏洞利用成功概率P(vpost)为:

P(vpost)=AV×w1+AC×w2+Au×w3+RL×w4+Pexploit×w5(1)

AV为漏洞vpost的CVSS(通用漏洞评分系统)中base属性组的访问向量,

AC为漏洞vpost的CVSS中base属性组的访问复杂度,

Au为漏洞vpost的CVSS中base属性组的认证,

RL为漏洞vpost的CVSS中temporal属性组的补丁修复等级,

AV、AC、Au、RL的取值依据CVSS中的相关指标定义;

Pexploit为漏洞vpost的代码可利用性的概率值,t为当前日期到漏洞vpost公开日期的总天数,t取正整数;

w1=0.073、w2=0.118、w3=0.191、w4=0.2361、w5=0.3819。

本发明的目的之二是提供一种贝叶斯攻击图构建方法。

本发明提供的贝叶斯攻击图构建方法包括:

步骤1,获取网络原始攻击图,所述网络原始攻击图中包括若干个节点和若干条有 向边;

所述若干个节点中包括I个属性状态节点S和N个原子攻击节点A,其中,I取正整 数,Si∈S,i=1,2,3,...,I,S1为原始攻击图的外部属性状态节点,i≥2时,属性状态节点Si或为存在漏洞的节点或为攻击收益节点,并且i≥2时,属性状态节点Si的父亲节点集合Pa [Si]和祖先节点集合均不为空;N取正整数,An∈A,n=1,2,3,...,N;

所述若干条有向边E包括若干条漏洞利用边和若干条攻击成功边;

Ev∈(Spre,Spost)为任意一条漏洞利用边,Spre、Spost分别为边Ev∈(Spre,Spost)的前后 节点,Spre、Spost∈S,Spost为任意一个存在漏洞vpost的节点,Spost的父亲节点集合Pa[Spost]不 为空,Spre∈Pa[Spost];

Ea∈(Astart,Send)为任意一条攻击成功边,Astart、Send分别为边Ea∈(Astart,Send)的前 后节点,Astart∈A,Send∈S,Send为任意一个攻击收益节点,Send的父节点集合Pa[Send]不为空, Astart∈Pa[Send];

步骤2,构建原始攻击图的贝叶斯攻击图,包括以下步骤:

步骤2.1,计算所有漏洞利用边的漏洞利用成功概率,其中漏洞利用边Ev∈(Spre, Spost)的漏洞利用成功概率P(vpost)为:

P(vpost)=AV×w1+AC×w2+Au×w3+RL×w4+Pexploit×w5(2)

式2中:AV为漏洞vpost的CVSS(通用漏洞评分系统)中base属性组的访问向量,

AC为漏洞vpost的CVSS中base属性组的访问复杂度,

Au为漏洞vpost的CVSS中base属性组的认证,

RL为漏洞vpost的CVSS中temporal属性组的补丁修复等级,

AV、AC、Au、RL的取值依据CVSS中的相关指标定义;

Pexploit为漏洞vpost的代码可利用性的概率值,t为当前日期到漏洞vpost公开日期的总天数,t取正整数;

w1=0.073、w2=0.118、w3=0.191、w4=0.2361、w5=0.3819;

步骤2.2,计算所有攻击成功边的攻击成功概率,其中任意攻击成功边Ea∈(Astart, Send)的攻击成功概率P(Astart)为:节点Astart具有漏洞信息发布、攻击工具和攻击方法时,P (Astart)为0.8;节点Astart具有漏洞信息发布和攻击方法无攻击工具时,P(Astart)为0.6;节点 Astart具有漏洞信息发布无攻击方法和攻击工具时,P(Astart)为0.2;

步骤2.3,计算所有属性状态节点的局部条件概率分布表LCPD:

(1)存在漏洞的节点Spost的LCPD函数P(Spost|Pa[Spost])为:

(2)攻击收益节点Send的LCPD函数P(Send|Pa[Send])为:

步骤2.4,计算所有属性状态节点的先验概率:

(1)S1的先验概率P(S1)=0.7;

(2)i≥2的属性状态节点的先验概率P(Si)为:

P(Si)=P(Si|Pa[Si])×Πj=1JP(Sj|Pa[Sj])---(3)

式3中,P(Si|Pa[Si])为属性状态节点Si的LCPD函数,Sj为Si的祖先节点,Pa[Sj]为 节点Sj的父亲节点集合,P(Sj|Pa[Sj])是节点Sj的LCPD函数。

本发明的目的之三是提供一种网络安全风险管理方法。

本发明所提供的网络安全风险管理方法包括:

步骤1,采用权利要求2所述方法构建贝叶斯攻击图;

步骤2,根据被监控的网络环境给出防护策略,基于防护成本和攻击收益分析,利 用粒子群算法求解最优防护策略,最终对贝叶斯攻击图实施最优防护策略:

防护策略T下任意攻击收益节点Send所属网络设备实施的防护措施为Mk,防护措施 Mk代表断开网络连接、禁用服务、打补丁或安装安全产品4类操作中的一种方式;防护策略T 为防护措施集合M={Mk|k=1,...,m}的布尔向量表示,即为:T=(T1,T2,...,Tk,...,Tm),

所述粒子群算法的适应度函数为αSG(T)+(1-α)SC(T),满足适应度函数αSG(T)+ (1-α)SC(T)取值最小,SC(T)≤B,B为网络安全管理成本预算;

贝叶斯攻击图的初始攻击收益P(Send)为攻击收益 节点Send的先验概率;G(Send)为攻击收益节点Send的攻击收益, G1为机密性损失、G2为完整性损失、G3为可用性损失、G4为权限提升,其中,机密性损失G1、完整性损失G2、可用性损失G3的取值依据CVSS中的相关指 标定义;节点Astart对应的漏洞描述信息中包含executearbitrarycode、execute arbitraryfiles、overwritearbitraryfiles、gainprivileges、obtainprivileges、 rootprivileges、administrativeprivileges和elevationofprivilege vulnerability中的一种描述字段时,G4=1,否则,G4=0;P1为机密性损失的偏好因子,P1= 100,P2为完整性损失的偏好因子,P2=75,P3为可用性损失的偏好因子,P3=50,P4为权限提 升的偏好因子,P4=25;

SG(T)为贝叶斯攻击图实施防护策略T后的攻击收益,防护措施Mk已启用时,PM(Send|Mk)表示属性状态节点 Send实施防护措施Mk后的概率;Rk为任意攻击收益节点Send实施防护措施Mk的所属操作类型 的概率影响偏好因子,R1为禁用服务类防护措施被实施后概率影响的偏好因子,R2为断开网 络连接类防护措施被实施后概率影响的偏好因子,R3为安装安全产品类防护措施被实施后 概率影响的偏好因子,R4为打补丁类防护措施被实施后概率影响的偏好因子,0<Rk≤100,Rk根据防护措施Mk取值R1、R2、R3或R4;当防护措施Mk未启用时,PM(Send|Mk)=P(Send);

SC(T)为贝叶斯攻击图实施防护策略T后的防护成本,Ck表示任 意攻击收益节点Send实施防护措施Mk的防护成本,0 <imp(asset)≤1,imp(asset)根据任意攻击收益节点Send所属网络设备的经济价值取值,经 济价值越大其取值越大;Qk为任意攻击收益节点Send实施防护措施Mk的防护成本偏好因子, Q1为断开网络连接类防护措施的防护成本偏好因子,Q2为打补丁类防护措施的防护成本偏 好因子,Q3为禁用服务类防护措施的防护成本偏好因子,Q4为安装安全产品类防护措施的防 护成本偏好因子,0<Qq≤100,Q1>Q2>Q3>Q4,Qk根据防护措施Mk取值Q1、Q2、Q3或Q4

α为攻击收益的偏好权重,0≤α≤1。

进一步,本发明的攻击收益节点Send所属网络设备存储企业商业秘密信息时,0.7 ≤imp(asset)≤1;攻击收益节点Send所属网络设备提供企业业务服务时,0.4≤imp(asset) <0.7;攻击收益节点Send所属网络设备存储个人隐私信息时,0<imp(asset)<0.4。

进一步,本发明的方法所适用网络设备包括网页服务器、邮件服务器、域名服务 器、数据库服务器、文件传输服务器、网关服务器、管理员服务器和PC机;

所述攻击收益节点Send所属网络设备为数据库服务器、文件传输服务器、管理员服 务器、网关服务器、网页服务器、邮件服务器、域名服务器或PC机时,imp(asset)相应取值为 1.0、0.9、0.8、0.7、0.6、0.5、0.4、0.3;

R1=100,R2=50,R3=30,R4=20;

Q1=100,Q2=80,Q3=60,Q4=40。

本发明的目的之四是提供一种网络安全风险管理系统。

本发明所提供的网络安全风险管理系统包括:风险识别子系统、数据存储与管理 子系统、基于MulVAL工具的攻击图生成子系统、基于贝叶斯攻击图的风险评估子系统、网络 安全风险管理子系统;

所述风险识别子系统,用以完成识别所有网络设备信息、发现网络拓扑结构、分析 主机之间的连通性、识别所有主机的漏洞信息;

所述数据存储与管理子系统,用以完成网络设备信息、网络拓扑结构、主机之间的 连通性、漏洞等数据的存储与管理;

所述基于MulVAL工具的攻击图生成子系统,用以完成将风险识别子系统获得到的 所有信息输入到MulVAL工具中,最终可视化网络原始攻击图;

所述网络原始攻击图中包括若干个节点和若干条有向边;

所述若干个节点中包括I个属性状态节点S和N个原子攻击节点A,其中,I取正整 数,Si∈S,i=1,2,3,...,I,S1为原始攻击图的外部属性状态节点,i≥2时,属性状态节点Si或为存在漏洞的节点或为攻击收益节点,并且i≥2时,属性状态节点Si的父亲节点集合Pa [Si]和祖先节点集合均不为空;N取正整数,An∈A,n=1,2,3,...,N;

所述若干条有向边E包括若干条漏洞利用边和若干条攻击成功边;

Ev∈(Spre,Spost)为任意一条漏洞利用边,Spre、Spost分别为边Ev∈(Spre,Spost)的前后 节点,Spre、Spost∈S,Spost为任意一个存在漏洞vpost的节点,Spost的父亲节点集合Pa[Spost]不 为空,Spre∈Pa[Spost];

Ea∈(Astart,Send)为任意一条攻击成功边,Astart、Send分别为边Ea∈(Astart,Send)的前 后节点,Astart∈A,Send∈S,Send为任意一个攻击收益节点,Send的父节点集合Pa[Send]不为空, Astart∈Pa[Send];

所述基于贝叶斯攻击图的风险评估子系统包括:漏洞利用成功概率计算模块、攻 击成功概率取值模块、LCPD计算模块、风险评估模块,其中:

所述漏洞利用成功概率计算模块,计算所有漏洞利用边的漏洞利用成功概率,其 中漏洞利用边Ev∈(Spre,Spost)的漏洞利用成功概率P(vpost)为:

P(vpost)=AV×w1+AC×w2+Au×w3+RL×w4+Pexploit×w5(4)

式4中:AV为漏洞vpost的CVSS(通用漏洞评分系统)中base属性组的访问向量,

AC为漏洞vpost的CVSS中base属性组的访问复杂度,

Au为漏洞vpost的CVSS中base属性组的认证,

RL为漏洞vpost的CVSS中temporal属性组的补丁修复等级,

AV、AC、Au、RL的取值依据CVSS中的相关指标定义;

Pexploit为漏洞vpost的代码可利用性的概率值,t为当前日期到漏洞vpost公开日期的总天数,t取正整数;

w1=0.073、w2=0.118、w3=0.191、w4=0.2361、w5=0.3819;

所述攻击成功概率取值模块,计算所有攻击成功边的攻击成功概率,其中任意攻 击成功边Ea∈(Astart,Send)的攻击成功概率P(Astart)为:节点Astart具有漏洞信息发布、攻击 工具和攻击方法时,P(Astart)为0.8;节点Astart具有漏洞信息发布和攻击方法无攻击工具 时,P(Astart)为0.6;节点Astart具有漏洞信息发布无攻击方法和攻击工具时,P(Astart)为0.2;

(1)存在漏洞的节点Spost的LCPD函数P(Spost|Pa[Spost])为:

(2)攻击收益节点Send的LCPD函数P(Send|Pa[Send])为:

所述风险评估模块,用以计算攻击图上所有属性状态节点的先验概率:

(1)S1的先验概率P(S1)=0.7;

(2)i≥2的属性状态节点Si,i≥2的先验概率P(Si)为属性状态节点Si与其所有祖 先节点的联合概率,先验概率P(Si)为:

P(Si)=P(Si|Pa[Si])×Πj=1JP(Sj|Pa[Sj])---(5)

式5中,P(Si|Pa[Si])为属性状态节点Si的LCPD函数,Sj为Si的祖先节点,Pa[Sj]为 节点Sj的父亲节点集合,P(Sj|Pa[Sj])是节点Sj的LCPD函数。

所述网络安全风险管理子系统包括安全防护策略管理模块、成本和收益分析模块 和最优防护策略选取模块;

所述安全防护策略管理模块,根据被监控网络环境定义防护策略T,防护策略T下 任意攻击收益节点Send所属网络设备被实施的防护措施为Mk,防护措施Mk代表断开网络连 接、禁用服务、打补丁或安装安全产品;防护策略T为防护措施集合M={Mk|k=1,...,m}的 布尔向量表示,即为:T=(T1,T2,...,Tk,...,Tm),

所述成本和收益分析模块,计算贝叶斯攻击图的初始攻击收益SG0、贝叶斯攻击图 实施防护策略T后的攻击收益SG(T)、贝叶斯攻击图实施防护策略T后的防护成本SC(T):

SG0=ΣSendSP(Send)×G(Send)---(6)

式6中:P(Send)为攻击收益节点Send的先验概率;

G(Send)为攻击收益节点Send的攻击收益,G1为 机密性损失、G2为完整性损失、G3为可用性损失、G4为权限提升,其中,机密性损失G1、完整性 损失G2、可用性损失G3的取值依据CVSS中的相关指标定义;节点Astart对应的漏洞描述信息 中包含executearbitrarycode、executearbitraryfiles、overwritearbitrary files、gainprivileges、obtainprivileges、rootprivileges、administrative privileges和elevationofprivilegevulnerability中的一种描述字段时,G4=1,否 则,G4=0;P1为机密性损失的偏好因子,P1=100,P2为完整性损失的偏好因子,P2=75,P3为 可用性损失的偏好因子,P3=50,P4为权限提升的偏好因子,P4=25;

防护措施Mk已启用时,PM(Send|Mk)表示属性状态节点Send实施防护措施Mk后的概率;Rk为任意攻击收益节点Send实 施防护措施Mk的所属操作类型的概率影响偏好因子,R1为禁用服务类防护措施被实施后概 率影响的偏好因子,R2为断开网络连接类防护措施被实施后概率影响的偏好因子,R3为安装 安全产品类防护措施被实施后概率影响的偏好因子,R4为打补丁类防护措施被实施后概率 影响的偏好因子,0<Rk≤100,Rk根据防护措施Mk取值R1、R2、R3或R4;当防护措施Mk未启用时, PM(Send|Mk)=P(Send);

Ck表示任意攻击收益节点Send实施防护措施Mk的防护成本, 0<imp(asset)≤1,imp(asset)根据任意攻击收益节点 Send所属网络设备的经济价值取值,经济价值越大其取值越大;Qk为任意攻击收益节点Send实施防护措施Mk的防护成本偏好因子,Q1为断开网络连接类防护措施的防护成本偏好因子, Q2为打补丁类防护措施的防护成本偏好因子,Q3为禁用服务类防护措施的防护成本偏好因 子,Q4为安装安全产品类防护措施的防护成本偏好因子,0<Qq≤100,Q1>Q2>Q3>Q4,Qk根据防 护措施Mk取值Q1、Q2、Q3或Q4

所述最优防护策略选取模块,基于防护成本和攻击收益分析,利用粒子群算法求 解最优防护策略:

所述粒子群算法的适应度函数为αSG(T)+(1-α)SC(T),满足适应度函数αSG(T)+ (1-α)SC(T)取值最小,SC(T)≤B,B为网络安全管理成本预算;

α为攻击收益的偏好权重,0≤α≤1。

进一步,本发明系统的攻击收益节点Send所属网络设备存储企业商业秘密信息时, 0.7≤imp(asset)≤1;攻击收益节点Send所属网络设备提供企业业务服务时,0.4≤imp (asset)<0.7;攻击收益节点Send所属网络设备存储个人隐私信息时,0<imp(asset)<0.4。

进一步,本发明系统所适用网络设备包括网页服务器、邮件服务器、域名服务器、 数据库服务器、文件传输服务器、网关服务器、管理员服务器和PC机;

所述攻击收益节点Send所属网络设备为数据库服务器、文件传输服务器、管理员服 务器、网关服务器、网页服务器、邮件服务器、域名服务器或PC机时,imp(asset)相应取值为 1.0、0.9、0.8、0.7、0.6、0.5、0.4、0.3;

R1=100,R2=50,R3=30,R4=20;

Q1=100,Q2=80,Q3=60,Q4=40。

与现有技术相比,本发明具有如下有益效果:

本发明的网络漏洞利用成功概率来源于漏洞可利用性概率大小,网络漏洞利用成 功概率计算方法考虑了漏洞可利用性概率大小随着时间动态变化的,建立静态和动态的漏 洞可利用性评估指标,可以准确量化漏洞的可利用性,并提高漏洞可利用性评估结果的多 样性。

本发明的贝叶斯攻击图构建方法考虑了网络攻击行为的不确定性因素:漏洞利用 成功概率和攻击成功概率,可更准确地评估当前网络的风险;

本发明的网络安全风险管理方法详细地构建防护成本和攻击收益的经济学指标 及指标量化方法,采用粒子群的优化算法可有效地求解最优防护策略,最终保证攻击目标 节点的安全,在限定成本预算条件下有效降低了整体网络的安全风险。

本发明的网络安全风险管理系统的风险识别子系统融合多源安全数据,确立了完 备的风险评估要素体系;基于MulVAL工具的攻击图生成子系统采用MulVAL工具生成原始攻 击图,该工具的时间复杂度为O(n2),其中n为网络中主机数,具有较高的效率和较好的可扩 展性,且易于工程实现。网络安全风险管理系统解决了网络攻击来源追溯的难题,实现了主 动防御的安全防护机制。

附图说明

图1为本发明基于贝叶斯攻击图的网络安全风险管理系统的总体架构图。

图2为一种基于模糊理论的动态漏洞可利用性分析方法的评估指标层次结构图。

图3为攻击图的概率计算。

图4为网络拓扑图。

图5为图4所示网络的攻击图。

图6为图5所示攻击图中每个攻击收益节点的攻击收益。

具体实施方式

下面结合附图对本发明的技术方案做进一步的详细说明,但不限于此。

本发明利用一种层次分析法的动态漏洞可利用性分析方法定量评估漏洞可利用 性概率大小,其方法步骤如下:

步骤1:选取漏洞可利用性评估指标.

步骤1.1:从美国国家信息安全漏洞库(NationalVulnerabilityDatabase,NVD) 的CVSS(通用漏洞评分系统)中base属性组里提取访问向量AV、访问复杂度AC、认证Au三个 静态指标,并从temporal属性组提取补丁修复等级RL一个动态指标,表1给出了这四个指标 在CVSS中的相关等级和与之对应的评分;

表1

步骤1.2:从开源漏洞数据库(OpenSourceVulnerabilityDatabase,OSVDB)的 时间属性中提取漏洞公开日期。在漏洞公开后,随着时间的推移,代码可利用性会随之动态 改变。利用公式(7)计算代码可利用性的概率大小,进而构建代码可利用性另一个动态指 标:

Pexploit=1-(bt)α;α=0.260,b=0.00161---(7)

其中,Pexploit为漏洞vpost的代码可利用性的概率值,t为当前日期到漏洞vpost公开 日期的总天数,t取正整数;

步骤1.3:建立评估指标层次结构模型,如图2所示.

步骤2:将步骤1获得的5个指标利用层次分析法分解成目标、准则、方案等层,如表 2所示:

表2

步骤3:使用发表在《计算机应用研究》期刊的文献“基于模糊理论的漏洞危害等级 评估”的层次分析法,计算方案层的5个指标对目标层漏洞可利用性相对重要性的权重向 量,表示为:W=(w1,w2,w3,w4,w5),其中,w1+w2+w3+w4+w5=1。最终计算结果分别为:w1= 0.073、w2=0.118、w3=0.191、w4=0.2361、w5=0.3819。因此,漏洞可利用性概率大小获取 方式如下:

Sore=AV×w1+AC×w2+Au×w3+RL×w4+Pexploit×w5

采用所述漏洞可利用性概率大小作为漏洞利用成功概率的来源,表示为:

P(vpost)=Sore(8)

其中,P(vpost)表示漏洞利用成功概率。

为了解释所提出的一种漏洞利用成功概率计算方法的计算过程,对一个具体漏洞 CVE-2015-0838进行计算,该漏洞描述了内存缓冲区边界内操作的限制不恰当,远程攻击者 可借助特制的封装文件利用该漏洞执行任意代码。从NVD数据库中可以获取该漏洞的详细 信息,如表3所示。

表3

CVE编号 CVE-2015-0838 访问向量 远程网络访问 访问复杂度 认证 不需要认证 发布时间 2015-03-31 补丁修复等级 官方补丁

漏洞的公开时间为2015年3月31号,假设当前日期为2015年5月31日,因此,当前日 期到漏洞公开日期的总天数为60天,根据公式(7)计算代码可利用性为:

Pexploit=1-(0.0016160)0.26=0.9352

因此,根据公式(8)计算漏洞利用成功概率为:

P(vpost)=1×0.073+0.71×0.118+0.704×0.191+0.87×0.2361+0.9352× 0.3819

=0.8538

参考图1,本发明的网络安全风险管理系统及方法如下:

步骤1:风险识别.

步骤1.1:基于OVAL漏洞扫描评估报告收集模块111采用OVAL扫描器获取网络中所 有主机的漏洞报告,并将收集到的漏洞数据存储至数据存储与管理子系统12集中管理;

步骤1.2:网络连通性分析模块112通过防火墙系统获取网络中各个主机的通信规 则,并将收集到的主机之间连通性数据存储至数据存储与管理子系统12;

步骤1.3:网络设备配置管理模块113使用ManageEngine网络拓扑管理软件获取网 络设备信息和拓扑结构,并将其存储至数据存储与管理子系统12;

步骤2:基于MulVAL工具的攻击图生成子系统13将获取到的漏洞报告转换成 Datalog数据格式,将其作为MulVAL工具的input.P输入文件,运行MulVAL工具后,输出的攻 击图信息,主要存储在节点文件VERTICES.CSV和边文件ARCS.CSV中,最终以 AttackGraph.pdf文件可视化展示攻击图,MulVAL工具的攻击图生成算法的时间复杂度为O (n2),其中n为网络中主机数,因此具有较高的效率和较好的可扩展性。

步骤3:获取基于贝叶斯的攻击图

计算该攻击图的漏洞利用成功概率P(vpost)、攻击成功概率P(Astart)、LCPD表、先验 概率P(Si)。

步骤3.1:漏洞利用成功概率计算模块141采用所述漏洞可利用性概率大小作为漏 洞利用成功概率的来源,表示为:

P(vpost)=Sore(9)

其中,P(vpost)表示漏洞利用成功概率,Sore表示漏洞可利用性概率大小。

步骤3.2:攻击成功概率取值模块142根据攻击类型对攻击成功概率P(Astart)进行 了配置,任意攻击成功边Ea∈(Astart,Send)的攻击成功概率P(Astart)为:节点Astart具有漏洞 信息发布、攻击工具和攻击方法时,P(Astart)为0.8;节点Astart具有漏洞信息发布和攻击方 法无攻击工具时,P(Astart)为0.6;节点Astart具有漏洞信息发布无攻击方法和攻击工具时,P (Astart)为0.2;

步骤3.3:LCPD计算模块143计算所有属性状态节点的局部条件概率分布表LCPD, 其获取方式如下:

(1)存在漏洞的节点Spost的LCPD函数P(Spost|Pa[Spost])为:

(2)攻击收益节点Send的LCPD函数P(Send|Pa[Send])为:

为了展示LCPD的计算过程,在图3中做了推导说明。节点S1是外部属性状态节点, 节点S2、S3和S4是属性状态节点。S4是S3、S2和S1的后继节点。漏洞利用成功概率按照公式(9) 计算,A1和A2的攻击成功概率依据攻击类型分别配置为0.2和0.8,外部属性状态节点S1的先 验概率P(S1)=0.7,S2、S3和S4的LCPD分别根据步骤3.3所述计算获得。

步骤3.4:风险评估模块144计算所有属性状态节点的先验概率:

(1)S1的先验概率P(S1)=0.7;

(2)i≥2的属性状态节点Si,i≥2的先验概率P(Si)为属性状态节点Si与其所有祖 先节点的联合概率,先验概率P(Si)为:

P(Si)=P(Si|Ancestor[Si])×P(Si|Pa[Si])×Πj=1JP(Sj|Pa[Sj])---(10)

其中,P(Si,Ancestor[Si])表示Si与其所有祖先节点Ancestor[Si]的联合概率,P (Si|Pa[Si])为属性状态节点Si的LCPD函数,Sj为Si的祖先节点,Pa[Sj]为节点Sj的父亲节点 集合,P(Sj|Pa[Sj])是节点Sj的LCPD函数。

在图3中,根据公式(10),节点S2、S3和S4的先验概率的计算过程别为:

P(S2)=P(S2,S1)=P(S2=1|S1=1)×P(S1)=0.86×0.7=0.602

P(S3)=P(S3,S1)=P(S3=1|S1=1)×P(S1)=0.39×0.7=0.273

P(S4)=P(S4,S3,S2,S1)=ΣS2,S3=1P(S4|S3,S2)·P(S3|S1)·P(S2|S1)·P(S1)=P(S4|S3=1,S2=1)·P(S3=1|S1=1)·P(S2=1|S1=1)·P(S1)+P(S4|S3=1,S2=0)·P(S3=1|S1=1)·P(S2=0|S1=1)·P(S1)+P(S4|S3=0,S2=1)·P(S3=0|S1=1)·P(S2=1|S1=1)·P(S1)=0.84×0.86×0.39×0.7+0.8×0.14×0.39×0.7+0.2×0.86×0.61×0.7=0.301

步骤4:网络安全风险管理子系统15

构建防护成本和攻击收益的指标及指标量化方法,利用粒子群算法获得最优防护 策略,对贝叶斯攻击图实施最优防护策略,最终降低整体网络的安全风险。

步骤4.1:安全防护策略管理模块(151)定义防护策略T下任意攻击收益节点Send实 施的防护措施为Mk,防护措施Mk代表攻击收益节点Send所属网络设备仅执行断开网络连接、 禁用服务、打补丁或安装安全产品4类操作中的一种方式;防护策略T为防护措施集合M= {Mk|k=1,...,m}的布尔向量表示,即为:T=(T1,T2,...,Tk,...,Tm),

步骤4.2:成本和收益分析模块152建立防护成本和攻击收益的安全指标及指标量 化方法。

(1)计算贝叶斯攻击图的初始攻击收益SG0

SG0=ΣSendSP(Send)×G(Send)

其中:P(Send)为攻击收益节点Send的先验概率;

G(Send)为攻击收益节点Send的攻击收益,其获取方式为:

G(Send)=Σg=14PgΣg=14Pg×Gg×100---(11)

G1为机密性损失、G2为完整性损失、G3为可用性损失、G4为权限提升,其中,机密性 损失G1、完整性损失G2、可用性损失G3的取值依据CVSS中的相关指标定义;节点Astart对应的 漏洞描述信息中包含executearbitrarycode、executearbitraryfiles、overwrite arbitraryfiles、gainprivileges、obtainprivileges、rootprivileges、 administrativeprivileges和elevationofprivilegevulnerability中的一种描述字 段时,G4=1,否则,G4=0;P1为机密性损失的偏好因子,P1=100,P2为完整性损失的偏好因 子,P2=75,P3为可用性损失的偏好因子,P3=50,P4为权限提升的偏好因子,P4=25;表4给出 了这4个指标相关等级和与之对应的评分。

表4

例如,攻击者利用某个软件固有的漏洞成功发生原子攻击后到达某一攻击收益节 点的机密性损失取值为0.66分,权限提升取值为1分,根据公式(11)计算相应的攻击收益为

(2)计算贝叶斯攻击图实施防护策略T后的攻击收益SG(T),其获取方式如下:

SG(T)=ΣSendSPM(Send|Mk)×G(Send)

其中,PM(Send|Mk)表示属性状态节点Send实施防护措施Mk后的概率,其获取方式如 下:

PM(Send|Mk)=P(Send)×RkΣr=14Rr---(12)

Rk为任意攻击收益节点Send实施防护措施Mk的所属操作类型的概率影响偏好因子, R1为禁用服务类防护措施被实施后概率影响的偏好因子,R1=100,R2为断开网络连接类防 护措施被实施后概率影响的偏好因子,R2=50,R3为安装安全产品类防护措施被实施后概率 影响的偏好因子,R3=30,R4为打补丁类防护措施被实施后概率影响的偏好因子,R4=20;当 防护措施Mk未启用时,PM(Send|Mk)=P(Send);

(3)计算贝叶斯攻击图实施防护策略T后的防护成本SC(T),其获取方式如下:

SC(T)=Σk=1mTkCk

其中,Ck表示任意攻击收益节点Send实施防护措施Mk的防护成本,其获取方式如下:

Ck=QkΣq=14Qq×imp(asset)×100---(13)

其中,0<imp(asset)≤1,imp(asset)根据任意攻击收益节点Send所属网络设备的 经济价值取值,经济价值越大其取值越大;当攻击收益节点Send所属网络设备存储商业机密 信息时,0.7≤imp(asset)≤1;当攻击收益节点Send所属网络设备提供企业业务服务时,0.4 ≤imp(asset)<0.7;当攻击收益节点Send所属网络设备存储个人隐私信息时,0<imp(asset) <0.4。

如图4所示,网络设备包括网页服务器、邮件服务器、域名服务器、数据库服务器、 文件传输服务器、网关服务器、管理员服务器和PC机;攻击收益节点Send所属网络设备为数 据库服务器、文件传输服务器、管理员服务器、网关服务器、网页服务器、邮件服务器、域名 服务器或PC机时,imp(asset)相应取值为1.0、0.9、0.8、0.7、0.6、0.5、0.4、0.3;

Qk为任意攻击收益节点Send实施防护措施Mk的防护成本偏好因子,Q1为断开网络连 接类防护措施的防护成本偏好因子,Q2为打补丁类防护措施的防护成本偏好因子,Q3为禁用 服务类防护措施的防护成本偏好因子,Q4为安装安全产品类防护措施的防护成本偏好因 子,0<Qq≤100,Q1>Q2>Q3>Q4,Qk根据防护措施Mk取值Q1、Q2、Q3或Q4,配置Q1=100,Q2=80,Q3= 60,Q4=40。

例如,防护措施Mk为断开文件传输服务器的internet网络连接,根据公式(13)计 算防护成本Ck

步骤4.3:最优防护策略选取模块(153),在步骤3获得的贝叶斯攻击图和网络安全 管理成本预算B的条件下,求解一个最优防护策略,使得:

1)函数αSG(T)+(1-α)SC(T)的取值最小;

2)SC(T)≤B.

其中,T=(T1,T2,...,Tk,...,Tm)表示为一组决策变量,α为攻击收益的偏好权重, 0≤α≤1。本发明的攻击收益偏好权重具体取值根据攻击收益的重要程度确定,如果其对企 业管理越重要,则α值越大。

基于粒子群的最优安全防护策略选取算法实现过程包括以下步骤:

1)定义粒子群算法中的适应度函数fitness(X)=αSG(X)+(1-α)SC(X);

2)在规模为n的种群和D维空间中,随机初始化第i个粒子初始位置Xi=(Xi1, Xi2,...,Xid,...,XiD)和速度Vi=(Vi1,Vi2,...,Vid,...,ViD),初始化最优防护策略T=(0, 0,...,0)1×D,初始化最大迭代次数K。满足:第d维的位置取值为0或1,第d维的速度取值为符 合标准正态分布的随机数,SC(Xi)≤B。其中,1≤i≤n,1≤d≤D。

则生成矩阵和

3)在第k次迭代时,将每个粒子Xi带入适应度函数求其值,其中,1≤k ≤K;

4)根据公式:

pik=Xik,iffitness(Xik)fitness(pik-1);pik-1,iffitness(Xik)>fitness(pik-1).

计算第i个粒子的局部最优位置对所有粒子来说,根据公式:

pgk=min(p1k,p2k,...,pnk)

计算全局最优位置

5)根据公式:

Vidk=wVidk-1+c1r1(pidk-Xidk-1)+c2r2(pgdk-Xidk-1)

Xidk=Xidk-1+Vidk

分别更新第k次迭代时每个粒子的速度和位置;

6)如果满足最大迭代次数K,使得最优防护策略并输出T退出;否则转向步 骤3)。

为了解释所提出的基于粒子群的最优安全防护策略选取算法的实施效果,给定网 络实验拓扑环境如图4所示。当前网络设备包括网页服务器(Webserver,WS)、邮件服务器 (Mailserver,MS)、域名服务器(DNSserver,DS)、数据库服务器(Databaseserver,DBS)、 文件传输服务器(FTPserver,FS)、网关服务器(Gatewayserver,GS)、管理员服务器 (Administratorserver,AS)和PC机,各个服务器的网络通信规则通过防火墙系统进行配 置,如表5所示。攻击收益节点Send所属网络设备为数据库服务器、文件传输服务器、管理员 服务器、网关服务器、网页服务器、邮件服务器、域名服务器或PC机时,imp(asset)相应取值 为1.0、0.9、0.8、0.7、0.6、0.5、0.4、0.3。

表5

使用OVAL的漏洞扫描器获得网络系统中存在的所有漏洞信息,如表6所示。利用 MulVAL工具生成的原始攻击图,如图5所示。

表6

根据公式(11)计算每个攻击收益节点Send的攻击收益G(Send),如图6所示。

在给定的网络环境下给出防护措施Mk,根据公式(13)和(12)分别计算各个防护措 施的防护成本Ck和实施防护措施后的概率PM(Send|Mk),如表7所示。

表7

Mk描述 CkPM(Send|Mk) M1断开DBS的网络连接 35.7 0.136 M2断开FS的网络连接 32.13 0.25 M3断开AS的网络连接 28.56 0.032 M4断开GS的网络连接 24.99 0.162 M5断开WS的网络连接 21.42 0.158 M6断开MS的网络连接 17.85 0.121 M7给DBS打漏洞CVE-2014-1466的补丁 28.6 0.054 M8给FS打漏洞CVE-2012-2526的补丁 25.74 0.1 M9给AS打漏洞CVE-2009-0692的补丁 22.88 0.012 M10给GS打漏洞CVE-2007-4752的补丁 20.02 0.065 M11给WS打漏洞CVE-2015-1635的补丁 17.16 0.063 M12给MS打漏洞CVE-2004-0840的补丁 14.3 0.049 M13禁用DBS的SQL服务 21.4 0.272 M14禁用FS的SSH/FTP服务 19.26 0.5 M15禁用AS的TCP/IP服务 17.12 0.065 M16禁用GS的TCP/IP服务 14.98 0.324 M17禁用WS的HTTP服务 12.84 0.316 M18禁用MS的SMTP服务 10.7 0.243 M19给GS安装防火墙 10 0.121 M20给GS安装入侵检测系统 10 0.121

给定网络安全管理成本预算B=100,设置攻击收益的偏好权重α=0.5,种群个数n =100。选择可用的防护措施个数NumberM=20,即决策变量T个数为防护措施个数NumberM, 因此,种群维数D=NumberM=20。设置惯性权重w=0.8,学习因子c1=c2=2,随机数r1=r2= 0.5,最大迭代次数K=100。使用本专利的基于粒子群的最优安全防护策略选取算法,获得 最优防护策略T=(0,0,0,0,0,0,0,1,0,0,0,1,1,0,1,0,1,0,0,1),对应已启用的防护措施 集合为{M8,M12,M13,M15,M17,M20},SC=99.4。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号