移动目标防御技术研究进展

2016-06-16 07:00蔡桂林王宝生王天佐罗跃斌王小峰崔新武
计算机研究与发展 2016年5期
关键词:弹性安全性

蔡桂林 王宝生 王天佐 罗跃斌 王小峰 崔新武

1(国防科学技术大学计算机学院 长沙 410073 )2(中国人民解放军95942部队 武汉 430313)(cc_cai@163.com)

移动目标防御技术研究进展

蔡桂林1,2王宝生1王天佐1罗跃斌1王小峰1崔新武2

1(国防科学技术大学计算机学院长沙410073 )2(中国人民解放军95942部队武汉430313)(cc_cai@163.com)

摘要易攻难守是当前网络安全面临的核心问题之一.移动目标防御为解决这一问题提供了一种全新思路,其核心思想是通过内部可管理的方式对被保护目标的攻击面实施持续性的动态变换以迷惑攻击者,从而增加攻击者实施成功攻击的代价和复杂度,降低其攻击成功的概率,提高系统弹性和安全性.首先对移动目标防御的基本概念加以介绍,并依据研究内容的不同对已有的研究成果进行分类;然后对每类成果加以描述、分析和总结;最后对当前研究现状进行总结,并对未来研究方向进行了展望.

关键词移动目标防御;攻击面;动态变换;弹性;安全性

随着信息技术的飞速发展,互联网一方面已经成为各国战略性关键基础设施,支撑着国家电力、交通、金融、能源等重要领域的有效运转;另一方面,互联网正在深刻影响并改变着人们的生产生活方式,孕育社会运转的新常态.因此,互联网安全受到世界各国高度重视.然而,近年来频繁曝出的重大安全事件(如 “棱镜门”[1]、心脏滴血(heartbleed)漏洞[2]、eBay数据大泄露、AS(autonomous system)前缀劫持[3]、日益严重的DDoS攻击[4]等)反复表明,互联网安全始终面临严峻挑战.

一些研究表明,互联网安全的最大问题在于整体态势的易攻难守[5-9]:1)攻击者具有时间优势来组织攻击,即攻击者可长期对攻击目标(网络设备、通信链路、基础协议等)的固有脆弱性进行反复的漏洞分析和渗透测试,直至达到最终目标;2)攻击者具有信息不对称优势来发射攻击,即攻击者只需找到一个有效攻击点即可实施攻击,而防御者则需要对所有可能出现的攻击点和攻击方式加以防护;3)攻击者具有成本优势来推广攻击,即攻击者一旦成功实施一次攻击,即可以以较低成本轻易将攻击范围扩大.究其原因,可归结为当前网络系统的确定性、静态性和同构性[5-6,8]:网络的确定性和静态性使攻击者具备时间优势和信息不对称优势,同构性则使攻击者具备成本优势,从而导致防御者始终处于被动的劣势地位.而这种被动劣势无法依靠现有防御方法来弥补[7]:1)由于人的认知有限性,常用的源代码检查机制难以保证能排除所有的漏洞;2)补丁下发通常明显滞后于攻击者对安全漏洞的利用,这一时间差为网络攻击提供了生存空间;3)识别攻击代码与感染症状机制需要判断出攻击的签名或者预先对恶意攻击进行定义,但攻击者速度快、灵敏度高且会使用简单的多态机制来持续改变攻击的签名,从而使防御方所采用的基于签名的方法在很大程度上都变得无效.

为改变网络空间中这种“易攻难守”的局面,美国政府开始重视发展 “改变游戏规则”的革命性技术以实现积极主动的网络防御,并相继出台了一系列重要纲领性文件[5-6,10-11],均着重强调针对当前网络空间所面临的实际和潜在威胁而发展“改变游戏规则”革命性技术的必要性与紧迫性.与此同时,美国国防部也开展了一系列“改变游戏规则”的研究项目,包括MORPHINATOR[12],NMC[13-14],SAFE[15],A3[16],FUZZBUSTER[17],MRC[18],ACD[19]等,旨在多个维度寻找提升系统弹性与网络安全性的方法集.

移动目标防御(moving target defense, MTD)就是美国针对防御者当前所处劣势地位而提出的一个“改变游戏规则”的网络安全发展方向[7],期望通过实施持续、动态的变化迷惑攻击者,以增加其攻击成本和复杂度,降低其攻击成功率.值得注意的是,移动目标防御不是某一种具体的防御方法,而是一种设计指导思想.这一思想可应用到被保护系统的某一属性上,衍生出多种具体的防御机制,如TALENT[20],IP address mutation[21-22],MT6D[23],ChameleonSoft[24],MAS[25],HMS[26]等(详见第2节);也可以应用到现有的安全评估或防御方法上以提高其效果,如将其应用到电力系统状态评估过程中以提高评估的安全性和准确性[27].但是由于当前此类研究极少,因此本文不做介绍.

在国内,邬江兴院士[28]则提出了拟态安全防御思想,期望通过在主动和被动触发条件下动态地、伪随机地选择执行各种硬件变体以及相应的软件变体,使得内外部攻击者观察到的硬件执行环境和软件工作状况非常不确定,无法或很难构建起基于漏洞(bug)或后门的攻击链,以达成降低系统安全风险的目的.

当前已涌现大量的移动目标防御研究成果,但国内系统介绍此类工作的文献较少,已见对移动目标防御的相关概念和发展战略进行介绍的综述文章(张晓玉等人发表的综述文章《移动目标防御技术综述》[10]),鲜见对相关技术的分析总结.

1移动目标防御技术概述

1.1移动目标防御基本概念

本节主要介绍移动目标防御研究中的4个基本概念:移动目标、移动目标防御、攻击面以及攻击面变换.其中,攻击面的概念其实早在移动目标防御概念出现之前就已被提出,前期主要用作软件研发过程中衡量系统安全性的一项重要指标[29].移动目标防御概念提出之后,则将变换(移动)攻击面看作是实现移动目标防御的一种重要方式[30-31],所有变换系统攻击面的机制均可归类为移动目标防御机制[32].因此,本节也对攻击面和攻击面变换的概念加以描述.

1.1.1移动目标及移动目标防御

对于移动目标,当前并没有一个权威的统一定义,仅在美国白宫国防安全委员会的进展报告中提到移动目标是可在多个维度上移动以降低攻击者优势并增加弹性的系统[33].对于移动目标防御,当前也不存在明确的定义,其目标是通过持续变换系统呈现在攻击者面前的攻击面,从而有效增加攻击者想要探测目标脆弱性的代价[34].2010年发布的《网络安全游戏规则的研究与发展建议》[5]中将移动目标防御的内涵描述为:期望能够创建、分析、评估和部署多样化的、随时间持续变化的机制和策略,以增加攻击者实施攻击的复杂度和成本,降低系统脆弱性曝光和被攻击的几率,提高系统的弹性.

实际上,移动目标技术是通过降低系统确定性、静态性和同构性来增加攻击复杂度从而防护一个系统的机制方法的统称[35],通过变换系统配置(广义上的配置,包括硬件平台、软件版本、地址信息、协议信息等)缩短系统某一配置属性信息的有效期,使得攻击者没有足够的时间对目标系统进行探测和对代码进行开发;或者同时降低其所收集信息的有效性,使其探测到的信息在攻击期间变得无效,以此提高攻击者收集信息的代价和复杂性,降低系统被成功攻击的概率,提高系统的抗攻击能力.

1.1.2攻击面及攻击面变换

1) 攻击面(attack surface)

系统攻击面的概念最先由Manadhata等人[36]正式提出,并站在单个系统的角度上将系统攻击面定义为攻击者可进入系统并造成潜在威胁的方式(ways)集合,即如果将一个系统的资源定义为方法(method)、通道(channel)和数据(data item)三种,那么攻击面就是系统资源的一个子集; Zhu等人[37]将攻击面定义为系统外显的可能会被攻击者用于攻击的脆弱性集合;Peng等人[38]将云服务中一个活性虚拟机实例的攻击面定义为其外显的可用资源的总额;Zhuang等人[8]站在网络的角度,认为系统攻击面由暴露在攻击者面前的系统资源(如主机上的软件、主机间的通信端口以及各组件的脆弱点)及已被侵害的可用来进入系统的网络资源共同组成.

虽然已有的移动目标防御研究中已大量使用攻击面的概念,但是已有的攻击面定义在涵盖全面性、表述精确性及通俗性上还有所欠缺,因此需要进一步对攻击面的特征加以刻画,以更好地描述移动目标防御过程.我们对系统的攻击面进行如下描述:

定义1. 攻击面参数.表示可被攻击者利用发起攻击的系统配置漏洞或属性,包括系统的软硬件配置属性漏洞,如缓冲区溢出漏洞;也包括可被攻击者利用的网络属性,如IP地址、服务端口号等.一个系统在任一种系统配置下都具有多个攻击面参数,可记为P={pi},1≤i≤n,n∈(为自然数集合),且每个参数pi都对应一个值域Ui={ui1,ui2,…,uis},s∈且s≥1.对于配置属性漏洞类攻击面参数,其值域{0,1},其中值为0表示当前配置不包含该攻击面参数,值为1表示当前配置包含该攻击面参数,应考虑将系统配置变换为防御者所提供的其他不包含该攻击面参数但提供同一功能的硬件软件实现(或操作系统),使其值变为0;对于网络属性类攻击面参数,如IP地址,其值域则为防御者所提供的多个可用地址.

定义2. 攻击面.在任一时刻,系统的攻击面由攻击面参数集合及该集合中各参数的具体取值共同确定.我们将时刻t的系统攻击面记为AS(t)={Pt,Vt},其中Pt={p1t,p2t,…,pkt},k∈,表示时刻t的攻击面参数集合,pit(1≤i≤k)则是指时刻t的某一特定攻击面参数(与定义1中的pi相对应),其值域为Ui;Vt={v1t,v2t,…,vkt},其中vit∈Ui,表示参数pit(1≤i≤k)在时刻t的具体取值.

系统攻击面具有2个性质:

① 不同的系统配置有可能存在相同的攻击面参数,即使存在,同一个攻击面参数在不同系统配置下的值域却不一定相等;

② 在移动目标防御背景下,系统的攻击面参数集合或某一攻击面参数的值会随着时间发生改变.即令t2=t1+δ,其中δ(δ>0)为防御者所定义的时间间隔值,可为定值,也可为变值.考虑2个不等式:

Pt1≠Pt2且Pt1⊄Pt2;

vit1≠vit2,则必然有Vt1≠Vt2.

不论是哪一个不等式成立,都会导致AS(t2)≠AS(t1),即系统攻击面随时间持续变化.

2)攻击面变换(attack surface shifting)

Huang等人[25]首先对移动的攻击面(moving attack surface)(即攻击面的变换过程)进行了图示化描述,但并未给出形式化定义,而后Manadhata[30]首次提出了攻击面变换的概念并定义如下:

