基于最大延迟时间限制的云平台隐蔽信道干扰方法
张时生,胡劲松,李翼宏,程静文
(国防科技大学 电子对抗学院,安徽合肥,230037)
摘 要:安全问题严重制约云计算的发展和普及,虚拟化技术作为云计算平台的核心,隐蔽信道攻击导致的机密数据泄露,极大威胁云平台的安全。为实现对云平台隐蔽信道通信实施干扰,针对共享内存时间隐蔽信道,通过设置干扰器,在多重限制条件下提出一种基于最大延迟时间限制的隐蔽信道干扰方法,并定量分析了干扰方法的干扰效果。
关键字:虚拟化 隐蔽信道 最大延迟 干扰
0 引言
云计算是一种基于互联网服务,能够弹性动态分配虚拟化资源的新型计算模式。将资源封装成服务,为用户提供无限的计算能力和信息服务,具有资源共享、高伸缩性和按需服务等特点,使得云计算从问世至今一直得到业界和学术界的广泛关注,并得到快速而持续的发展。
虽然云计算技术发展迅速,但是云计算的安全问题一直是制约其发展和普及的“瓶颈”。其中对数据安全和隐私问题的忧虑已经成为人们放弃使用云计算的主要原因。近年来不断爆发的云安全事故更是加剧了人们的担忧。例如,2011年3月,谷歌邮箱爆发大规模的用户数据泄漏事件,2014年11月,美国索尼影视娱乐公司遭到攻击,包括索尼的员工个人信息、公司计划、产品情况等内部敏感信息都被泄露。2016年发布的《2016年云计算12大威胁》中,数据泄露威胁高居榜首[1]。2018年3月Facebook被曝光超过5000万用户隐私数据遭泄露。
隐蔽信道是传统操作系统、网络系统和数据库系统的重要威胁。隐蔽信道攻击是数据泄露的一种方式,它是一种以违反系统安全策略的方式进行信息传输的通信信道。在云平台中,隐蔽信道攻击能够破坏云计算平台的隔离性,泄露客户的机密信息。美国加州大学伯克利分校的研究人员系统地总结了云计算环境下的安全问题,指出由云平台新的架构和计算模式带来的安全问题才是云计算中新的安全问题[2]。例如,由资源共享导致的隐蔽信道问题;由硬件平台共享导致的fate sharing问题;以及云服务商和云客户之间的互审计问题。其中,危害最为严重的是云计算环境下的隐蔽信道问题。
1 相关工作
1.1云平台隐蔽信道的类型
云计算平台通过虚拟化技术对数据中心的各种资源进行虚拟化和管理,将大量独立的计算机通过高速局域网相连,其中最核心的技术是虚拟化技术。虚拟化技术支持在同一个硬件平台上建立一个或多个相互隔离的执行环境(称为虚拟机),用于运行操作系统级运用,并确保虚拟机中的操作系统、应用的运行情况与在真实的物理设备上的运行情况基本相同。2009年,美国加州大学圣地亚哥分校的Thomas Ristenpart等人在 16th ACM onference on Computer and communica-Tions security (CCS)会议上提出了云平台隐蔽信道,将隐蔽信道的研究延伸到云计算环境[3]。
1975年,Lipner在论文中提出,根据不同的通信场景,可以把隐蔽信道划分为时间隐蔽信道和存储隐蔽信道[4]。假设进程A与进程B进行隐蔽通信,如果进程A直接或间接地对一个存储单元进行写操作,而进程B能够通过一定的手段直接或间接地读取该存储单元,这种类型的隐蔽信道被称为存储隐蔽信道,存储隐蔽信道将共享的全局存储变量或数据结构作为信息传输媒介。而如果进程A调节对系统资源的使用,进程B可直接或间接地观察到响应时间的变化,以此来隐蔽地传递信息,这种类型的隐蔽信道为时间隐蔽信道,时间存储信道使用时间参照变量作为传输媒介。
传统的两类隐蔽信道分类方法简单,没有体现云平台环境的特点,根据云环境下隐蔽信道的影响范围,将隐蔽信道分为三类:域内隐蔽信道,跨平台隐蔽信道和域间隐蔽信道。域内隐蔽信道是属于进程级隐蔽信道,这种隐蔽信道发生在同一个虚拟机的两个进程之间。跨平台隐蔽信道属于网络级隐蔽信道,这种隐蔽信道发生在不同虚拟机内的进程之间,且虚拟机也驻留在不同的物理服务器中。域间隐蔽信道属于系统级隐蔽信道,这种隐蔽信道发生不同虚拟机内的进程之间,且虚拟机驻留在同一物理服务器(同驻)。
同一虚拟化平台上的虚拟机之间应该是相互隔离的,但即使在虚拟机监视器VMM(Virtual Machine Monitor)实施了强制访问控制机制,仍然可能在虚拟机之间的潜在域间隐蔽信道。目前,研究人员先后在Xen中发现多条域间隐蔽信道,本文对基于共享内存的域间时间隐蔽信道进行重点研究。
2011年JingZheng Wu等人提出了基于共享内存的时间隐蔽信道[5]。同一虚拟化平台上每个虚拟机都有自己的授权表,用类修改共享内存访问区域的权限,一台虚拟机创建一块共享内存区域,并通过授权表机制赋予其他虚拟机访问权限,达到构成共享平台的目的。当虚拟机A与虚拟机B进行域间通信时,建立基于共享内存的时间隐蔽信道,机密信息传输过程如图1所示:
图1 基于共享内存的时间隐蔽信道传输场景
该信道利用共享内存来传输秘密信息,通信双方的恶意进程和
分别位于发送方和接收方,进程
将正常数据填充至内存环并通知
读取,
获取数据并记录达到时间,秘密信息就隐藏在正常数据达到的时间间隔中,传输场景如图1所示。一条被编码10100的秘密信息就通过隐蔽信道传输了。具体的通信协议描述如下:
(1)将要传输的机密信息编码成二进制比特串,并用
和
表示比特位“0”和“1”;
(2)建立共享数据,并通过授权表机制赋予
;
(3)将共享内存映射到自己的地址空间中;
(4)将代表机密信息编码的二进制字符串表示为
和
,插入到将要发送的时间序列中,利用修改后的时间间隔序列发送将要发送的数据;
(5)并查看发送过来的数据及其到达的时间,计算相应的间隔时间;
(6)将所有的机密信息发送完毕之后再接着发送原始数据,直到信息发送完毕;
(7)根据得到的时间间隔序列进行解析,按照事先约定的同步信息将其还原成机密消息;
(8)收回授权,秘密信息通信结束。
1.2隐蔽信道干扰的方法
隐蔽信道干扰就是在隐蔽信道存在的情况下,对隐蔽信道的信息传输能力进行限制,以丧失其利用价值。因此,对隐蔽时间信道的干扰,通过设置噪声设备,向信道中添加噪声、延时来直接干扰信道的传输机制或同步机制,最大限度降低信道容量[6]。噪声设备类似一个中间服务器,通过存储转发数据,调度信息传输的服务时间,从而干扰隐蔽信息传输。
Hu[7]提出利用“模糊时间”来限制基于竞争的时间隐蔽信道。模糊时间法不仅增加信道传输的延时,又干扰了信道的同步机制,能够有效降低时间隐蔽信道的容量。但是模糊时间法对于正常的、合法的时间同步也会干扰,该方法延长了系统响应时间,对于实时性较高的云平台而言不可接受。Kang和Moskowitz等人提出在两个不同安全级的用户间增加一个通信介体——泵[8,9]。泵是一个单向通信设备,用于连接低级和高级用户并允许数据从低级向高级传送,高级只能发送响应给低级,而且响应时间由泵来控制,避免了高级主机向低级主机直接发送确认。由于泵能够提供可靠、快速的通信,美国海军研究实验室(Naval Reaserch Laboratory,简称NRL)以泵的概念为基础研发了隐蔽信道限制设备Network Pump用以在网络环境中限制隐蔽信道,该设备已经被美海军定型并获得专利[10].但由于现有的研究没有对泵干扰后的隐蔽信道的传输能力进行推理和计算,无法定量对泵的干扰效果进行衡量。
时间隐蔽信道干扰方法总结起来可利用信息论的观点表达如下:
(1)
其中信源X在干扰方法J作用下输出的互信息量,
是在时间段(0,T)内隐蔽信道中信源输出的信息量,
是隐蔽信道在干扰方法J的作用下损失的信息量。为了降低
值,从中可以看出有两种干扰方法,第一种方法是减小
,即降低信源输出的信息量;第二种方法是增加
,尽量使得
,令
接近于0。
本文在两者思想的基础上,在隐蔽通信的双方之间设置干扰器,干扰器中含有缓冲区用于对隐蔽信息的数据进行缓存,隐蔽信息发送方发送的数据要先进入干扰器中,经过处理后,再发送给接收方,如图2所示
图2 干扰方法示意图
2 干扰方法的分析
2.1干扰前的隐蔽信道建模
目前现有的时间隐蔽信道模型有Z信道模型[11]、插入删除模型[12]等等,由于这些模型及其编码方式过于理想化和简单化,已无法满足现在复杂的时间隐蔽信道。
由于基于共享内存的时间隐蔽信道中承载隐蔽信息的是数据填充的时间间隔,它是由数据填充事件的到达时刻所决定,而数据填充事件的时刻是一个离散型变量,因此可以当作离散事件系统来考虑。在离散事件系统中,时间轴被分成许多单位时间片,对于每个时间片,最多只能发出或接受一个离散事件,而且离散事件的离开或者到达时刻只能在时间片的初始时刻,如图3所示:
图3 离散事件系统示意图
Anantharam和Verdu等人提出单窗口服务队列模型研究隐蔽信道干扰问题[13],单窗口服务队列模型就是数据包达到一个网络节点后,停留在该节点等待调度,然后被转发出去。单服务队列的离散时间信道模型如图4所示:
图4 单服务队列离散时间信道模型
令分别表示第i-1个数据和第i个数据之间的到达时间间隔,
表示第i-1个数据和第i个数据之间的离开时间间隔,
表示第i个数据的服务时间,
为表示第i-1个数据离开时刻和第i个数据到达时刻的空闲时间,
=
+
,如图5所示:
图5 数据的到达和离开
设a(n)表示在n个时间单位内离散事件到达节点的个数,d(n)表示n个时间单位内离散事件离开节点的个数。基于单窗口服务队列模型,同时满足以下条件,建立干扰前的隐蔽信道模型:
(1)隐蔽通信中只有基于共享内存的隐蔽信道,即只有数据填充的时间特性承载隐蔽信息,数据只有到达和离开时间不同;
(2)在一个时间单位内,只有发出和接受一个数据,即:a(n+1)-a(n)={0,1};
(3)数据到达流满足一定的到达率λ,0≤λ≤1,则;
(4)在通信过程中,假设唯一的通信噪声源来自干扰器。隐蔽信道本身会受到自然噪声的影响,本文只分析干扰器对隐蔽通信的影响,主要两者的通信是链路中唯一的信息流,这样信道就不会受到其他信息流的影响。
用表示
,
,
,
,
,
表示
,
,
,
,
,
表示离散事件在
、
情况下的互信息量,则
(2)
那么隐蔽时间信道的容量可以定义为:
(3)
2.2干扰方法的限制要求
时间隐蔽信道寄生在正常的网络通信信道,对隐蔽信道的实施干扰必定会对正常通信产生负面影响,一个好的干扰方法既能降低隐蔽信道的传输率或者增加其误码率,丧失隐蔽信道的信息传输功能,还可以对正常的网络通信产生的负面影响控制在可接受的范围内。本文干扰方法的基本思想是在隐蔽通信的双方之间设置干扰器,干扰器中含有缓冲区用于对承载隐蔽信息进行缓存,通过这样的措施来隐蔽信道添加噪声或延时,Giles和Hajek在文献[14]考虑了实际通信中的多种干扰制约条件,集中讨论了在最大延迟限制和缓冲区大小限制,因此需要为干扰方法引入以下限制条件:
(1)保证数据机密性。虚拟化是云计算的核心技术之一,虚拟化平台作为一种面向公众服务的平台必须保证用户信息的机密性,因此实施干扰时不能丢失数据,也不能生成数据,不能扰乱原有数据的顺序;
(2)最大延时限制要求。数据在干扰器中的延迟时间不能大于最大延迟时间,否则接收端便认为该数据传输失败,
(4)
(3)最大缓冲区限制要求。数据在干扰器缓冲区中积累的数量不能大于缓冲区最大长度,否则会引起数据丢失,导致传输失败,
(5)
2.3干扰方法的描述
本文描述的干扰方法是以共享内存的时间隐蔽信道的时间作为延迟对象,经分析发现,在I/O环通信过程中每次填充数据之后或数据应答之前都需要发送事件,通知另一端数据已经准备好,这说明延迟事件的传递也就间接延迟了数据的发送,可以在隐蔽信道发送与接收方之间设置一个干扰器,每个事件到达干扰器后进入干扰器缓存队列进行排队,位于队首的事件等待随机时间后再发送出去,通过这样的过程间接对数据发送进行延迟以达到隐蔽通信的目的,既限制了时间隐蔽信道,又考虑到了对正常通信的负面影响。具体来讲,在干扰方法的假设前提下,考虑其限制要求,干扰方法具体内容描述如下:
(1)为事件i到达干扰器的时刻,
为事件i离开干扰器的时刻,对于每一个处于队列首位的时间i,都对它延迟
个时间单位后再发送。
(2)由随机函数R(D-
)决定,
,
为第i-1个事件离开干扰器的时刻,
为第i个事件达到干扰器的时刻,
为第i个事件到达与第i-1个事件离开的时间间隔,也就是第i个事件从进入队列到成为队首的事件等待的时间,若
,则
=0;
(3)随机函数R(N)(N>0)在1到N间取值,并且取每一个值的概率均等,即:
(6)
经分析,该方法显然满足限制条件1的要求。事件i总共被延迟的时间为在队列中等待的时间与成为队首事件后延迟的时间之和,从R(D-)可以看出,
与
之间具有适应性,这两者之和,即事件i总共被延迟的时间不会超过最大延迟D,因此满足第二个限制条件。由于队首事件延迟的适应性,队列中事件个数不会超过D个,这样第三个限制条件也满足。
3干扰方法理论分析
为了分析干扰方法的有效性,首先从理论上求出被干扰后信道的最大传输率。假设干扰器对于该隐蔽信道干扰的事件最大延迟是D,每个队首事件的延迟用表示,被干扰的隐蔽信道事件的到达率为
,该隐蔽信道的传输率满足如下:
(7)
其中.
证明:
结合单窗口服务队列离散时间信道模型的描述,隐蔽信道传输率可由如下方法求得:
(8)
给定,
,
,
,
和
,
,
,
,
,可以得到干扰器中缓存队列空闲时间
,即第i-1个事件离开与第i个事件到达的时间间隔,因此可得到
(9)
(10)
因此
=
(10)
由于事件到达率为,而当信道取得最大传输率时,事件离开干扰器的速率应与到达率相等,即
=
=
,所以
=
(11)
由于
(12)
(13)
同样,为了求出的上限,我们要找到当
时,
的最小值。首先求得
与
的关系,
的取值为
,概率分布为
,
的取值为[0,1,
D-1,D],概率分布为
,其中
(14)
(15)
将公式14带入公式15得到
(16)
(17)
由公式16和公式17可以求得
(18)
又,则
可以证明单调递增,则
(19)
结合公式11,13,19,可以得到公式7所表示的信道传输率上限。
4干扰方法效果分析
上述理论为评价干扰效果提供了很好的理论依据,为进一步研究了解信息传输率上限的特性,更好的评价干扰效果,我们需要对具体数值来分析。从公式7可以看出,影响隐蔽信道传输率上限的因素就是干扰器最大延迟时间限制D和事件到达率。
的具体值可以通过Matlab优化工具可以求得,将最大延迟时间限制设定为20ms,可以得到事件到达率
对传输率的影响如图6所示,当
=0.6时,传输率的最大值为0.395。理论上,干扰前的隐蔽信道传输率为1 ,干扰方法在理论上可以把隐蔽信道的传输率降低了60.5%。
图6 容量上限与数据到达率的关系
既然当最大延迟时间限制为20ms,传输率上限在=0.6处取得,那么可以把数据到达率
固定为0.6,如图7所示,随着D增大时,隐蔽信道传输率下降,这也符合我们的设想情况,因为最大延时增加,意味能够缓存更多的时间,传输率也就下降。
图7 容量上限与最大延时限制的关系
5小结
本文结合云平台虚拟化环境的特点,研究了云平台隐蔽信道类型和隐蔽信道的干扰方法,并提出了一种基于最大延迟时间限制的隐蔽信道干扰方法,从应用信息论和排队论的知识从理论上定量分析了干扰方法的干扰效果。
本文的研究在下一步研究可以进行改进,首先,本文仅仅提出了一种干扰方法,下一步可以尝试研究在这些限制条件下的最佳干扰方法。其次是本文的信道类型没有考虑自然噪声,而这在实际运用中必须要考虑,下一步可以建立一个模型将其纳入干扰方法中。
参考文献:
[1]Brook J,Field S,Shackford D.TheTreachous 12-Cloud Conputing Top Threats in 2016[R].
CLOUD SECURITY ALLIANCE,2016.
[2]Chen Yanpei,Vern Paxson,KatzRH.What’s New About Cloud ComputingSecurity
[D].EECS Department,University of California,Berkeley,2010:1-6.
[3]Thomas Ristenpart,EranTromer,HovavShacham,etal Hey,you,get off of my cloud:exploring information leakage in third-party compute cloudsC]/ /Proceedings of the 16th ACM conference on Compute and communications security.Chicago,Illinois,USA:ACM,2009:199-212.
[4] Lipner ,Steven B.A comment on the confinement problem[J]. ACM SIGOPS Operating Systems Review, 1975,9(5):192−196.
[5]WU J Z,DING L P,WANG Y J,etal.Identi-
fication and evaluation of sharing memoy covert timing channel in xen virtual machines.
proceeding of the Cloud Computing 2011IEEE International Comference on Washington, USA,2011[C]:283-291.
[6]钱玉文.网络隐蔽时间信道的设计、检测及消除方法研究[D].南京理工大学.2011
[7] WM H.Reducing timing channels with fuzzy time:proc.of the IEEE Computer Society Symp.on Research in Security and Privacy,1991(C)
[8]Kang M,MoskowitzI.A pump for rapid,secure communication:In:Proc .of the 1st ACM Conf.on Computer and Communication Security,1993(C)
[9]Kang M,MoskowitzI.The pump:A decade of cover fun:In:Proc.of the 21st Annual Computer Security Applications Conf,2005[C]
[10]王永吉,吴敬征,曾海涛,等.隐蔽信道研究[J].软件学报,2010,21(9):2262-2288;
[11]S.W.Golomb.The Limiting Behavior of the Z-Channel[J].In IEEE Transactions on Information Theory,vol.26,no.3,Page372, May1980;
[12]Zhenghong wang,Ruby B.Lee.Capacity Estimation of Non-Synchronous Covert Channels[C].Proceedings of the 2nd International Workshop on Security in Distributed Computing Systems,2005:170—176;
[13]N.Anantharam and S.Verdu,Bits through queues,IEEE Trans.Inform. Theory, vol.42,pp.4—18,Jan.1996;
[14]J.Giles and B.Hajek, An information— theoretic and game-theoretic study of timing channels,IEEE Transaction on Information Theory, vol.48,pp.2455–2477, September 2003;