,,
(广东创新科技职业学院 信息工程学院,广东 东莞 523960)
恶意代码又称恶意软件,是在未明确提示用户或未经用户许可的情况下,在用户计算机或其他终端上安装运行,侵犯用户合法权益的软件[1]。其入侵手段多样,造成的损失成上升趋势,共享与安全的矛盾逐渐凸显[2],已成为国家网络经济发展的关键[3]。据统计:信息窃贼在过去几年中以250%速度增长,超过90%的大公司都发生过恶意代码入侵事件[4]。恶意代码入侵自动监测系统作为保证计算机安全的重要手段,对其的研究逐渐成为相关专家学者研究的热点课题[5]。
为了优化恶意代码入侵监测系统,达到监测的高效性及有效性,提出基于BP神经网络的云计算架构中恶意代码入侵自动监测系统设计方法,实验结果表明,所提方法进行恶意代码入侵监测,监测的准确度较高,丢包率较少,推动了该课题向应用领域迈进。
云计算架构中恶意代码入侵自动监测系统主要由STM32主控板、传感器、指南针模块、信号调节电路、数据转换模块等模块组成,具体系统设计的参数如表1所示。
表1 云计算架构中恶意代码入侵自动监测系统参数
由图1可知,系统所用的传感器电路都已模块化,监测到的信号输出为高低电平,可以实现直接与ARM芯片的通信,通过对云计算构架中的数据信号进行滤波放大和A/D转换,从而实现对云计算构架中信号的预处理,在此基础上,对云计算构架中信号进行监测,确定云计算环境下恶意代码入侵信号,完成对恶意代码入侵的自动监测。
图1 整体框架设计
本文设计的云计算构架中恶意代码入侵自动监测系统以STM32F103ZET6为主控芯片,STM32系列[6]以ARM Cortex-M3为核心,具有提高系统的性能,降低系统的成本和功耗的优点,STM32F103作为STM32的增强型,是同类产品中具有最高性能的产品,其优点主要体现在以下几方面。
1)超低的产品价格。
2)外设较多。
3)具有较好的实时性。
4)功耗较低。
因此,该芯片符合恶意代码入侵自动监测系统需求的处理速度快,实时性好等内容。
USB协议[7]的复杂性意味着USB外设必须具有智能,因此利用控制芯片实现对USB端口事件进行监测,芯片的选择取决于芯片所要执行的功能,本文选用的USB接口控制芯片是由Cypress公司推出的带智能USB接口的EZ-USB FX2 USB2.0控制芯片,包含智能串行接口,能完成所有基本的USB功能。
在上图恶意代码入侵自动监测系统电源电路中,为了保证系统电压的稳定性和精度,本文采用LM2575系列的稳压器实现对12 V-5 V的电路转化,LM2575系列芯片的最大输出电路为45 V,输出电压为5 V,利用电源电路,保证系统正常运行。
图2 系统电源电路
为了保证系统自动监测的及时性,需要对系统的时钟电路进行设计,本文设计的恶意代码入侵自动监测系统时钟电路如图3所示。
图3 恶意代码入侵自动监测系统时钟电路
在云计算构架中恶意代码入侵自动监测系统时钟电路中,本文采用的振荡源是12 MHz,其两个引脚连接X1、X2引脚,从而形成闭合回路,并配合内部的震荡工期实现恶意代码入侵自动监测系统时钟电路。并且,将晶振的两个引脚与匹配电容和匹配电阻进行连接,从而提高恶意代码入侵自动监测系统的稳定性。
为实现恶意代码入侵自动监测系统复位,需要对系统的复位电路进行设计,本文设计的系统复位电路如图4所示。
图4 复位电路设计
上图中,恶意代码入侵自动监测系统复位电路是利用TMS320LF2407A进行初始化,在系统运行过程中,实现对恶意代码入侵的监测,恶意代码入侵自动监测系统复位电路主要可以分为手动复位和自动复位两种,本文中为实现自动监测,并保证监测效率,采用了手动复位和自动复位相结合的复位方式,根据系统运行的实际勤快,选择自动复位和手动复位。
数据采集和预处理是整个恶意代码入侵自动监测系统的核心组件,通过从云计算构架中获取网络数据报文,为其他模块的顺利进行奠定基础。数据采集模块的性能直接影响采集的准确性。
本文设计的数据采集模块是基于数据平面开发套件技术实现的。在此基础上,通过对采集的数据进行IP报文重组以及TCP流汇聚,主要目的是保证应用层数据的连续性,方便监测模块进行监测。
恶意代码入侵自动监测系统入侵监测是通过监测引擎模块、脚本运行模块、特征库模块和实施关联引擎组成的,通过这四个模块配合,实现入侵监测系统的攻击监测流程。
监测引擎模块是入侵监测的核心模块,通过数据模式匹配,实现对恶意代码的识别。脚本运行引擎模块是通过Y语言开发的,利用特征库模块,对云计算构架中恶意代码入侵的行为特征进行定义,从而识别相应的攻击事件。关联事件与监测引擎监测到的基本监测事件是相对应的,通过关联引擎实现对云计算构架中跨会话的和复杂的会话内的恶意代码入侵监测,并且,还可以利用关联引擎实现多种日志过滤功能。
在进行云计算架构中恶意代码入侵自动监测系统设计过程中,监测的准确性和及时性对系统的性能具有重要影响。误差逆传播网络(BP网络)具有较强的映射能力,BP网络是一个多层次网络,其中最基本的网络拓扑结构是通过输入层、隐含层、输出层三个神经元层次组成,通过将相邻层的神经元之间进行连接,从而实现BP神经网络。
BP神经网络是一种监督式的学习算法[8],其思想如下:BP神经网络由模式顺传播、误差逆传播、记忆训练、学习收敛四个过程组成,其通过连续不断的在相对于误差函数斜率下降的方向上计算网络权值和变差变化而逐渐逼近目标[9],从而提高云计算构架下恶意代码入侵自动监测系统监测的准确度。
BP神经网络所用到的计算过程如下所述:
设定输入节点的输入为xj,隐含节点的输出可以表示为:
(1)
(2)
式中,Tij表示输出节点的实际输出值。
设定t1表示云计算中输出节点的期望输出值,则对其进行误差控制的过程可以表示为:
(3)
BP神经网络的误差公式可以表示为:
δl=(tl-ol)×ol×(1-ol)
(4)
权值修正公式可以表示为:
Tij(k+1)=Tij(k)+ηδlyi
(5)
式中,k表示权值修正的迭代次数,η表示神经网络的学习系数。阈值修正可以表示为:
θl(k+1)=θl(k)+nδl
(6)
输出节点的误差公式可以表示为:
(7)
为了实现云计算架构中恶意代码入侵监测系统设计,训练了一个BP神经网络,首先对云计算构架中网络加权输入矢量、网络输出以及误差矢量进行计算,并求得误差平方和[10],将所训练矢量的误差平方和与目标误差进行对比,当小于目标误差,则停止训练,否则在输出层计算误差变化,以反向传播学习规划实现对目标权值的调整,并重复次过程,直到误差平方和小于目标误差。
基于BP神经网络的云计算架构中恶意代码自动入侵监测系统的监测流程可以表述为:首先初始化网络,并采集云计算架构中的恶意代码入侵数据,给出训练样本,利用BP神经网络计算各神经元的输出值,从而确定监测的误差,根据监测的误差,调整网络权值,降低监测的误差,从而提高监测的准确度。通过上述论述,实现系统的软件设计,并结合2.1,从而完成云计算架构中恶意代码入侵自动监测系统设计。
为了证明本文所提方法设计的基于BP神经网络的云计算架构中恶意代码入侵自动监测系统的使用效果,进行了一次实验,实验过程中,本文采用基于WNIDS的实验系统,测试平台如表2所述,实验对象如图5所示,通过将不同方法应用至该试验对象,观察不同方法的整体性能。
表2 实验测试平台配置
1)恶意代码入侵自动监测系统监测的丢包率是判断恶意代码入侵自动监测系统运行性能的重要指标,图6是不同方法设计的系统监测的丢包率对比。
2)在恶意代码入侵自动监测系统中通过正常节点与恶意节点的信任度确定网络的安全度,图7是本文所提方法正常节点与恶意节点的信任度对比。
3)在恶意代码入侵自动监测系统中,监测的及时性是评价监测系统的另一重要指标,其保证了安全数据的正常流入及恶意代码入侵的及时识别,图5是不同方法监测的响应时间对比。
图5 实验对象
图6 不同方法设计的系统监测的丢包率对比
通过图6可以看出,本文所提方法设计的系统丢包率低于文献[8]和文献[9]方法设计的系统监测的丢包率,说明本文所提方法设计的系统能够全面的对云计算构架中的访问进行监测,本文所提方法设计的系统利用BP神经网络算法,对监测过程中的误差进行调整,提高了监测的范围,因此具有较低的丢包率。
通过对图7的分析可知,本文所提方法设计的系统在监测过程中,正常访问的信任度之不低于70%,恶意代码入侵访问的信任度不超过40%,因此,本文所提方法能够准确对云计算架构中恶意代码入侵进行识别,由于本文所提方法设计的系统增加了数据采集处理模块和数据监测的模块,因此提高的监测的准确性。
图7 本文所提方法正常节点与恶意节点的信任度对比
图8 不同方法监测的响应时间对比
通过图8可以看出,本文所提方法设计的系统响应速度快于文献[8]和文献[9]方法设计的系统监测的响应速度,因此本文所提方法能够较好的保证系统对云计算架构中恶意代码入侵监测的及时性。综上所述,本文所提方法设计的系统能够较好的保证监测的准确度和及时性,为该课题的研究发展奠定基础。
在云计算架构中,恶意代码及其它入侵形式都需要有监测,监测自动进行就显得尤为重要。本文介绍了自动监测系统在云计算架构中恶意代码入侵中的实际应用。从系统整体结构、软硬件设计及系统测试角度对云计算架构中恶意代码入侵自动监测系统进行深入介绍,利用仿真及实测相结合的形式证明了系统的可行性。