定义3. 给定一个系统S,S的旧攻击面记为Ro,新的攻击面记为Rn,如果存在一个资源r,满足下列2个条件之一,那么就说明S的攻击面发生了变换:

1)r属于Ro但不属于Rn;

2)r既属于Ro也属于Rn,但是r在Ro中的作用大于在Rn中的作用.

该定义认为攻击面的变换要么通过更换系统资源来实现,要么通过改变某一系统资源的作用来实现,而要对资源在攻击面中的作用进行量化并不容易.

结合前面我们所提出的攻击面定义,攻击面变换可通过2种方式来实现:

① 改变Pt,即通过更改系统配置来更换攻击面参数,使得Pt′≠Pt(Pt表示当前攻击面参数集合,Pt′表示配置更改后的攻击面参数集合),这与定义3中条件1类似;

② 改变Vt,即选定某一攻击面参数pit(假设其当前值为via,via∈Ui),为其赋予一个新值vib,vib∈Ui,vib≠via,或同时选定多个不同攻击面参数pit,pjt,…(i≠j≠…),在其各自的值域Ui,Uj,…中选择一个不同于当前值的新值赋予该参数,使得Vt′≠Vt(Vt表示当前各攻击面参数的取值集合,Vt′表示对某一攻击面参数进行取值变化后的各攻击面参数的取值集合).

对攻击面进行有效的移动是增加攻击者实施成功攻击困难性和开销的一种关键途径,而从哪几个方面入手以实现有效的移动,则是首先需要解决的核心问题.麻省理工学院林肯实验室(MIT Lincoln Laboratory)[31]认为要实现有效的移动需解决3类挑战:1)移动范围(coverage),即攻击面中可移动的部分,可将其简单定义为整个攻击面中动态部分的比例;2)不可预测性(unpredictability),表示的是攻击者对系统攻击面移动信息的掌握程度;3)时效性(timeliness),即一次移动应在攻击开始之后结束之前被实施.此外,他们还指明了设计和部署移动目标技术需要考虑的其他问题,如低开销、直接代价及效用性.堪萨斯州立大学(Kansas State University)[39]则认为要实现有效的移动应从基本的3个问题入手:1)配置选择问题,即如何为移动目标防御系统选择一个新的配置使得攻击者想要侵害系统变得更加困难;2)行为选择问题,即如何选择适应性行为以实现新配置;3)时机(timing)选择问题,即何时实施适应性行为,这是实现高效防御的一个关键性因素.

这2个小组的研究工作是相通的,配置选择问题的目的是提高系统的不可预测性,选择的结果会涉及到移动范围.在已有研究中,配置选择问题及适应性行为问题一般与攻击面变换相对应,通过选择新的配置来实现攻击面参数的切换或者参数值的变化,而变换时机一般有3种:随机变换、定时变换、依据网络(安全)状态信息变换.

1.2移动目标防御主要成果分类

本文从当前已有的移动目标防御研究成果中选取了大量具有代表性的典型研究成果进行研究和分析.依据研究内容的不同,可将文中所涉及的研究成果分为2类:1)移动目标防御机制研究,研究如何通过变化系统的某一属性来实现灵活的防御;2)防御机制有效性评估及实用化研究,评估新提出机制与方法的效果,研究如何提高其效果,为后续的移动目标防御设计提供指导,使所提出机制能够在现实网络中得到更好地应用.

1.3移动目标防御与拟态安全防御

移动目标防御[5]与拟态安全防御[28]分别是美国和中国所提出的用于改变网络安全对抗现状的革命性技术,均期望能从根本上改变当前网络“易攻难守”的局面.二者之间既有联系又有区别:

1) 从整体目标来看.移动目标防御与拟态安全防御所期望达到的整体目标基本相同,均希望能够通过实施己方可控的变化来迷惑攻击者,从而能够增加攻击的难度和代价,有效降低攻击成功率.

3) 从应用场景来看.拟态安全防御是基于拟态计算的信息系统所具备的一种内在主动防御能力,也就是说,拟态安全防御依赖于拟态计算系统而存在,其应用场景依赖于拟态计算系统;而移动目标防御是一种灵活的思想,可应用于某一系统之上,也可应用于具体方法当中,其应用场景更广.

4) 从发展状态来看.拟态安全防御研究尚处于起步阶段,除了对拟态计算及拟态安全防御概念与内涵进行介绍的文献[28],暂无其他公开发表的成果,而移动目标防御研究正处于快速发展期,已涌现出大量的研究成果(详见第2~3节).

2移动目标防御机制研究

当前已有大量具体的移动目标防御机制被提出, Okhravi等人[40]依据技术在执行栈中的位置层次将现有移动目标技术分为动态数据、动态软件、动态运行环境、动态平台及动态网络5个大类.但其所提及机制的变化对象(即攻击面参数)各处于某一特定层次从而归属于这5类中的某一类,没有对变化对象涉及多个层次的机制加以描述.

在本文中,我们首先依据变化的对象是否处于同一层次(我们划分的层次结构如图1所示),将现有移动目标防御机制划分为单层移动目标防御机制和跨层移动目标防御机制.其中,单层移动目标防御机制仅有一个变化对象,或者有同属于一个层次的多个变化对象;而跨层移动目标防御机制是指该机制具有多个变化对象,且这些变化对象分属于不同层次.跨层的层次不限于图1中的3个层次,也可以是按照其他划分方法得到的层次.

Fig. 1 Taxonomy of MTD mechanisms at single layer.图1 单层移动目标防御机制

而后,依据本文所提及单层移动目标防御机制(其中包括文献[40]所提及的部分机制,也包括该文献中未分析介绍的一些机制)的特性,借鉴Okhravi等人的分类依据,我们将这些机制归类为基于软件变换的机制、基于执行环境变换的机制和基于通信参数变换的机制.如图1所示:

2.1单层移动目标防御机制研究

2.1.1基于软件变换的机制

基于软件变换(software transformations)的机制主要以软件应用为变化对象,对其实施各种变换技术,如多样化技术、等价变换技术等,在攻击者面前呈现一个不确定且不可预测的目标,从而使攻击者难以顺利实施他们的恶意行为,增加攻击者发起相应攻击的困难度,提高软件抗攻击能力.

2.1.1.1多样化变换

基于多样化变换的机制主要通过采用不同的方法产生多个功能相同但行为和特性相异的变体来交替运行,使得系统攻击面呈现出丰富的变化,达到迷惑攻击者的目的.

弗吉尼亚理工学院暨州立大学(Virginia Polyte-chnic Institute and State University, Virginia Tech)提出的ChameleonSoft[24]就是一个通过多程序变体之间的变换来进行系统攻击面转换的原型结构.具体来说,是将一个大的软件功能切分为多个小的任务,针对每个任务手动或自动产生一些功能相近但行为各异的计算变体,并在运行期间变换这些变体集来动态改变正在执行计算的软件变体的行为.由于每个变体具有不同的属性目标,如可靠性、性能、健壮性、移动性等,且在这多个变体之间进行动态切换,会使得攻击者难以捕捉到正在运行的变体的缺陷,即使捕捉到了也会快速失效,在一定程度上能够有效增加攻击者实施成功攻击的代价和复杂度,降低其攻击成功率.

Jackson等人[41]提出在编译器进行代码翻译时自动对机器代码进行多样化,创建多个功能等价、行为各异的程序变体,并以2种方式来支持所有用户:1)针对普通的家庭办公室用户,可在应用商店(app store)处安装一个多样化引擎,针对每一个下载请求自动产生一个唯一的、功能等价的应用程序变体,以产生大规模的软件多样性.由于每个用户下载的程序是唯一的,因此攻击者发起成功攻击的困难度将呈指数级增长,且针对一个用户的成功攻击无法应用到另一个用户上,能有效控制攻击的范围和影响.2)针对安全需求较高的用户,可采用多变体执行环境(multi-variant execution environment, MVEE)来同时运行多个程序变体,将同一个输入发送到所有正在运行的变体程序,同时由一个监控代理对这些变体的输出进行检测,以确定是否存在攻击.一旦检测到攻击,则立即关闭被侵害的程序变体,从而快速中止一个攻击,有效控制攻击的影响.通过对该技术进行深度性能分析并多样化一个完整的系统栈,证明了该技术在真实世界中具有良好的适用性[42].但是该方法额外引入的计算开销较大.

Christodorescu等人[43]提出了一种适用于所有应用的端到端的软件多样化方法.该方法包括静态组件和运行组件:静态组件在应用程序运行前首先识别出被所有子程序引用的实体集以及子程序进行计算的代码位置,并以语义保留的方式去重写这个应用以多样化子程序中的实体.被重写的应用调用运行组件以产生一个唯一的多样化策略,并将该策略应用到运行期间的每一个子程序,且修改相应的执行环境,以提高安全性.该方法可对一个程序多次重复实施变换,从而使得攻击者难以捕捉到正在运行的应用的缺陷,且针对不同应用的多样化策略不同,从而使得针对一个应用的攻击难以移植到其他应用之上.但是该方法的实施对应用的开发、部署和操作均有影响,因此实际部署代价较高.

Pappas等人[44]提出了一种实用的软件多样化技术,通过随机选择和应用不同的变换,如指令重组、寄存器重分配等,到被保护目标每一个实例的二进制执行文件的代码片段进行小范围的代码随机化,以破坏gadgets(正在运行的进程的可执行内存片段)的代码语义,从而使得攻击者无法保证总能找到未被改变的gadgets以实施有效的ROP攻击.该技术可随机选择和应用不同的变换到第三方应用程序的每一个实例上,且不需要改变基本程序块的位置,因此能有效增加攻击者的门槛,降低其成功攻击的概率,且所引入的额外开销比较小.但是该机制的目标是消除或概率性修改尽可能多的有效gadgets,因此仅能对ROP攻击提供概率性防御,故而可与现有其他技术相结合,以改善多样化防御效果.

SEM(symbiotic embedded machines)[45]是一种新的共存防御机制,可用于保护设备驱动程序、内核、以及用户应用程序.该机制的工作过程包括3个阶段:创建SEM、采用已有的技术对SEM和被保护程序进行变换和随机化、SEM注入(注入到被保护程序中).一旦注入过程结束,SEM将驻留在主机可执行程序中并伴随主机程序一起运行.每当SEM准备注入到一个主机程序中,就会对自身代码进行随机化变换以产生一个变体,且多个SEM可驻留在同一个软件或单个执行体的相同片段中,因此能有效产生被保护程序的大量加强型程序变体以供切换.但是由于SEM需要提取计算资源来执行自己的负载,因此会对程序性能造成影响.

