一种场景化的拟态web服务器异构执行体动态调度方法与流程

文档序号:16631522发布日期:2019-01-16 06:37阅读:308来源:国知局
一种场景化的拟态web服务器异构执行体动态调度方法与流程

本发明涉及网络安全技术领域,尤其涉及一种场景化的拟态web服务器异构执行体动态调度方法。



背景技术:

web服务作为当前最重要的互联网服务承载和提供方式,是绝大多数网络攻击的发起点,漏洞的存在导致一些人或者团体利用少量资源便可以获取重要信息,威胁信息基础设施和公共服务安全,甚至危及网络秩序和社会稳定。

拟态防御在web服务中在不同层面部署功能相同的异构软硬件执行体,利用多个异构执行体执行同一请求并对响应结果进行表决,通过威胁感知的反馈结果动态调度执行体,来增大攻击者的攻击成本。但执行体调度机制给攻击者带来“测不准”效应的同时也增加了整个系统的复杂度,提升了系统的部署成本,因此制定有效的调度策略来提高执行体资源的利用率是十分有必要的。

现有的调度策略主要有两种:最大差异性调度策略和均匀随机调度策略。最大差异性调度策略就是问题执行体下线后,选择和线上执行体整体差异性最大的执行体上线调度方法。该策略在动态性和随机性方面不足,只选取最大差异性的执行体进行替换会导致线上执行体的可用组合减少,执行体的资源利用率低。均匀随机调度策略策略是问题执行体下线后,线下执行体以相同概率上线的调度方法。该策略虽然能有效实现执行体的动态随机变化,但是不能充分保证执行体之间的多样性,不利于拟态表决机制的有效利用。上述两种策略在攻击方式单一攻击强度不高的环境下效果良好,但是面对高级持续性威胁或者协同攻击时容易被攻击者摸清轮转规律,导致系统安全性降低。



技术实现要素:

为解决现有调度技术中的不足,本发明提供一种场景化的拟态web服务器异构执行体动态调度方法。通过构建攻击者和防御方之间的博弈目标函数,从而得到适用于一定攻击环境下的拟态web服务器动态调度策略,能够有效提升异构执行体的资源利用率。

本发明提供一种场景化的拟态web服务器异构执行体动态调度方法,该方法包括:

步骤1、计算线下执行体与线上执行体的整体差异值;

步骤2、统计目标场景下攻击者的类型集合l和攻击者l的攻击方式策略集合nl,得到各类型攻击者的攻击概率表pa={p1,p2,...,pl},其中l∈l;

步骤3、计算攻击者l针对任一执行体发起攻击时,攻击者和防御者分别在各种攻击方式下的收益值al和dl

步骤4、将贝叶斯-斯塔克尔伯格博弈模型映射到拟态web服务器上,构建用于求解最优调度策略的目标函数;

步骤5、将所述整体差异值和攻防双方的收益值al和dl带入所述目标函数中,得到防御者的最优混合策略x,根据所述最优混合策略x对拟态web服务器异构执行体进行动态调度。

进一步地,所述步骤1具体包括:

步骤11、计算执行体i与执行体j的差异值ωij;

ωij=cij*p(1)

其中,cij=[c0,c1,c2,...ct]表示执行体i到执行体j的软件栈各层的差异值,p=[p0,p1,p2,...pt]t表示软件栈各层差异值的加权系数,t表示拟态web服务器的执行体集合c中每个执行体的软件栈层数;

步骤12、定义执行体集合c包括s个异构执行体,随机选取d个执行体组成线上执行体集合n,剩下的(s-d)个执行体组成线下执行体集合m,根据所述差异值ωij,计算线下执行体mi和线上执行体集合n的整体差异值hin

其中,表示线下执行体mi和线上执行体集合n的软件栈各层差异性均值,表示线下执行体mi和线上执行体集合n的软件栈各层差异性方差,ρμ和ρσ分别表示均值和方差的加权系数;

步骤13、根据计算线下执行体集合m中所有线下执行体和线上执行体集合n的整体差异值

进一步地,所述步骤11具体为:

