毛明扬,徐胜超
(广州华商学院数据科学学院,广东 广州 511300)
通信终端广泛应用在数据、音频、视频、图像等多个领域,通信终端一旦被攻击会导致数据异常、音频和视频断路、图形图像失真等[1-3]。所以,通信终端攻击行为识别十分重要。
针对通信终端攻击行为识别问题,文献[4]提出了一种攻击节点检测方法,利用空间相似性原理,采用随机游走的异常节点检测方法,找出状态异常节点并确定其位置,虽然此方法能够有效提高通信终端的防御能力,但是该方法造成大量数据丢失,对攻击行为种类的识别也有限。文献[5]在云计算模式下提出了一种网络攻击识别新方法,此方法可以有效防御通信终端被病毒攻击,并同遗传算法检验了云计算环境下网络在遭受攻击时候的抵抗能力,虽然该方法提高了安全性,但范围太小,不够全面。文献[6]研究了一种基于云计算环境的网络入侵安全检测方法,该方法通过构建入侵检测模型,分析网络遭受攻击时的网络流量变化情况,该方法能够降低攻击行为检测时间错误率,但是对异常数据的限制和传播环境的安全保护程度有限。
云计算平台具有广泛性和包容性的特点。云计算可以搭建在不同资源平台上兼容多种资源,并可实现资源的动态分配,因此云计算可为通信终端提供良好的运行环境[7-9]。可信性动态验证机制可以有效确保通信环境的安全,避免通信终端本身以外的环境信息对通信终端信息传输的干扰,保证数据的顺利传递[10-11]。为此本文提出一种可信赖云计算的通信终端攻击行为识别算法,保障通信终端数据流能够顺利完整地传递,提高了数据传递的安全性、有效性,有效解决通信终端被攻击的问题[12-15]。
为实现通信终端攻击行为识别需求,有效结合云计算和可信性验证机制,本文提出基于可信赖云计算的通信终端攻击行为识别框架,在发现攻击行为时及时采取措施处理攻击行为数据流,保证数据安全正常传输。基于可信赖云计算的通信终端攻击行为识别框架见图1。
图1 基于可信赖云计算的通信终端攻击行为识别框架
如图1所示,通信终端攻击行为识别框架由2个部分组成,第一部分包括数据采集、可行性验证机制、攻击行为识别、速率限制等模块,通过这些模块来完成数据采集、可信性验证、攻击行为识别和速率限制。第二部分是管理层,主要负责第一部分各个模块的调配,以保证数据有效顺利传递,并在攻击行为发生时及时做出应对反应[16]。
具体的通信终端攻击行为识别流程见图2。
图2 通信终端攻击行为识别流程
识别攻击行为时,首先通过数据采集模块采集通信终端数据流,经可信性验证机制验证云计算通信终端运行环境安全后,利用攻击行为识别模块识别是否存在攻击行为,若发现数据流异常,则表明通信终端被攻击[17-19],此时将数据流检测结果反映给管理模块:若未发现异常数据流,则表明采集到的是正常的数据流,此情况不作处理。速率限制模块功能是当管理模块接到异常行为识别模块识别到异常行为时,对通信终端的异常数据进行速率限制,同时将信息传给管理模块。管理模块会不间断判断是不是还有攻击性的数据流产生。假如出现异常数据流的攻击,则速率限制开始运行,假如没有出现异常数据流,那么就会停止速率限制操作。
云计算环境是以虚拟机为通信终端的核心,其中构建可信赖的云计算运行环境是可信性验证机制的终极目标,这里的可信性验证机制选取TCEE[20]。通过TCEE的vTPM(虚拟可信模块),在云计算环境的虚拟机管理器(VMM)和通信终端中引入可信任链,具体结构如图3所示。
图3 可信性验证机制结构
各通信终端的虚拟机利用内置的配置信息采集单元采集通信终端在云计算环境中的运行数据,经远程验证单元将数据传输至TTP(可信第三方),通过完整性验证方法对比配置信息与已注册登记的正常配置信息,判断通信终端的运行环境是否可信[8]。
通信终端虚拟环境启动过程是TCEE可信性验证机制的重要环节,想要可信赖云计算通信终端虚拟环境正常启动,TCG规范可信计算机技术是最佳选择[21],通过通电自行检测、在内存中加载操作系统内核镜像、开启VMM等步骤开启云计算通信终端。而在以虚拟机为载体的通信终端运行环境中,需将vTPM视为虚拟机的可信任根CRTM,依次开展如下操作:衡量接力式、存储衡量结果的可信度量结果以及PCR寄存器中引入哈希值。具体过程见图4。
图4 通信终端虚拟环境启动过程
通过实现配置信息采集单元以及远程验证服务单元的可信启动,完成通信终端虚拟环境启动。首先开始虚拟机自检工作,接下来利用核心可度量根CRTM分别对自身代码以及启动程序的哈希值进行求解[22],并分别加载至PCR0和PCR4中,之后利用Boot Loader对内核镜像哈希值进行二次求解,并通过内核镜像加载至操作系统内核中,通过载入操作完成通信终端虚拟环境开启[23]。
通过检测采集模块采集到的通信终端信息中的攻击数据,利用贝叶斯算法完成攻击数据分类识别,是可信赖云计算环境下通信终端攻击分类识别原理。分析通信终端是否入侵的方法如下:
(1)
在通信终端中获取的原始数据是X={Xa,Xb,Xc,Xd},向量D={D1,D2}用于描述特征参数er,Xc、Xb以及Xa、Xb的不同隶属系数分别用c1和c2表示,能否与数据中心划成一类是依据以上算法中的数据特征和聚类中心的距离来确定[24]。不同数据特征间联系通过贝叶斯算法来计算获取,如下所示:
A+B+C+D=a1(X1-X2)+b1(X3-X4)+c1(X-X3)
(2)
通信终端中数据和数据、数据和聚类中心间的联系是通过公式(2)来确定,聚类中心用A、B、C、D表示,通信终端的异常数据用X、X1、X2、X3、X4表示。
整合上述公式的数据确定目标函数,通信终端网络是否出现异常和被攻击是依照结束运算条件及迭代处理来识别[25]。攻击识别方法如下:
1)设在通信终端中得到原始数据为X={Xa,Xb,Xc,Xd},异常数据X、X1、X2、X3、X4是通信终端的一部分,迭代处理的最小和最大数据分别为X4和X1,聚类中心则用A、B、C、D表示。
2)为了更好地将聚类中心数据和通信终端数据进行比较,需对异常数据X、X1、X2、X3、X4实行迭代处理,也需对数据中A、B、C、D在聚类中心信息进行更新。
以识别到的攻击行为数据为基础,计算攻击行为数据的后验概率,将后验概率最大的类别作为识别到的攻击行为所属类别,实现可信赖云计算环境下通信终端攻击行为分类识别结果。
遵循贝叶斯算法原理,将随意两者间非同一时刻出现的数据设置为A1,A2,…,An,且可以与B同时出现的数据有且只有一个。
由于通信终端攻击行为数据样本中,所有的攻击数据类别的概率分布均为已知,所以攻击行为数据特征属性单独干扰其所属类别[26]。假设通信终端攻击行为样本集的特征属性数量为n,A1,A2,…,An为其特征属性向量,通信终端攻击行为样本的类别数量为m,即{C1,C2,…,Cn}。设置要分类识别的攻击行为数据Y的特征向量为{y1,y2,…,yn},则Y所属攻击行为类别的后验概率用P(Ci|Y)描述,P(Ci|Y)的最大值即为最终攻击行为的类别。后验概率P(Ci|Y)的计算公式为:
(3)
其中,通信终端样本中攻击行为所属类别为Ci的数据比例为P(Ci)。通信终端样本中攻击行为数据Y的数据比例为P(Y)。
选择3台通信终端作为实验对象,采用MATLAB仿真软件模拟DDoS攻击、SQL注入、木马植入、后门程序、僵尸程序、逻辑炸弹、口令入侵、网络监听以及WWW欺骗9种常见攻击行为,并运用本文算法对其进行识别,以验证该算法的有效性。
测试不同攻击行为概率下,加入和未加入可信性动态验证机制的通信终端访问信任度,结果用图5描述。
图5 通信终端访问信任度结果
分析图5可以看出,本文算法未加入可信性动态验证机制时,随着攻击行为概率持续增加,通信终端的访问信任度呈近似线性递减趋势,当攻击行为概率增加至0.9时,访问信任度仅为30%左右,而加入可信性动态验证机制后,通信终端的访问信任度呈缓慢下降并逐渐趋于平稳的态势,且始终高于90%。因此可得,本文算法通过可信性动态验证机制能有效提升通信终端访问安全性。
假设通信终端运行过程中,在第30 s~第70 s发生木马植入攻击行为,通过数据到达延时时间验证本文算法中速率限制功能的数据流调节效果,具体结果用图6描述。
从图6可知,启动速率限制前,在未发生木马植入攻击行为的情况下,数据延时时间为0.15 s,发生攻击行为后,数据延时时间大幅度上升,最高达到0.52 s;启动速率限制后,在未发生木马植入攻击行为时,基本不存在数据延时现象,发生攻击行为后,数据延时时间出现极小的波动,最高仅为0.12 s。因此表明本文算法具有较优异的数据流调节效果,能保证数据在通信终端遭受攻击行为时的顺利传输。
图6 数据到达延时时间结果
统计分析某日通信终端攻击行为识别结果,其中前10条记录用表1描述。
表1 通信终端攻击行为部分识别结果
分析表1可以看出,当通信终端遭受不同严重程度的攻击时,本文算法均能识别出相应的攻击行为,且识别用时始终保持在35 s以下,其中识别用时最长和最短的攻击行为分别为WWW欺骗和后门程序。以上结果可得,本文算法能够有效实现通信终端攻击行为识别,对于攻击严重程度较低的行为也能识别出来,且整体通信终端攻击行为识别效率较高。
引入平均绝对百分误差(Mean Absolute Percentage Error, MAPE)衡量本文算法的通信终端攻击行为识别性能。将9种常见攻击行为分别用序号A~B表示,并在测试环境中加入不同强度的干扰信号,分别为10 dB、30 dB以及50 dB,此环境下各通信终端攻击行为的识别MAPE结果如图7所示。
分析图7可以发现,当测试环境中干扰信号强度为10 dB时,大多数攻击行为的识别平均绝对百分误差均保持最低,当干扰信号强度增加至50 dB时,各攻击行为的识别平均绝对百分误差均处于最高值,但始终低于0.25%,整体识别误差水平较低。因此可得,本文算法具有较理想的通信终端攻击行为识别性能,即使在干扰较大的环境中也能准确识别通信终端攻击行为。
图7 不同通信终端攻击行为的识别MAPE结果
测试本文算法使用后通信终端在不同运行时间下接收及发送数据的平均能耗,结果用图8描述。
图8 通信终端接收及发送数据的平均能耗
从图8可以看出,随着通信终端运行时间增加,其接收及发送数据的平均能耗均呈上升趋势,但上升幅度极小,表明本文算法能很好地避免由恶意攻击行为导致的通信终端能量过度消耗问题。
统计分析本文算法应用第1个月、第2个月以及第3个月的通信终端攻击行为识别数量,结果用图9描述。
从图9可以发现,本文算法应用1个月时,各攻击行为的识别数量在30~40范围内变化;本文算法应用2个月时,各攻击行为的识别数量明显减少,最大与最小识别数量分别为32、21;本文算法应用3个月时,各攻击行为的识别数量始终低于15。以上结果可得,本文算法的通信终端攻击行为识别效果较为优异,其实际应用对减少通信终端攻击行为,提升通信终端安全性具有显著效果。
图9 不同应用时间的攻击行为识别数量
本文研究可信赖云计算的通信终端攻击行为识别算法,通过在云计算模式下加入可信性验证机制,提供通信终端运行的可信环境,通过攻击行为识别以及通信终端的速率限制识别攻击行为并最大限度保证攻击行为产生时的通信安全,实现对异常数据的识别。实验结果表明,在不同病毒攻击时,通过本文方法能够对病毒进行有效的识别和限制。