Roeder等人[46]提出的Proactive Obfuscation方法通过为一个软件应用创建多个副本并周期性重启一个新副本来对抗攻击.这些副本通过语义保留的代码变换方式产生,提供同一功能,且共有的脆弱性极少.周期性重启策略限定了某一时刻该服务被侵害副本的数量,且由于2个不同副本的共有脆弱性极少,因此针对一个副本的攻击难以移植到其他副本之上,从而能够有效抑制攻击的影响,但是引入了额外的副本创建和管理开销.

2.1.1.2等价变换

Rinard[47]认为现有软件系统实际所提供的功能通常超出用户所需,且这些不必要的功能引入了更多的安全脆弱点,甚至于程序的攻击面可能就来自于用户不需要甚至不知道的那些功能,因此可对软件程序进行等价变换,即通过现有的一些成熟技术,如输入校正(input rectification)、功能切除(fun-ctionality excision)、功能替换(functionality replace-ment)、循环打孔(loop perforation)、循环内存分配(cyclic memory allocation)等,在提供用户所需服务的同时去除一些不必要的功能,从而减小系统的攻击面.这一方法可有效去除程序的部分脆弱点,缩小其攻击面,但是在系统遭受攻击时无法有效控制攻击影响及范围,提高系统弹性.

2.1.1.3其他变换方式

HMS(helix metamorphic shield)[26]通过一个多样化组件和一个修复组件逐步提升程序的抗攻击能力:时空多样化引擎(spatio-temporal diversity engine)以较高速率重置随机化密钥对初始程序进行动态的指令集随机化以实现攻击面的移动,产生动态的多样性;在攻击被检测和阻扰之后会产生一个指明脆弱性的可检测事件,以触发修复引擎(genprog repair engine)使用进化算法来创建和审查修复补丁并自动对目标进行修复以产生修复的程序变体,然后对修复后的程序变体进行多样化并加以部署.该方法使得程序的攻击面发生移动,同时不断修复攻击面,这两者之间的交互作用导致程序自动进化为一个新的程序变体,且该程序变体的脆弱性会随着时间的推移不断减少,因此能有效增加攻击者实施攻击的困难度,但是引入了大量的计算、检测及修复开销.

Vikram等人[48]针对网络爬虫提出了一种基于软件变换的防御方法NOMAD,作为现有防御网络爬虫方法的补充.NOMAD主要通过随机化每一个HTTP表单页面中的HTML组件的正确nameid 参数值(nameid表示的是HTML 组件在Web 页面与HTML表单之间的对应关系)以防止网络爬虫识别这些组件并模仿真实用户向远程服务器发送带有特定内容的请求.此外,还可以插入多种欺骗性组件来增加随机化空间的熵(entropy),降低攻击者进行暴力攻击的成功率.该方法可以通过修改Web应用源码的方式来实现,也可以中间件的方式实现,不论哪一种方式都是对用户透明的,但是由于添加了加密、解密等操作,会对应用的响应速度有所影响,而且,若插入欺骗性组件,则需要用户对其进行识别,会影响程序的可用性.

Table 1 Features of the Mechanisms Based on Software Transformations

Notes: In the mechanism called NOMAD, although multiple program variants do not exist in reality, and this mechanism generates multiple nameid parameter values of HTML elements. In this sense, NOMAD is also taken as a kind of multi-variant.

Andel等人[49]则提出利用FPGA来抵抗需跳转进入程序地址空间的攻击(如栈溢出、堆溢出等).具体来说是将一个带有已知缺陷的程序划分为无缺陷部分和有缺陷部分(主要是针对基于地址的攻击而言),让无缺陷部分的程序在传统处理器上运行,而有缺陷的部分在FPGA上实现,使得针对有缺陷部分的攻击无法展开从而提高整个程序的安全度,且由于使用的是可重配置硬件,因此可以持续将切分的程序部分装载到FPGA上运行以提供动态的适应性的软件输出,从而得到多样化的攻击空间.该方法需要改变程序的运行方式,且要求对程序所存在的缺陷非常了解并预先对程序进行划分,实用性还有待考察.

2.1.1.4基于软件变换机制小结

表1对基于软件变换的防御机制所具有的特性以及该机制正常运行所依赖的其他技术进行了归纳,可以看出,现有的基于软件变换的机制主要通过3种方式使得系统攻击面发生改变:1)采用不同方法产生多个具有同一功能但具有不同攻击面的变体来为应用软件提供多种选择;2)缩减已有的攻击面;3)用硬件辅助实现软件程序攻击面的变化.同时,在选择性采用上述3种方式来实现防御时,一些移动目标防御机制还结合了一些其他已有技术,如代码随机化(通过不同方法改变代码结构与语义)、名称随机化(在不改变语义的基础上随机改变名称代号)、攻击检测等以达到更好的防御效果.

2.1.2基于执行环境变换的机制

基于执行环境变换的机制是麻省理工学院林肯实验室(MIT Lincoln Laboratory)所提出的动态平台与动态运行环境[40]的结合体,是指变换应用运行时所需执行环境(包括软硬件、操作系统、配置文件等)配置的一类技术.依据参与变化的执行环境的数量和分布方式,可将这些机制分为基于单个执行环境的机制、基于多个集中式执行环境的机制以及基于云平台的机制.

2.1.2.1单个执行环境变换

地址空间随机化(address space randomization, ASR)[50]的基本思想是随机化目标在存储器中的位置信息,从而使得依赖于目标地址信息的攻击失效.

ASR的具体实现机制包括多种:①随机化栈基址或全局库函数入口地址,或者为每一个栈帧添加一个随机偏移量(在单个编译过程内该偏移量可为定值也可为变值);②随机化全局变量位置及为栈帧内局部变量所分配的偏移量;③为每个新栈帧分配一个不可预测的位置(如随机分配),而不是分配到下一个相连的单元[51-52].具体的随机化时机可以是程序编译期间、进程加载期间,也可以是程序运行期间[53].

指令集随机化(instruction-set randomization, ISR)[50,54]是通过对系统指令集进行特殊的随机处理来保护系统免遭代码注入攻击的一类技术.ISR通常由2种方式来实现:①在编译时对可执行程序的机器码进行异或加密操作,且采用特定寄存器来存储加密所使用的随机化密钥,然后在程序解释指令时再对机器码进行异或解密;②采用块加密来替代异或操作,如采用AES加密算法,以128 b大小的块为加密间隔尺度来加密程序代码以实现指令集随机化[55].此外,还可以在受用户控制的程序安装过程中通过使用不同的密钥来实现随机化,以完成对整个软件栈的指令集随机化,从而避免执行未授权的二进制和脚本程序[56].

数据随机化(data randomization, DR)[50]的基本思想是改变数据在存储器中的存储方式.当前已有的数据随机化机制主要是通过异或操作对不同的数据对象进行随机化操作以实现不同的防御目标: Cowan等人[57]提出将每个指针与一个随机化密钥进行异或操作后存入存储器当中,待到指针被载入寄存器中时再将其还原以防御指针失效攻击(pointer corruption attack);Cadar等人[58]提出通过静态分析为指令操作数进行等价类划分,并为每一个等价类分配一个随机掩码与相应的数据进行异或操作.一旦攻击者想要进行与分析结果不同的访存就会导致错误,从而能够抵御针对存储器错误所进行的探测攻击;Bhatkar等人[59]提出在程序初始化时对程序所包含的所有数据类型进行分析,然后针对每一个数据对象选择一个唯一的随机数来实现异或加密,且仅在数据被引用时才进行解密,以抵御相对地址攻击.

ASR,ISR,DR虽然不是近年提出,且ASR和DR已获得广泛应用,但其设计思想符合移动目标防御的基本内涵,通过采用随机化技术使得攻击者难以判断攻击目标位置,以增加攻击者实施成功攻击的复杂度和所需付出的代价,且针对一个系统的攻击方法无法简单地移植到其他系统上,能有效抑制攻击的范围和危害.

2) Evolving Computer Configuration

Fulp等人[60-61]提出了一个对现有系统配置实施进化变化以获得更安全配置的方法框架.该框架包括3个相互作用的组件:①发现组件.将计算机配置(包括操作系统配置、应用配置文件信息等)建模为染色体,作为进化算法[60]或遗传算法[61]的输入,然后执行交叉、变异等操作,产生一组新的安全度更高的配置,并将新产生的配置染色体发送到实现组件.②实现组件.包含一组虚拟机,用于实现所接收的配置染色体.③评估组件.当配置染色体在虚拟机上的部署完成之后,首先对其进行可行性评估(feasibility assessment),然后使用扫描工具(如Nessus)和预定的评分规则对染色体的安全性加以评估,并依据评估结果选择一部分染色体送往发现组件进行新一轮的进化过程,同时选择合适的配置染色体部署到主机上.该方法使得呈现在攻击者面前的系统配置不断变化,能有效迷惑攻击者,增加其实施成功攻击的成本.

2.1.2.2多个集中式执行环境变换

1) TALENT

可信动态逻辑异构系统(trusted dynamic logi-cal heterogeneity system, TALENT)[20]是一个通过借助平台多样性来提高应用生存性的系统框架.该框架允许一个正在运行的关键应用程序迁移到另外的异构平台上,且主要通过使用container(操作系统级虚拟化)和一个可移植的检查点编译器来创建虚拟运行环境,并在实现关键应用迁移时保留应用的状态(包括执行状态、打开的文件和网络连接),来保证应用所提供性能;而为避免迁移到一个正在遭受攻击的平台上,可在关键应用迁移之前采用可信赖平台模块(trusted platform module, TPM)对目标平台的安全性进行验证.此外,为了提供更好的系统弹性和抗毁性,可使用NetSPA收集相关数据来计算可达性并构建攻击图,分析和评估当前所面临的威胁等级,并确定重定位方案,然后触发TALENT来进行关键应用的迁移[62];为了更好地选择目标平台,可依据博弈论的方法在给定的平台集合中进行应用迁移目标平台的动态选择[63].

由于TALENT中不同平台的物理配置、特性有所不同,因而在随机时间间隔内进行平台的转换即可实现攻击面的转换,在一定能够程度上能够增加对关键应用程序实施成功攻击的代价;但是由于可供迁移的平台集合较小,且每个平台本身的脆弱性相对固定,若攻击者选择对平台本身而不是关键应用进行攻击,同样可使得关键应用程序的性能大幅度下降.

2) SCIT和MAS

自清洗入侵容忍(self-cleansing intrusion toler-ance, SCIT)系统[64]通过虚拟化技术创建多个初始状态完全相同的虚拟服务器(virtual server, VS)来提供同一种服务,并以轮换(rotation)方式动态随机选择和替换上线的虚拟服务器,下线的虚拟服务器则被重置为预先定义好的安全初始状态,使得一个服务器的曝光时间从几个月缩减为不超过1 min,从而增强服务器的可靠性并降低网络攻击所带来的影响.该机制已在多种类型的系统,如防火墙[65]、Web 服务器[66]、DNS[67]上加以应用验证.但是由于每个虚拟机初始配置状态完全相同,一旦攻击者探测到该状态的脆弱点仍可成功发起相应攻击.MAS(moving attack surfaces)[25]则可成功解决这一问题,其设计思想与SCIT相同,主要区别在于为提供Web服务的每一个虚拟服务器都配置一个唯一的软件集合,使得每一个虚拟服务器的初始状态都不相同从而产生多样化的攻击面.