根据执行体i与执行体j的软件栈各层不同软件的共同漏洞,计算差异值cij,差异值评分为10分制,共同漏洞越少,差异值越大,差异值10表示两种软件之间没有相同漏洞。

进一步地,所述步骤3具体为:

根据漏洞评分平台对漏洞的统计和评分、攻击者l的各种攻击方式所能利用的漏洞信息、攻防双方针对攻击所花费的代价和每次攻击后攻防双方能够获得的对方信息,对攻击者l采用各种攻击方式对任一执行体发起攻击时攻守双方的收益值进行±10分制评分;

若分值为正,表示收益高于代价;若分值为负,表示损失高于收益;

其中,漏洞评分平台包括美国国家漏洞数据库、中国国家信息安全漏洞库和通用漏洞评分系统。

进一步地,所述步骤4中的目标函数具体为:

xi∈[0,1](4-4)

a∈r(4-6)

其中,x={x1,x2,…,xn}表示防御者的混合策略,xi表示线下执行体mi的上线概率;a表示所有攻击者的边际收益,al表示攻击类型为攻击者l时的边际收益,α为差异值权重因子,m是给定正数,表示攻击者l的不同攻击策略。

本发明的有益效果:

本发明提供的一种场景化的拟态web服务器异构执行体动态调度方法,通过收集具体环境下攻击者类型及其攻击方式等先验信息,利用攻击者在攻击前对防御者配置进行嗅探检测,选择最优攻击方式的机制,采取贝叶斯-斯塔克尔伯格博弈模型,通过计算每种攻击方式对于不同防御策略下攻防双方的收益值,以及异构执行体之间的整体差异值,构建目标函数使防御者通过先行优势选择最大收益,确定执行体最优动态调度策略。本发明通过攻防双方的博弈,同时考虑到拟态web服务器架构中调度和表决机制的反馈作用,将线下执行体和线上执行体的整体差异值带入到博弈目标函数中,最终得到适用于一定攻击环境下的拟态web服务器动态调度策略,能够有效提升异构执行体的资源利用率,相较于最大差异性调度策略具有更强的动态性,相较于均匀随机调度策略可进一步提升服务器性能。

附图说明

图1为本发明实施例提供的拟态web服务器的工作原理示意图;

图2为本发明实施例提供的一种场景化的拟态web服务器异构执行体动态调度方法的流程示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

在拟态防御中,防御方通过动态调度异构执行体来改变线上系统漏洞的类型,攻击者可以通过扫描和渗透等方式,来发现防御方的漏洞,两者的特征符合stackelberg寡头竞争模型,而攻击者攻击类型存在不确定性,可以建立bayesian博弈模型来量化各个攻击者的攻击类型和概率。bayesian-stackelberg博弈模型可以很好的映射拟态防御调度模型中,生成最优化的调度策略。

将bsg(bayesianstackelberg;贝叶斯-斯塔克尔伯格)博弈算法映射到拟态web防御场景中,图1为本发明实施例提供的拟态web服务器的工作原理示意图。图1中c1~cn为异构执行体,c1~cm为线上执行体,cm+1~cn为线下执行体。防御者(网站方)和多类型的攻击者与bsg中的先行者和追随者的表述一致。防御者先选择一种配置类型,例如设线上执行体集合中包括3台异构执行体,每三台异构执行体可以认为是一种组合,通过构建虚拟服务器池可以实现每一种组合的调度,这样一种组合到另一种组合的调度可以被映射为是bsg中先行者的策略。而攻击者选择的每一种攻击方式都可以被认为是bsg中追随者的策略,攻击方式根据系统的已知未修复漏洞和未知漏洞进行选择,不同攻击者的攻击方式可以重叠,能力越强的攻击者数量越少(出现的概率低)但是攻击方式越多,这些也完全符合bsg算法的要求。因此,本发明通过利用bsg模型,并创造性地结合拟态服务器特有的对执行体间差异性的要求,设计出了一种场景化的拟态web服务器异构执行体动态调度方法。

实施例一

图2为本发明实施例提供的一种场景化的拟态web服务器异构执行体动态调度方法的流程示意图。如图2所示,该方法包括以下步骤:

s101、计算线下执行体与线上执行体的整体差异值;