SCIT和MAS机制中所采用的多虚拟服务器轮换机制能有效抑制攻击产生的影响范围,也可有效提升服务的生存性.但是由于需要同时配置多个虚拟机来提供同一服务,且在极短时间内即进行一次轮换,因而资源冗余度较高、管理开销较大.且轮换方式具有一定的规律性,可能会被攻击者破译,因此齐晓霞等人提出对SCIT和MAS加以改进,使用随机调度策略来决定某一时刻后端服务器群中每台服务器的即时状态以提高系统变换的不可预测性[68].

2.1.2.3云平台变换

Peng等人[38]提出了一个在云平台下的服务部署策略,期望使得所提供的云服务能够尽可能长时间抵抗攻击.该云服务可由多个虚拟机实例来提供,且将已部署了该服务的虚拟机实例称为活性的.在同一时刻,只有一部分虚拟机实例是活性的,且该服务可在这多个活性虚拟机实例之间进行迁移.为防止攻击者捕获到活性的虚拟机实例从而对其发起相应攻击,作者设计了一个概率性的服务部署策略,即在每个离散时间单元之后,一个活性虚拟机实例会决定是否将服务迁移到其所对应的实例集合当中的某一个之上,并评判迁移过程的风险,以提高服务的抗攻击能力.此外,使用风险感知机制有助于提高此移动目标防御机制的有效性.若所提供的是密集型服务或攻击者的攻击能力很强时,此带有移动目标防御的服务比静态服务能提供更好的弹性.

2.1.2.4基于执行环境变换机制小结

我们在表2中对当前已有的基于执行环境变换的防御机制所具有的特性进行了归纳(部分借鉴了麻省理工学院林肯实验室MIT Lincoln Laboratory在评估动态平台技术时所归纳的特性名称),同时对该机制正常运行所依赖的其他技术加以描述,所总结的特性含义如下:

1) 多样化(diversity).麻省理工学院林肯实验室MIT Lincoln Laboratory认为,如果一项动态平台技术能够改变应用运行平台的特性,那么该技术具有多样性.与之相似的,我们认为某一机制具有多样性是指为供防御者变换以进行防御的特性(如系统配置、平台等)配备了多个可供选择的值.

2) 多实例(multi-instance).麻省理工学院林肯实验室MIT Lincoln Laboratory所提出的多实例是指同时存在多个平台实例来为一项事务服务,而我们的多实例是指存在多个执行环境实例供防御者切换.

3) 替换技术(replacement).用新的特性值取代旧的特性值.

4) 随机化(randomization).以内部可管理的方式对特定对象进行可控的随机变化.

Table 2 Features of the Mechanisms Based on Mutative Execution Environment

“√” means the corresponding relationship between a mechanism and the four features

2.1.3基于通信参数变换的机制

网络通信过程中所涉及的参数较多,这里所指的通信参数主要包括IP地址和通信端口.

2.1.3.1IP地址和(或)端口号变换

IP地址与通信端口是实现节点间通信的基本属性,常被攻击者利用以进行信息探测、收集,因而也是最常用的移动目标防御变换对象之一.

1) DYNAT

动态网络地址转换(dynamic network address translation, DYNAT)[69]通过变化报文头中的主机标识信息来防御网络嗅探攻击.在报文被路由之前,通过DYNAT shim对发送方添加到报文头中的初始地址信息(端口和地址)进行转换(转换算法依赖于一个预先设定好的随时间变化的参数),然后发送到公共网络中.DYNAT gateway在接收到该报文之后,会对报文头域进行逆转换来获得初始的身份信息,然后对其进行正常处理并发送给接收方.该技术能有效增加攻击者窃取有效信息以映射网络并发起攻击的难度,但是对用户不透明,且该机制被设计用来保护一组部署在集中式网关后面的静态节点,通过一个接口在被保护网络与外部网络之间为所有进入和出去的报文执行地址信息翻译工作,在网络配置动态性较高的情况下,可能会出现因无法通过一个集中的网关管理所有的通信和实现节点同步而失效的情况.

2) NASR

网络地址空间随机化(network address space randomization, NASR)[70]通过在网络地址动态分配的环境中调节节点IP地址的更改频率来防御蠕虫攻击.该机制需要配置一个DHCP服务器在不同时间间隔内终止DHCP租约(lease)以实现地址随机化,地址的改变可以在节点重启时进行也可以基于定时器设置来实现.该机制需要对DHCP服务器进行修改,且该机制必须部署在具有动态地址的网络中,因此部署代价比较高.此外,该机制实现的是局域网级别的地址随机化,因此所能提供的不可预测性较低.

端口跳变(port hopping)技术主要是对服务所使用的UDPTCP端口号进行跳变,使得攻击者无法得知当前有效的服务端口号从而抵御DoSDDoS攻击.Lee等人[71]提出采用一个以系统时间、服务器与用户之间的共享私钥为变量的跳变函数来进行UDPTCP端口跳变,使得经过认证的用户因拥有密钥从而能够得到服务器当前正在使用的端口号,而恶意用户无法得知当前的有效端口号.该技术与UDP和TCP协议相兼容,不需要改变现有协议,也不需要对Internet 基础设施进行任何改变,可通过套接字通信来实现,易于实施,且能简化对恶意攻击报文的检测和过滤,但是该机制所采用的严格时间同步机制在延时和拥塞环境下适用性较低.Badishi等人[72]提出一种基于端口的配给信道(port-based rationing channel)的防御机制,在不同的信道里,通过使用伪随机函数PRF*在最近使用过的端口集合中跳变选择协议所使用的端口,使得不同的信道具有不同的端口,且每个信道在不同时刻所使用的端口也有所不同.但是该机制采用将新选择的端口信息随ACK报文传播的方式来实现信息同步,若攻击者截获了该ACK报文,即可获得通信所使用的端口信息.

网络地址跳变(network address hopping)[73]的思路是通过跳变的方式使用多个被称为信道(channel)的数据连接(data connection)来传递一个通信会话的数据流,其中,信道是由目的IP端或源端,目的端元组来定义的一个抽象,而一个通信端可由IP地址来定义,也可由IP地址和端口号来共同定义,还可以由应用标识符来定义.该机制改变了2个通信体之间的通信模式,能有效干扰和迷惑攻击者,且对用户应用完全透明,但是需要为通信的每一端都配置多个地址.

DARPA资助的APOD(application that participate in their own defense)[74]项目则通过同时采用端口和地址跳变(port and address hopping)机制来持续改变服务的IP地址和TCP端口号,使得攻击者难以识别出服务提供者的真实身份并发起攻击,从而提供以网络为中心的防御以提高应用的弹性.由于被攻击者拦截的报文中所显示的是随机地址,且该地址的有效时间较短,因而能增加攻击者实施成功攻击的代价和复杂性,且能有效控制攻击对用户的影响.但是该机制对用户不透明,需要在客户端机器上安装一个客户端组件将真实的地址和端口替换为虚假的地址和端口号,服务器端则需要在服务器局域网内或服务器主机上安装NAT网关以实现逆向映射,且该机制不改变实际的地址和端口,因此无法防御内部攻击.

由美国陆军授予雷声公司的MORPHINATOR(morphing network assets to restrict adversarial reconnaissance)[12]项目也聚焦于端口跳变和地址跳变技术,旨在研制具有“变形”能力的计算机网络原型,实现随时间变形以迷惑网络入侵者并阻止网络攻击的发生.MORPHINATOR中使用了网络机动(Cybermaneuver[75],尽力捕获、中断、拒绝、降低、摧毁或操控计算和信息资源的一种能力)这一主动式的计算机网络防御技术,通过动态更改网络的一些方面(aspects)和配置(configuration),期望使得主机和应用在一定程度上对攻击者来说变得不可检测和不可预测,以预防、延迟或阻止网络攻击,且依然可以被网络管理者所管理.

4) 服务跳变和端跳变

石乐义、贾春福等人在总结前人工作的基础上提出了服务跳变(service hopping)[76]及端跳变(end hopping)[77]的概念.实际上,服务跳变只是一个概念,并无确切定义,可将其视为端口跳变、地址跳变等技术的统称;端跳变是在端到端通信中,双方或一方按照协定伪随机地改变端口、地址、时隙、加密算法,甚至协议等信息,从而破坏攻击者的攻击和对抗干扰,实现主动式的网络防御.其主要工作包括提出了一个基于端口和地址信息的跳变机制,以及基于时间戳的同步机制,并开发了一个原型系统进行测试,证明了该策略的有效性和可行性[78].该系统所存在的缺陷在于攻击者仍然可以通过监听合法用户和服务器端的网络,通过两者之间正常的SYN报文获得端信息从而发起攻击,为此又引入了插件机制[79],但是在该插件机制中,路由器是内部服务器与外部客户端相互通信的唯一通道,成为了新的瓶颈.

5) IP地址变换

Al-Shaer等人提出了一系列的地址变换(IP address mutation)机制.首先提出的是一种应用于软件定义网(software defined network, SDN)中的地址随机变换技术OF-RHM(OpenFlow random host mutation)[21],通过OpenFlow控制器频繁地为主机分配随机虚拟IP,且由OF-switch执行真实IP与虚拟IP之间的转换,使得网络中所传输报文所带有的均为虚拟IP,以增加攻击者对特定端主机进行探测的难度.

鉴于OF-RHM在传统网络中难以部署,接着又提出了随机主机交换(random host mutation, RHM)[22].RHM的设计思想及实现方式与OF-RHM类似,主要区别在于虚拟IP分配方法和分配组件的不同:该机制使用低频变换(low frequency mutation, LFM)和高频变换(high frequency mutation, HFM)两种随机变换粒度来实现虚拟IP的分配,其中,一个低频变换间隔区间内包含多个高频变换间隔区间.在每一个低频变换间隔内,系统会为每一个主机选择一个满足多种限制条件的随机地址范围,而后在每一个高频变换间隔内,会在上一个LFM间隔所分配的地址范围内随机选择一个虚拟IP分配给主机.虚拟地址的分配由移动目标控制器(moving target controller, MTC)来执行,而真实IP与虚拟IP之间的转换则由移动目标网关(moving target gateway, MTG)来实现.