s102、统计目标场景下攻击者的类型集合l和攻击者l的攻击方式策略集合nl,得到各类型攻击者的攻击概率表pa={p1,p2,...,pl},其中l∈l;

s103、计算攻击者l针对任一执行体发起攻击时,攻击者和防御者分别在各种攻击方式下的收益值al和dl

s104、将贝叶斯-斯塔克尔伯格博弈模型映射到拟态web服务器上,构建用于求解最优调度策略的目标函数;

s105、将所述整体差异值和攻防双方的收益值al和dl带入所述目标函数中,得到防御者的最优混合策略x,根据所述最优混合策略x对拟态web服务器异构执行体进行动态调度。

本发明实施例提供的一种场景化的拟态web服务器异构执行体动态调度方法,通过攻防双方的博弈,同时考虑到拟态web服务器架构中调度和表决机制的反馈作用,将线下执行体和线上执行体的整体差异值带入到博弈目标函数中,最终得到适用于一定攻击环境下的拟态web服务器动态调度策略,能够有效提升异构执行体的资源利用率,相较于最大差异性调度具有更强的动态性,相较于均匀随机调度策略可进一步提升服务器性能。

实施例二

在上述实施例一的基础上,本发明提供另一种实施例,具体流程如下:

s201、计算线下执行体与线上执行体的整体差异值,主要包括以下子步骤:

s2011:计算执行体i与执行体j的差异值ωij;

ωij=cij*p(1)

其中,cij=[c0,c1,c2,...ct]表示执行体i到执行体j的软件栈各层的差异值,p=[p0,p1,p2,...pt]t表示软件栈各层差异值的加权系数,t表示拟态web服务器的执行体集合c中每个执行体的软件栈层数;

具体地,根据执行体i与执行体j的软件栈各层不同软件的共同漏洞,计算差异值cij,差异值评分为10分制,共同漏洞越少,差异值越大,差异值10表示两种软件之间没有相同漏洞。然后,在计算差异值ωij时,结合漏洞的威胁程度,根据不同层之间的漏洞威胁程度,通过加权的方法得到异构执行体之间的差异性。

s2012:定义执行体集合c包括s个异构执行体,随机选取d个执行体组成线上执行体集合n,剩下的(s-d)个执行体组成线下执行体集合m,根据所述差异值ωij,计算线下执行体mi和线上执行体集合n的整体差异值

其中,表示线下执行体mi和线上执行体集合n的软件栈各层差异性均值,表示线下执行体mi和线上执行体集合n的软件栈各层差异性方差,ρμ和ρσ分别表示均值和方差的加权系数;

s2013:根据计算线下执行体集合m中所有线下执行体和线上执行体集合n的整体差异值

具体地,异构冗余架构存在多台线上服务器,其主要目标就是实现异构性的最大化,只通过比较拟上线执行体和待替换执行体这两个执行体之间的差异性并不能有效的选择出替换最优的拟上线执行体。因为如果选择和待替换执行体差异性最大的执行体上线,那么必然会出现和线上执行体差异性小的拟上线执行体上线,这样表决模块可能会出现漏报情况,导致系统的安全性降低。因此,本发明采取对比整体差异性的方式,将线下执行体和每台线上执行体的差异性求解均值和方差,均值越大代表差异性越大,方差越小表示每种执行体之间的差异性分布越均匀,从而避免出现上述描述的表决漏报问题;并且还可以避免拟上线执行体与某原线上执行体之间因出现差异性两极分化现象而影响拟态表决结果的情况。

s202、统计目标场景下攻击者的类型集合l和攻击者l的攻击方式策略集合nl,得到各类型攻击者的攻击概率表pa={p1,p2,...,pl},其中l∈l;

s203、计算攻击者l针对任一执行体发起攻击时,攻击者和防御者分别在各种攻击方式下的收益值al和dl

具体地,本步骤主要根据漏洞评分平台对漏洞的统计和评分、攻击者l的各种攻击方式所能利用的漏洞信息、攻防双方针对攻击所花费的代价和每次攻击后攻防双方能够获得的对方信息,对攻击者l采用各种攻击方式对任一执行体发起攻击时攻守双方的收益值进行±10分制评分,即评分区间为[-10,+10],评分值取值为区间内的整数值;若分值为正,表示收益高于代价;若分值为负,表示损失高于收益;其中,漏洞评分平台包括美国国家漏洞数据库、中国国家信息安全漏洞库和通用漏洞评分系统。