为了进一步提高变换机制所提供安全度,又提出了时空地址变换(spatio-temporal address muta-tion)[80]机制来动态变化主机-IP绑定关系.在该机制中,与主机真实IP相对应的瞬时IP(ephemeral IP,eIP)是以源标识和时间为参数来确定的,因此每一个瞬时IP仅能在特定时间间隔与另一个特定主机进行连接通信.与OF-RHM及RHM不同的是,在源网关和目的网关之间网络上传输的报文所带有的是源和目的主机的真实IP,而不是虚拟IP.

6) MT6D

MT6D(moving target IPv6 defense)[23]是在IPv6下实现的网络层移动目标防御方法,用于对抗针对特定目标的窃听、攻击和主机追踪等.在该方法中,通信双方利用各自当前地址的接口标识符(interface identifier, IID)、一个共享的对称性密钥以及系统时间,计算出下一步要使用的接口标识符并通告出去,然后使用新的接口标识符来进行通信.MT6D可在一个会话期间进行多次网络地址变化而不会中断会话[81],因此对通信性能影响不大.由于通信双方的地址持续在变化,且IPv6地址空间较大从而使得变化比较丰富,导致攻击者想要对通信双方发起攻击就必须耗费更多的资源和时间,从而增加了攻击的代价和困难度.现实中,MT6D可应用于智能网格(smart grid)中保护对等端(peer)之间的通信,同时对对等端本身提供一定的保护以免遭攻击[82];也可被应用于移动系统中以保护系统中的静态关键节点[83].但在同一时刻,路由器处要为同一个节点保存多个地址以及相应的对应关系,因此增加了一定的存储开销.此外,MT6D初始采用UDP作为其传输层协议,而UDP所创建的套接字仅能绑定在单个IP地址上,限制了MT6D在多地址情况下的适用性,因此可考虑将多宿主传输层协议,如SCTP应用到MT6D中,以改善其性能[84].

7) SDNA

SDNA(self-shielding dynamic network archi-tecture)[85]期望将现有网络技术、hypervisor技术、基于通用访问卡(common access card, CAC)的认证技术以及IPv6等多种技术以互补的方式相结合来改变网络形态以提高整体安全度.在该结构中,每一个节点的hypervisor会重写进入和离开操作系统的报文以避免泄露真实的地址,并对来自网络的每个报文加以验证,且依据验证结果提供主机级或服务级可用性,未通过验证的报文会被送往蜜罐进行检测或被丢弃.该技术对操作系统透明,且与现有网络基础设施及安全技术兼容,易于实施,可保证若没有来自用户的特有认证,操作系统就无法接入到网络中,因此能够限制攻击者收集信息并在网络中传播的能力.但是该结构要求报文在到达最终目的地之前至少穿过一个中间节点,且源节点需采用每次与一个中间节点建立安全通道的方式逐步扩散开来与目的节点之间建立安全通道,并进行数据的认证传输,开销较大且会对用户的网络操作造成影响.

8) MOTAG

MOTAG(a moving target defense mechanism against Internet DDoS attacks)[86]机制被用于帮助在线应用服务器抵御网络泛洪攻击.该机制在被保护服务器周围部署一组代理节点(proxies),且为每一个认证用户分配一个活动代理(working proxy)来转发用户与服务器之间的数据流量以保证向用户提供正常的在线服务.当检测到存在攻击后,则进行代理转换(proxy shuffling),即使用新的后备代理节点取代被攻击的代理节点,并将原代理节点上的用户迁移至新代理节点上.由于应用服务器的地址对任意用户都保密,即使是认证用户也仅知道为其所分配活动代理的IP地址,从而避免了不必要的信息泄露,且代理节点会依据认证服务器传送过来的信息对所接收用户流量进行过滤,因此能有效防御外部攻击者;若存在内部攻击者,通过代理转换可逐步将攻击者集中至特定的代理上,从而最小化攻击影响.但是MOTAG只有在检测到攻击之后才进行代理转换操作,因此必须与攻击检测机制配套使用.

9) 其他地址变换方法

Albanese 等人[87]描述了一种在MANETs(mobile ad hoc networks)中通过周期性改变网络节点的虚拟身份以增加攻击者不确定性、增强网络健壮性的方法.为了维护合法用户之间的通信,需要对网络层进行以下修改:①引入一个翻译服务,将虚拟身份映射到真实身份;②引入一个更新协议,在所有合法用户之间传递用户虚拟身份的更新信息,以降低通信中断率和报文丢失率;③引入一个保证合法用户能安全接入网络的机制,该方法需要对网络层进行大量修改,部署代价较高.

2.1.3.2变换通信参数机制小结

表3从变换模式、参与变换的参数以及该机制正常运行所依赖的其他技术3个方面对本节所介绍的基于通信参数变换的机制进行总结分析,其中,变换模式主要有2种:

1) 跳变(hopping).通信的双方都完全了解一方或双方的跳变信息,通信过程不一定需要借助第三方支持.采用跳变的机制使得攻击者难以预测通信双方在某一特定时刻所使用的信息,且被拦截的报文中所携带的信息仅在短期内有效,因而总能有效降低攻击者窃取信息的能力,增加其实施成功攻击的代价和难度,降低攻击成功率,提高系统的弹性;而机制的性能则会受到同步精度以及跳变图样信息(一方或双方的跳变规律信息)安全性的影响.

Table 3 Features of the Mechanisms Based on Mutative Communication Parameter

Notes: In the mechanism called MTD-MANETs, the virtual identity of legitimate nodes rather than IP address changes dynamically. However, as the virtual identity is used for communication between network nodes, we still take the moving parameter as IP address.

2.2跨层移动目标防御机制研究

跨层移动目标防御机制可在多个层次选择变化对象进行同时性变化,使得系统变换更加复杂,从而能够有效迷惑攻击者,增加其实施成功攻击的困难度及所需耗费的资源,但是同时会让系统的管理开销、资源开销增大,也会给系统的性能带来影响.当前已有的研究包括:

1) 网络机动指挥官(network maneuver commander, NMC)[13-14]是雷声公司开发的网络指挥控制系统的研究模型,通过持续地提前进行网络组件的机动以提高网络在被侵害环境下的弹性.NMC可依据网络中的威胁信息对一个系统分属于多个层次的多种资源,包括路径、端口、应用平台、虚拟平台、应用及其数据和运行环境、协议、操作系统、配置信息、地址信息等进行机动变换,并通过使用随机化算法依据多样性、地理目的地以及移动间隔这3类信息来进行机动位置的选择,同时考虑系统的威胁等级信息、安全区域(security zone)的限制等对这3类信息的影响.此外,NMC还实现了欺骗功能,当一个应用机动到新的位置之后,原先位置上的那个应用可被清除或被保留以实现蜜罐功能,以隔离、保留、监测和欺骗可疑的应用与用户.

2) MUTE(mutable networks)[88]通过采用2种随机技术使得网络可以随机动态地更改它的配置,而同时保留网络操作的需求和完整性,以限制攻击者扫描、发现、识别和定位网络目标、进行网络映射并发起DoS攻击和创建botnets结构的能力:①随机地址跳变技术(random address hopping),频繁为网络主机重分配与真实IP地址相独立的随机虚拟IP地址用于路由(随机IP地址的选择是通过使用一个crypto-based函数及一个secret random key来实现的,以此来保证不可预测性及全局配置的同步性);②随机指纹技术(random finger printing),拦截主机的响应信息并进行修改以最大化熵(entropy),并给出一个虚假的操作系统和应用身份.但是该结构尚处于设计阶段,有很多关键研究问题尚需解决,如快速性和不可预测性、透明性、可部署性、可扩展性等.

3) Casola等人[89]提出了一个分层的移动目标防御体系,通过在网络的2个不同体系结构层:安全层(security layer)和物理层(physical layer)上进行细粒度的重配置来提高系统总的安全等级,保护资源受限的分布式设备.其中,安全层的重配置是在特定的性能与能耗限制下,通过切换满足不同安全需求的不同密码系统来实现;而物理重配置则通过切换为节点配备的不同版本固件来实现.这种重配置可以是反应式的,即系统感知或检测到了一个威胁或有了新的安全需求从而进行重配置,也可以是主动的,即系统周期性进行重配置以降低每种配置的曝光时间.这2个层次的重配置可提供不同级别的安全性,实现灵活的防御,但是因为固件较贵,因而部署代价较高,且频繁的切换对分布式节点的能耗影响较大.

4) Corbett等人[90]设计的对抗无线网络中智能干扰攻击(intelligent jamming attacks)的移动目标防御方法在3个层次上进行变换:①服务器多样化(server diversity).使用一组虚拟Web服务器为用户提供相同的内容,其中每一个虚拟机均采用不同的Web 服务器软件和操作系统的组合,且持续在不同服务器配置之间进行变换以降低攻击者探测到某一虚拟机脆弱性的概率.②调制编码机制迷惑(modulation and coding scheme obfuscation).周期性重分配调制编码机制(modulation and coding scheme, MCS)索引值,且在发送方采用一种接收方已知的方式来对帧头中的MCS索引值进行迷惑(obfuscate)操作,以降低攻击者所采集信息的有效性.③调制重映射(modulation remapping).周期性改变逻辑比特(bit)与物理符号之间的映射方式,即通过使用新的比特-符号映射(bit-to-symbol mappings)来修改正交调幅(quadrature amplitude modulation, QAM)符号,以支持物理层多样性.该体系中多个层次所采用防御方法的跨层交互使得可以基于其他层的信息来调整某一层的移动目标防御行为以提供更好的弹性,但这种协议灵活性移动目标防御方法会给网络带来复杂性和开销,且有可能损害合法用户的可用性.

3防御机制有效性评估及实用化研究

3.1防御机制有效性评估

移动目标防御有效性评估是移动目标防御系统设计中的一个重要部分,它的主要作用在于评估、比较防御机制的有效性,为后续的移动目标防御设计提供一定的参考与指导.当前常用的方法包括模拟、理论分析、模型分析以及这3种方法当中任意2种或3种方法的混合.

1) 基于模拟方法的评估

Zhuang等人[8]首先提出可采用基于模拟的方法来研究移动目标防御机制的有效性,通过使用NeSSi2创建一个模拟网络,且随机改变网络节点的一些属性(从角色到IP地址),并周期性发动攻击试图破坏一个任务来判断攻击成功率与不同防御设置之间的关系.

2) 基于理论分析的评估

Evans等人[50]则采用理论分析的方法分析了动态多样化技术(如ASR,ISR,DR)对防御规避攻击(circumvention attack)、副本攻击(deputy attack)、暴力攻击(brute force and entropy reduction attack)、嗅探攻击(probing attack)以及增量攻击(incremental attack)的效果.Han等人[91]提出用网络传播动力学理论对能改变攻防结构、能改变攻防能力以及能同时改变攻防结构和攻防能力的3类移动目标防御技术进行评估,说明了这些机制的有效性.

3) 基于模型分析的评估