此外,本发明针对的是拟态web服务器中的异构执行体只在操作系统和服务器软件层面上实现异构,因此攻击方式和攻守双方的收益跟这两层的漏洞及其危害等级和利用难度有关,例如利用漏洞影响网站可用性的攻击自然比获取敏感信息或者其他信息的攻击对攻击者的收益要高。同时,收益值也应该是场景化的,比如某些门户网站只存储了用户名、密码等非关键信息,这样其获取信息的攻击的收益就相对降低,而获取权限远程操控的攻击收益也相对提升。

本发明实施例将防御者的策略集合设为s,将攻击者的类型集合设为l,所有攻击者的策略集合设为n,攻击者l的策略集合为nl(l∈l),防御者和攻击者的收益矩阵为dl和al,给定每种攻击者的出现概率pl(al∈r,∑pl=1),那么针对所有攻击者的边际收益a,防御者的最优混合策略x可以通过分解最优bayesianstackelberg求解器(decomposedoptimalbayesianstackelbergsolver,dobss)对下列的混合整数二次规划算法(mixedintegerquadraticprogram,miqp)求解:

上述目标函数(3)通过考虑攻击者的不同攻击策略使防御者的防御收益最大化,来求解防御者的最优混合策略x。但是可以看到公式(3)中并没有考虑到执行体间的差异性问题,因此只适合于单个执行体进行调度的场景,对于dhr架构具有局限性,因此,本发明进一步将执行体之间的差异性引入到目标函数中。

在步骤s201中对执行体之间的差异性做了度量,因为通过表决等威胁机制反馈,每次需要下线的问题执行体只有一台,所以本发明可以将线上d台正常执行体作为已知不变条件,那么将有种组合方式,将这些组合设为集合q,求出所有线下执行体的整体差异性那么调度的任意线下执行体和线上执行体的差异性为对于整体策略来讲,切换执行体的预期差异性为将其加入到目标函数中,并带入影响因子α得到下面目标函数(4)。

s204、将贝叶斯-斯塔克尔伯格博弈模型映射到拟态web服务器上,构建用于求解最优调度策略的目标函数:

xi∈[0,1](4-4)

a∈r(4-6)

其中,x={x1,x2,…,xn}表示防御者的混合策略,xi表示线下执行体mi的上线概率;a表示攻击者的边际收益,al表示攻击类型为攻击者l时的边际收益,α为差异值权重因子,m是给定正数,表示攻击者l的不同攻击策略。

具体地,目标函数(4)受限于以上条件,其中(4-1)和(4-4)是指防御者选取策略xi的概率是和为1的非0实数,(4-2)式和(4-4)式指每种攻击者类型的攻击策略概率和为1,而显然针对一类攻击者的不同攻击方式而言,收益最大的攻击方式概率为1时,目标函数的收益最大,因此攻击者纯策略只有一个(4-3)式为对偶约束,目的使攻击者的收益最大化,在给定m值时,应保证m值足够大,以保证关系式(4-3)成立。通过对偶约束,同时可以发现对于攻击者来说最优的攻击方式,如果攻击者通过系统的具体漏洞进行攻击,可以通过该式综合得出最有威胁的漏洞,可以作为更新防御机制的重要参考。

拟态安全防御作为一种内生安全机制,采取的dhr(dynamicheterogeneousredundancy;动态异构冗余)架构更强调执行体之间的差异性最大化。但不难发现,如果单纯的追求差异性最大话,拟上线执行体与待替换执行体通常差异性很小,在动态性和随机性方面效果欠佳,对执行体的利用率降低。而且即使保证差异最大也难以实现完全没有共同漏洞,所以本发明设计的和攻击场景相关的调度方法,通过构建目标函数,从而得到不同攻击环境下的拟态web服务器动态调度策略,能够充分发挥拟态防御的多样性、随机性和动态性优势,有效提升系统的安全性和资源利用率。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1