Zhuang等人[92]提出了一个分析模型来简单计算在一个有部分节点采用移动目标防御机制(如虚拟机重置替换)的网络中,外部节点侵害网络内部一个特定节点的概率,使得系统设计者能比较不同设计参数的作用,从而最大限度地保护关键节点.

Carroll等人[93]通过瓮模型分析网络地址变换(network address shuffling)技术对嗅探攻击的防御效果.通过部署2种极端的变换策略,静态地址(即无变换)以及每次嗅探后都进行变换,发现攻击者的成功率主要与变换的地址空间大小(network size)、每次发出的嗅探数量、网络中的脆弱节点数量以及变换频率这4个因素有关,并分析发现变换技术仅能为带有少量脆弱节点的网络提供一定保护,且在实际中使用变换技术的代价很高.

Luo等人[94]则采用瓮模型分析端口跳变技术对侦察攻击的防御能力.通过部署2种极端的端口跳变策略,静态端口(即无跳变)以及完美端口跳变(即随机改变连接到服务的端口号),发现攻击成功率取决于端口池的大小、探针的数量、易受攻击的服务号和跳变频率.理论分析结果表明,端口跳变能有效提高应对侦察攻击的安全性能,如果系统中只有少量易被攻击的服务且端口池大小较大,端口跳变是一种可接受的防御方法.

Xu等人[95]在总结前人工作的基础上,提出了一个3层模型来比较不同移动目标防御机制的有效性.第1层是程序状态机(program state machine,PSM),用于捕获单个程序的环境信息以表征攻击如何侵害该程序;第2层是系统状态机(system state machine, SSM),用于模拟不同程序间的交互,其中,SSM的不同状态表示对系统不同组件的损害.该模型还提供不同的SSM变体并可在这些变体之间进行切换以实现对不同移动目标机制有效性的评估;第3层是评估状态机(evaluation state machine, ESM),用于描述整个系统所受到的损害,并显式描述不同移动目标防御机制组合如何减轻攻击的损害.

4) 基于混合方法的评估

Okhravi等人[96]开发了一个模型对动态平台技术的有效性进行量化.他们首先对典型动态平台技术的4个特性进行描述,然后以TALENT[20,97](详细描述见2.1.2.2节)为例,通过模拟实验来分析这些特性对系统所提供安全性的影响,并在此基础上提出了一个通用概率模型预测某一攻击想要侵害一个系统所需时间的期望值,以此来量化动态平台技术安全性.

Clark等人[32]对基于欺骗的MTD方法的有效性进行了研究和分析.基于欺骗的MTD方法主要是通过在网络中引入大量的欺骗(虚假)节点,且为每一个欺骗节点赋予一个合法IP地址同时配置简化的通用网络协议,并对真实节点和欺骗节点的IP地址均进行随机化,来降低真实节点被识别、被攻击的概率.本文首先描述了攻击者与单个节点之间的交互,并分析了虚假节点掩饰真实节点的有效性.而后使用MATLAB以及通过NMAP在现实中所收集的数据进行了模拟实验,验证了分析结果的正确性,从而证明了基于欺骗的MTD方法的有效性.

3.2防御机制实用化研究

实用化研究是一个机制在现实世界中得以实际应用的基础与前提,在移动目标防御研究领域也不例外.目前,现有的相关研究非常少.

在基于软件变换的防御方式下,向二进制程序中插入垃圾指令(garbage instructions)是对抗代码复用攻击的一种有效防御方式,但是同时,这种方式会导致程序的执行变慢,损害程序的性能.Murphy等人[98]提出使用软件设置(software profiling)的方式在保持高度安全性的同时通过变化垃圾指令插入到二进制程序中任意指定位置的概率以求达到最优化从而降低开销.

在移动目标防御背景下,不仅是防御者,攻击者也会调整自己的策略以尽量达到自己的攻击目标,这会导致防御者对攻击者所知有限从而影响防御决策.Zhu等人[99]提出2个迭代的强化学习算法帮助防御者在对攻击者所知有限时进行最优防御:当攻击者的探测速率(exploitation rate)逐渐降低时,采用适应性的强化学习算法,依据本轮防御所得收益与上一轮防御收益之间的大小关系来决定在下一轮防御中是否需要变换防御行为;当攻击者的探测速率不是逐渐缩小时,则采用强健的强化学习算法,即防御者对每一轮的系统性能进行评估,并对之前所有的性能值进行比较,且判定出能最小化历史集中最大性能值的行为集合,而后以一定的概率从中随机选择一个行为作为下一轮防御行为.

一个机制能够在实际网络中广泛部署应用,必须具有良好的性能、易于改进与扩展、与现有网络与设备良好兼容等特性.因此,对机制的实用性加以研究具有重要的实际意义,而现有研究极少,因此应在后续加强该方向的深入研究.

4总结与展望

网络安全形势的日益严峻,现有防御方法的不足,使得人们一直在探索如何构建安全的网络,实现安全的通信.移动目标防御这一“改变游戏规则”的革命性技术一经提出,就得到学术界和企业界的重视,并涌现出了大量的研究成果.本文在对移动目标防御的基本概念介绍的基础上,将已有的移动目标防御研究划分为移动目标防御机制研究、机制有效性评估和实用化研究2个类别,并对每一类研究成果进行了描述和分析,得到一些初步的结论.

我们认为,对移动目标防御的理解应体现在6个方面:

1) 目标的变化性.这是实现移动目标防御的基础,现有网络配置及特征的静态性是网络攻击泛滥的原因之一.因此,打破攻击者所依赖的这一特征,让被保护目标“移动”起来,使其在攻击者面前呈现出丰富的攻击面变化,是移动目标防御的核心所在.

2) 变化的可管理性.攻击面的变化性必须以一种内部可管理的方式来实施,才能在进行主动防御的同时保证任务的连续性以及系统的功能与性能.

3) 变化的持续性.网络的确定性和静态性是攻击者成功实施攻击的有利优势,且攻击者不会停止其对特定目标的探测、分析等工作,因此,要达到较好的防御效果,就必须进行持续性的变化,提高攻击者所收集信息的失效率,降低其攻击成功率.

4) 变化的快速性.攻防双方的对抗就像一场军备竞赛,都希望能够追赶上对方并领先对方一步以实现自己的目标.移动目标防御通过移动系统的攻击面以实现防御,这种移动必须要快,才能让攻击者所收集的信息或发起的攻击快速失效,保证防御的有效性.

5) 变化的多样性.变化的多样性既要考虑变换方式的多样性,也要考虑攻击面参数值域的多样性,才能从多个维度提高系统的安全性与弹性.

6) 变化的难以预测性.难以预测性是移动目标防御技术能够增加攻击者攻击难度、降低其攻击成功率、提高系统弹性和安全性的关键所在.现有技术中的实现方式通常是将多样性与随机性相结合[39],其中,多样化是基础,它意味着需为系统提供一个大的可用配置空间;而随机性则是要最大化使用这个配置空间,是影响不可预测性的关键.

对于现有研究成果,尽管我们努力试图发现各类研究、各种机制技术之间的关联,努力分析其优长与特点,但由于关于移动目标防御的研究正方兴未艾,相关研究呈现出百花齐放的态势,以我们当前的认知,有些相关的研究尚难以用统一的标准加以分析比较,我们将密切跟踪有关的研究进展,以期能有更加全面深入的了解.由于移动目标防御技术仍处于快速发展阶段,虽然已有大量具体防御机制被提出,但是其中一些重要研究方向虽已初有涉及,却仍尚未深入开展,如采用移动目标防御思想提高传统静态防御方法的效果、防御机制的实用化研究等,因此仍需进行更加深入的研究.此外,还有许多其他研究方向尚未涉及,如移动目标防御机制的控制与变化研究、效能研究、跨层优化的移动目标防御系统设计研究等,这些都将成为未来研究的热点.

参考文献

[1]Wikipedia. PRISM[EBOL]. [2015-08-10]. https:en.wikipedia.orgwikiPRISM_(surveillance_program)

[2]Synosys. The heartbleed bug[EBOL]. [2015-02-20]. http:heartbleed.com

[3]Liu Yujing, Peng Wei, Su Jinshu. A study of IP prefix hijacking in cloud computing networks[J]. Security and Communication Networks, 2014, 7(11): 2201-2210

[4]Zhang Jing, Hu Huaping, Liu Bo. Robustness of RED in mitigating LDoS attack[J]. KSII Trans on Internet and Information Systems (TIIS), 2011, 5(5): 1085-1100

[5]Nitrd. Cybersecurity game-change research & development recommendations[EBOL]. [2014-03-21]. http:www.nitrd.govpubsCSIA_IWG_%20Cybersecurity_%20GameChange_RD_%20Recommendations_20100513.pdf

[6]Executive Office of the President. Trustworthy cyberspace: Strategic plan for the federal cybersecurity research and development program[EBOL]. [2014-03-24]. http:www.whitehouse.govsitesdefaultfilesmicrositesostpfed_cybersecurity_rd_strategic_plan_2011.pdf

[7]Jajodia S, Ghosh A K, Swarup V, et al. Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats[M]. Berlin: Springer, 2011

[8]Zhuang Rui, Zhang Su, Deloach S A, et al. Simulation-based approaches to studying effectiveness of moving-target network defense[COL]Proc of National Symp on Moving Target Research. 2012: 1-12. [2014-06-10]. http:people.cis.ksu.edu~sdeloachpublicationsConferenceMTD-MTR_Symposium_2012.pdf

[9]Zhuang Rui, Zhang Su, Bardas A, et al. Investigating the application of moving target defenses to network security[C]Proc of the 6th Int Symp on Resilient Control Systems (ISRCS). Piscataway, NJ: IEEE, 2013: 162-169

[10]Zhang Xiaoyu, Li Zhenbang. Overview on moving target defense technology[J]. Communications Technology, 2013, 46(6): 111-113 (in Chinese)(张晓玉, 李振邦. 移动目标防御技术综述[J]. 通信技术,2013, 46(6): 111-113)

[11]White House. Cyberspace policy review: Assuring a trusted and resilient information and communications infrastructure[EBOL]. [2014-03-24]. http:www.whitehouse.govassetsdocumentsCyberspace_Policy_Review_final.pdf

[12]McCaney K. Morphinator[EBOL]. [2014-04-06]. http:gcn.comarticles20120803army-morphinator-cyber-maneuver-network-defense.aspx

[13]Beraud P, Cruz A, Hassell S, et al. Cyber defense network maneuver commander[C]Proc of 2010 IEEE Int Carnahan Conf on Security Technology (ICCST). Piscataway, NJ: IEEE, 2010: 112-120

[14]Beraud P, Cruz A, Hassell S, et al. Using cyber maneuver to improve network resiliency[C]Proc of MILCOM 2011. Piscataway, NJ: IEEE, 2011: 1121-1126

[15]Chiricescu S, Dehon A, Demange D, et al. SAFE: A clean-slate architecture for secure systems[C]Proc of 2013 IEEE Int Conf on Technologies for Homeland Security (HST). Piscataway, NJ: IEEE, 2013: 570-576

[16]Pal P, Schantz R, Paulos A, et al. A3: An environment for self-adaptive diagnosis and immunization of novel attacks[C]Proc of the 6th Int Conf on Self-Adaptive and Self-Organizing Systems Workshops (SASOW). Piscataway, NJ: IEEE, 2012: 15-22

[17]Musliner D J, Rye J M, Thomsen D, et al. Fuzzbuster: Towards adaptive immunity from cyber threats[C]Porc of the 5th IEEE Conf on Self-Adaptive and Self-Organizing Systems Workshops (SASOW). Piscataway, NJ: IEEE, 2011: 137-140

[18]DARPA. Mission-oriented resilient clouds[EBOL]. [2014-04-06]. http:www.darpa.milOur_WorkI2OProgramsMission-oriented_Resilient_Clouds_(MRC).aspx

[19]DARPA. Active cyber defense[EBOL]. [2014-04-06]. http:www.darpa.milOur_WorkI2OProgramsActive_Cyber_Defense_(ACD).aspx

[20]Okhravi H, Comella A, Robinson E, et al. Creating a cyber moving target for critical infrastructure applications using platform diversity[J]. International Journal of Critical Infrastructure Protection, 2012, 5(1): 30-39

[21]Jafarian J H, Al-Shaer E, Duan Qi. OpenFlow random host mutation: Transparent moving target defense using software defined networking[C]Proc of the 1st Workshop on Hot Topics in Software Defined Networks. New York: ACM, 2012: 127-132

[22]Al-Shaer E, Duan Qi, Jafarian J H. Random host mutation for moving target defense[G]Security and Privacy in Communication Networks. Berlin: Springer, 2013: 310-327

[23]Dunlop M, Groat S, Urbanski W, et al. MT6D: A moving target IPv6 defense[C]Proc of MILCOM 2011. Piscataway, NJ: IEEE, 2011: 1321-1326

[24]Azab M, Hassan R, Eltoweissy M. ChameleonSoft: A moving target defense system[C]Proc of the 7th Int Conf on Collaborative Computing: Networking, Applications and Worksharing (CollaborateCom). Piscataway, NJ: IEEE, 2011: 241-250

[25]Huang Y, Ghosh A K. Introducing diversity and uncertainty to create moving attack surfaces for Web services[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 131-151

[26]Le Goues C, Nguyen-Tuong A, Chen Hao, et al. Moving target defenses in the helix self-regenerative architecture[G]Moving Target Defense Ⅱ: Application of Game Theory and Adversarial Modeling. Berlin: Springer, 2013: 117-149

[27]Rahman M A, Al-Shaer E, Bobba R B. Moving target defense for hardening the security of the power system state estimation[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 59-68

[28]Wu Jiangxing. Meaning and vision of mimic computing and mimic security defense[J]. Telecommunications Science, 2014, 30(7): 2-7 (in Chinese)(邬江兴. 拟态计算与拟态安全防御的原意和愿景[J]. 电信科学, 2014, 30(7): 2-7)

[29]Manadhata P. An attack surface metric[D]. Pittsburgh, Pennsylvania: Carnegie Mellon University, 2008

[30]Manadhata P. Game theoretic approaches to attack surface shifting[G]Moving Target Defense Ⅱ: Application of Game Theory and Adversarial Modeling. Berlin: Springer, 2013: 1-13

[31]Hobson T, Okhravi H, Bigelow D, et al. On the challenges of effective movement[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 41-50

[32]Clark A, Sun K, Poovendran R. Effectiveness of IP address randomization in decoy-based moving target defense[C]Proc of the 52nd Annual Conf on Decision and Control (CDC). Piscataway, NJ: IEEE, 2013: 678-685

[33]The WhiteHouse National Security Council. Cybersecurity progress after president Obama’s address[EBOL]. [2014-03-10]. http:www.whitehouse.govadministrationeopnsccybersecurityprogressreportsjuly2012

[34]NITRD Subcommittee. National cyber leap year summit 2009 co-chairs’ report[EBOL]. [2014-06-25]. https:www.nitrd.govnitrdgroupsindex.php?title=Category:National_Cyber_Leap_Year_Summit_2009

[35]Okhravi H, Rabe M A, Mayberry T J, et al. Survey of cyber moving target techniques, 1166[R]. Lexington, Massachusetts: MIT Lincoln Laboratory, 2013

[36]Manadhata P, Wing J. A formal model for a system’s attack surface[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 1-28

[37]Zhu Quanyan, Baar T. Game-theoretic approach to feedback-driven multi-stage moving target defense[G]Decision and Game Theory for Security. Berlin: Springer, 2013: 246-263

[38]Peng Wei, Li Feng, Huang C T, et al. A moving-target defense strategy for cloud-based services with heterogeneous and dynamic attack surfaces[C]Porc of 2014 IEEE Int Conf on Communications (ICC). Piscataway, NJ: IEEE, 2014: 804-809

[39]Zhuang Rui, Deloach S A, Ou Xinming. Towards a theory of moving target defense[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 31-40

[40]Okhravi H, Hobson T, Bigelow D, et al. Finding focus in the blur of moving-target techniques[J]. Security & Privacy, 2014, 12(2): 16-26

[41]Jackson T, Salamat B, Homescu A, et al. Compiler-generated software diversity[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 77-98

[42]Jackson T, Homescu A, Crane S, et al. Diversifying the software stack using randomized NOP insertion[G]Moving Target Defense Ⅱ: Application of Game Theory and Adversarial Modeling. Berlin: Springer, 2013: 151-173

[43]Christodorescu M, Fredrikson M, Jha S, et al. End-to-end software diversification of Internet services[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 117-130

[44]Pappas V, Polychronakis M, Keromytis A D. Practical software diversification using in-place code randomization[G]Moving Target Defense Ⅱ: Application of Game Theory and Adversarial Modeling. Berlin: Springer, 2013: 175-202

[45]Cui A, Stolfo S J. Symbiotes and defensive mutualism: Moving target defense[G]Moving Target Defense:Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 99-108

[46]Roeder T, Schneider F B. Proactive obfuscation[J]. ACM Trans on Computer Systems, 2010, 28(2): 1-54

[47]Rinard M. Manipulating program functionality to eliminate security vulnerabilities[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 109-115

[48]Vikram S, Yang Chao, Gu Guofei. NOMAD: Towards non-intrusive moving-target defense against Web bots[C]Proc of 2013 IEEE Conf on Communications and Network Security (CNS). Piscataway, NJ: IEEE, 2013: 55-63

[49]Andel T R, Whitehurst L N, Mcdonald J T. Software security and randomization through program partitioning and circuit variation[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 79-86

[50]Evans D, Nguyen-Tuong A, Knight J. Effectiveness of moving target defenses[G]Moving Target Defense: Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 29-48

[51]Forrest S, Somayaji A, Ackley D H. Building diverse computer systems[C]Proc of the 6th Workshop on Hot Topics in Operating Systems. Piscataway, NJ: IEEE, 1997: 67-72

[52]Chew M, Song D. Mitigating buffer overflows by operating system randomization, CMU-CS-02-197[R]. Pittsburgh, Pennsylvania: Carnegie Mellon University, 2002

[53]Alexander S. Improving security with homebrew system modifications[J]. Login, 2004, 29(6): 26-32

[54]Kc G S, Keromytis A D, Prevelakis V. Countering code-injection attacks with instruction-set randomization[C]Proc of CCS’03. New York: ACM, 2003: 272-280

[55]Hu Wei, Hiser J, Williams D, et al. Secure and practical defense against code-injection attacks using software dynamic translation[C]Proc of the 2nd Int Conf on Virtual Execution Environments. New York: ACM, 2006: 2-12

[56]Portokalidis G, Keromytis A D. Global ISR: Toward a comprehensive defense against unauthorized code execution[G]Moving Target Defense:Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 49-76

[57]Cowan C, Beattie S, Johansen J, et al. Pointguard TM: Protecting pointers from buffer overflow vulnerabilities[C]Proc of the 12th Conf on USENIX Security Symp. Berkeley, CA: USENIX Association, 2003: 91-104

[58]Cadar C, Akritidis P, Costa M, et al. Data randomization, TR-120-2008[R]. Cambridge, MA: Microsoft Research Cambridge, 2008

[59]Bhatkar S, Sekar R. Data space randomization[G]Detection of Intrusions and Malware, and Vulnerability Assessment. Berlin: Springer, 2008: 1-22

[60]Lucas B, Fulp E W, John D J, et al. An initial framework for evolving computer configurations as a moving target defense[C]Proc of the 9th Annual Cyber and Information Security Research Conf. New York: ACM, 2014: 69-72

[61]John D J, Smith R W, Turkett W H, et al. Evolutionary based moving target cyber defense[C]Proc of the 2014 Conf Companion on Genetic and Evolutionary Computation Companion. New York: ACM, 2014: 1261-1268

[62]Okhravi H, Haines M J W, Ingols M K. Achieving cyber survivability in a contested environment using a cyber moving target[J]. High Frontier Journal, 2011, 7(3): 9-13

[63]Carter K M, Riordan J F, Okhravi H. A game theoretic approach to strategy determination for dynamic platform defenses[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 21-30

[64]Bangalore A K, Sood A K. Securing Web servers using self cleansing intrusion tolerance (SCIT)[C]Proc of DEPEND’09. Piscataway, NJ: IEEE, 2009: 60-65

[65]Huang Y, Sood A. Self-cleansing systems for intrusion containment[C]Proc of Workshop on Self-Healing, Adaptive, and Self-Managed Systems (SHAMAN). New York: ACM, 2002

[66]Huang Y, Sood A, Bhaskar K. Countering Web defacing attacks with system self-cleansing[COL]Proc of the 7th Word Multiconference on Systemics, Cybernetics and Informatics. 2003: 12-16. [2014-05-09]. http:www.researchgate.netprofileArun_Soodpublication254528704_Countering_Web_Defacing_Attacks_with_System_Self_Cleansinglinks54d133ec0cf28959aa7a92fe.pdf

[67]Huang Y, Arsenault D, Sood A. Securing DNS services through system self cleansing and hardware enhancements[C]Proc of ARES’06. Piscataway, NJ: IEEE, 2006: 132-139

[68]Qi Xiaoxia, Huang Jun, Jiang Fan. Moving target defense system analyze and research based on SCIT[J]. Computer Engineering and Applications, 2014, 50(20): 96-99 (in Chinese)(齐晓霞, 黄俊, 蒋凡. 基于SCIT的移动目标防御系统分析[J]. 计算机工程与应用, 2014, 50(20): 96-99)

[69]Kewley D, Fink R, Lowry J, et al. Dynamic approaches to thwart adversary intelligence gathering[C]Proc of IEEE DARPA Information Survivability Conf & amp; Exposition Ⅱ (DISCEX’01). Piscataway, NJ: IEEE, 2001: 176-185

[70]Antonatos S, Akritidis P, Markatos E P, et al. Defending against hitlist worms using network address space randomization[J]. Computer Networks, 2007, 51(12): 3471-3490

[71]Lee H C J, Thing V L L. Port hopping for resilient networks[C]Proc of the 60th Vehicular Technology Conf. Piscataway, NJ: IEEE, 2004: 3291-3295

[72]Badishi G, Herzberg A, Keidar I. Keeping denial-of-service attackers in the dark[G]Distributed Computing. Berlin: Springer, 2005: 18-32

[73]Sifalakis M, Schmid S, Hutchison D. Network address hopping: A mechanism to enhance data protection for packet communications[C]Proc of 2005 IEEE Int Conf on Communications. Piscataway, NJ: IEEE, 2005: 1518-1523

[74]Atighetchi M, Pal P, Webber F, et al. Adaptive use of network-centric mechanisms in cyber-defense[C]Proc of the 6th IEEE Intl Symp on Object-Oriented Real-Time Distributed Computing. Piscataway, NJ: IEEE, 2003: 183-192

[75]Applegate S D. The principle of maneuver in cyber operations[C]Proc of the 4th Int Conf on Cyber Conflict (CYCON). Piscataway, NJ: IEEE, 2012: 1-13

[76]Shi Leyi, Jia Chunfu, Lü Shuwang. DoS evading mechanism upon service hopping[C]Proc of IFIP Int Conf on Network and Parallel Computing Workshops. Piscataway, NJ: IEEE, 2007: 119-122

[77]Shi Leyi, Jia Chunfu, Lü Shuwang. Research on end hopping for active network confrontation[J]. Journal on Communications, 2008, 29(2): 106-110 (in Chinese)(石乐义, 贾春福, 吕述望. 基于端信息跳变的主动网络防护研究[J]. 通信学报, 2008, 29(2): 106-110)

[78]Shi Leyi, Jia Chunfu, Lü Shuwang. Port and address hopping for active cyber-defense[G]Intelligence and Security Informatics. Berlin: Springer, 2007: 295-300

[79]Jia Chunfu, Lin Kai, Lu Kai. Plug-in policy for DoS attack defense mechanism based on end hopping[J]. Journal on Communications, 2009, 30(10A): 114-118 (in Chinese)(贾春福, 林楷, 鲁凯. 基于端信息跳变DoS攻击防护机制中的插件策略[J]. 通信学报, 2009, 30(10A): 114-118)

[80]Jafarian J H H, Al-Shaer E, Duan Qi. Spatio-temporal address mutation for proactive cyber agility against sophisticated attackers[C]Proc of the 1st ACM Workshop on Moving Target Defens. New York: ACM, 2014: 69-78

[81]Dunlop M, Groat S, Urbanski W, et al. The blind man’s bluff approach to security using IPv6[J]. Security & Privacy, 2012, 10(4): 35-43

[82]Groat S, Dunlop M, Urbanksi W, et al. Using an IPv6 moving target defense to protect the smart grid[C]Proc of 2012 IEEE Innovative Smart Grid Technologies (ISGT). Piscataway, NJ: IEEE, 2012: 1-7

[83]Groat S, Moore R, Marchany R, et al. Securing static nodes in mobile-enabled systems using a network-layer moving target defense[C]Porc of the 1st Int Workshop on the Engineering of Mobile-Enabled Systems (MOBS). Piscataway, NJ: IEEE, 2013: 42-47

[84]Moore R, Groat S, Marchany R, et al. Using transport layer multihoming to enhance network layer moving target defenses[C]Proc of CSIIRW’13. New York: ACM, 2013: 51-53

[85]Yackoski J, Xie Peng, Bullen H, et al. A self-shielding dynamic network architecture[C]Proc of MILCOM 2011. Piscataway, NJ: IEEE, 2011: 1381-1386

[86]Jia Quan, Sun Kun, Stavrou A. MOTAG: Moving target defense against Internet denial of service attacks[C]Proc of the 22nd Int Conf on Computer Communications and Networks (ICCCN). Piscataway, NJ: IEEE, 2013: 1-9

[87]Albanese M, De Benedictis A, Jajodia S, et al. A moving target defense mechanism for MANETs based on identity virtualization[C]Proc of 2013 IEEE Conf on Communications and Network Security (CNS). Piscataway, NJ: IEEE, 2013: 278-286

[88]Al-Shaer E. Toward network configuration randomization for moving target defense[G]Moving Target Defense:Creating Asymmetric Uncertainty for Cyber Threats. Berlin: Springer, 2011: 153-159

[89]Casola V, De Benedictis A, Albanese M. A multi-layer moving target defense approach for protecting resource-constrained distributed devices[G]Integration of Reusable Systems. Berlin: Springer, 2014: 299-324

[90]Corbett C, Uher J, Cook J, et al. Countering intelligent jamming with full protocol stack agility[J]. Security & Privacy, 2014, 12(2): 44-50

[91]Han Yujuan, Lu Wenlian, Xu Shouhuai. Characterizing the power of moving target defense via cyber epidemic dynamics[C]Proc of the 2014 Symp and Bootcamp on the Science of Security. New York: ACM, 2014: 10-11

[92]Zhuang Rui, Deloach S A, Ou Xinming. A model for analyzing the effect of moving target defenses on enterprise networks[C]Proc of the 9th Annual Cyber and Information Security Research Conf. New York: ACM, 2014: 73-76

[93]Carroll T E, Crouse M, Fulp E W, et al. Analysis of network address shuffling as a moving target defense[C]Proc of 2014 IEEE Int Conf on Communications (ICC). Piscataway, NJ: IEEE, 2014: 701-706

[94]Luo Yuebin, Wang Baosheng, Cai Guilin. Effectiveness of port hopping as a moving target defense[G]Proc of the 7th Int Conf on Security Technology(SecTech). Piscataway, NJ: IEEE, 2014: 7-10

[95]Xu Jun, Guo Pinyao, Zhao Mingyi, et al. Comparing different moving target defense techniques[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 97-107

[96]Okhravi H, Riordan J, Carter K. Quantitative evaluation of dynamic platform techniques as a defensive mechanism[G]Research in Attacks, Intrusions and Defenses. Berlin: Springer, 2014: 405-425

[97]Okhravi H, Comella A, Robinson E, et al. Creating a cyber moving target for critical infrastructure applications[G]Critical Infrastructure Protection V. Berlin: Springer, 2011: 107-123

[98]Murphy M, Larsen P, Brunthaler S, et al. Software profiling options and their effects on security based diversification[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 87-96

[99]Zhu Minghui, Hu Zhisheng, Liu Peng. Reinforcement learning algorithms for adaptive cyber defense against Heartbleed[C]Proc of the 1st ACM Workshop on Moving Target Defense. New York: ACM, 2014: 51-59

Cai Guilin, born in 1982. PhD candidate and assistant engineer in the Crop 95942. Her main reserch interests include cyber security and proactive defense.

Wang Baosheng, born in 1970. Professor and PhD supervisor in the National University of Defense Technology. His research interests include router architecture, routing protocol and cyber security (wangbaosheng@126.com).

Wang Tianzuo, born in 1982. PhD. His main research interests include network and information security (phoenixwtz@163.com).

Luo Yuebin, born in 1987. PhD candidate. His research interests include intrusion detection, active defense, and network and information security (676247543@qq.com).

Wang Xiaofeng, born in 1982. PhD and assistant professor in the College of Computer, National University of Defense Technology. His research interests include trustworthy networks and systems, applied cryptography, network security and intelligent data processing (xf_wang@nudt.edu.cn).

Cui Xinwu, born in 1977. BS and engineer in the Crop 95942. His research interests include cyber security and proactive defense (397002180@qq.com).

Research and Development of Moving Target Defense Technology

Cai Guilin1,2, Wang Baosheng1, Wang Tianzuo1, Luo Yuebin1, Wang Xiaofeng1, and Cui Xinwu2

1(CollegeofComputer,NationalUniversityofDefenseTechnology,Changsha410073)2(Crop95942,Wuhan430313)

AbstractNowadays, network configurations are typically deterministic, static, and homogeneous. These features reduce the difficulties for cyber attackers scanning the network to identify specific targets and gather essential information, which gives the attackers asymmetric advantages of building up, launching and spreading attacks. Thus the defenders are always at a passive position, and the existing defense mechanisms and approaches cannot reverse this situation. Moving target defense (MTD) is proposed as a new revolutionary technology to alter the asymmetric situation of attacks and defenses. It keeps moving the attack surface of the protected target through dynamic shifting, which can be controlled and managed by the administrator. In this way, the attack surface exposed to attackers appears chaotic and changes over time. Therefore, the work effort, i.e., the cost and complexity, for the attackers to launch a successful attack, will be greatly increased. As a result, the probability of successful attacks will be decreased, and the resiliency and security of the protected target will be enhanced effectively. In this paper, we firstly introduce the basic concepts of MTD, and classify the related works into categories according to their research field. Then, under each category, we give a detailed description on the existing work, and analyze and summarize them separately. Finally, we present our understandings on MTD, and summarize the current research status, and further discuss the development trends in this field.

Key wordsmoving target defense; attack surface; dynamic shifting; resiliency; security

收稿日期:2015-03-19;修回日期:2015-09-16

基金项目:国家“九七三”重点基础研究发展计划基金项目(2012CB315906);高等学校博士学科点专项科研基金项目(20114307110006)

中图法分类号TP393.08

通信地址这3个地址变换机制均能在保持主机真实的IP地址不变的同时以较高的速率来改变主机的,因此能在保证对用户的透明性的同时使得攻击者所收集信息快速失效,且普通用户并不知道通信对方的真实IP地址,从而无法通过常规手段收集有效信息.但是机制的实施复杂度较高,且源端和目的端的网关成为了新的重要保护目标.

This work was supported by the National Basic Research Program of China (973 Program) (2012CB315906) and the Research Fund for the Doctoral Program of Higher Education of China (20114307110006).

猜你喜欢
弹性安全性
两款输液泵的输血安全性评估
为什么橡胶有弹性?
为什么橡胶有弹性?
既有建筑工程质量安全性的思考
某既有隔震建筑检测与安全性鉴定
海岸带弹性初探
实时超声弹性成像在甲状腺结节早期鉴别诊断应用
米氮平治疗老年失眠伴抑郁症的疗效及安全性
注重低频的细节与弹性 KEF KF92
弹性夹箍折弯模的改进