2. 苏州大学 计算机科学与技术学院, 江苏 苏州 215006
2. School of Computer Science and Technology, Soochow University, Suzhou, Jiangsu 215006, China
云计算[1]的出现缓解了计算资源紧张的现象。随着云系统应用领域的不断扩大, 云系统面临来自内外部的多种威胁, 如何提高云系统的安全性已成为业界关注的热点。目前, 云系统安全的防护思想主要是在系统内部进行安全防护, 例如国内的NTAS系统, 其网络流量处理能力达10 Gb/s。文献[2]提出基于审计模型的云存储安全管理方法, 其在一定程度上缓解了云系统中入侵检测、流量分析等问题, 但在高速网络环境下发现漏洞的能力不强[3]。本文针对云系统所面临的安全问题, 提出基于神经网络的分析方法并将其应用于云系统的安全检测中, 以提升云系统在大数据环境下的安全防护能力。
1 相关工作 1.1 网络流量分析技术网络流量分析是目前云安全管理采取的主要方法。通过对云中产生的网络流量进行分析, 可以有效规划云中的网络带宽, 发现潜在威胁, 同时了解云中各虚拟机的运行状况, 以便合理安排资源。现有的网络流量分析方法和工具大多是基于传统网络构建的, 难以满足未来的发展需求。文献[4]提出一种基于流的网络流量分析工具, 通过数据库管理网络会话, 但由于数据库查询过程耗时较长, 该工具很难实现大数据环境下的网络流量分析。文献[5]提出基于生物序列比对的网络检测方法。文献[6]使用网络会话表对网络流量进行分析。虽然这些方法或系统在一定程度上解决了网络会话管理、网络报文匹配等主要问题, 但由于技术本身的限制, 已无法满足云计算未来的发展要求。
1.2 网络入侵检测技术网络入侵检测技术主要针对网络中主机的安全状况进行分析, 判定其是否被攻击。在云系统中, 主机的地位被虚拟机取代, 虚拟机的动态迁移导致其位置相对于用户是不确定的, 这对云系统的安全性提出了新的挑战。目前的入侵检测技术主要是在以太网环境下对主机的安全进行检测。Denning模型是最早出现的入侵检测模型, 其能在实时环境下检测渗透、入侵等行为。文献[7]将机器学习用于入侵检测, 可以很好地识别已发生的入侵行为, 但是学习的过程耗时较长, 且学习效果受限于数据集本身。文献[8]提出运用神经网络来处理入侵检测问题, 该方法对发生入侵行为的判断准确率有大幅提高, 但是神经网络的训练同样依赖于数据的完整性, 这在一定程度上限制了其应用和发展。综上所述, 入侵检测的主要问题是检测的准确率和效率不高。
1.3 网络脆弱性评估方法网络脆弱性评估的参考标准各不相同, 各种方法的普适性较低。文献[9]基于攻击者行为构建攻击结构图, 以不同尺度评价体系的安全性, 但其无法评估潜在攻击。文献[10-11]采用分层次的方法来评价安全威胁的强弱。文献[12]利用模型检测技术来分析易受攻击对象, 该方法受限于状态机的完整性。文献[13]使用马尔科夫方法, 依据入侵成功的概率描述攻击概率模型的有效性。文献[14]提出采用博弈方法来评价网络的脆弱性, 该方法将攻击者和管理者视为博弈双方, 利用非线性规划计算纳什均衡和最优反应策略, 为攻击者和管理员评价网络的脆弱性提供解决方案。文献[15]结合高级语言的规范、网络框架、优化策略和SPIN模型, 提出分析不同攻击场景的方法。文献[16]采用半马尔科夫过程模型构建易受攻击的系统, 计算稳态概率和相关指标来评价网络的脆弱性。文献[17]提出渗透测试模型, 选取安全指标进行估计, 并反复进行渗透测试。
1.4 网络安全评估方法网络安全评估作为网络安全管理的一种重要手段, 其应用越来越广泛, 但是各种评估体系的参考标准不一, 适用的场景也各不相同。文献[18]提出一种从攻击者行为、攻击结构图、不同的安全尺度等方面来模拟网络安全评价的方法, 然而, 其对网络突发事件的处理能力不足。文献[14]提出基于博弈论的网络安全评价方法, 该方法将攻击者和管理者视为随机游戏中的2个玩家, 利用非线性规划计算纳什均衡和最优反应策略, 提供相应的解决方案。该方法虽然考虑了攻击者和管理员之间的相互关系, 但忽略了攻击者和被攻击者对象并非是一一对应的。总体而言, 这些网络安全评估算法为评估云系统的安全性提供了依据。
2 云系统的安全性评估方法云系统的基本架构由基础架构层、应用服务层及客户层3个部分组成, 如图 1所示。
|
Download:
|
| 图 1 云系统的基本架构 | |
由图 1可知, 云系统的功能分为2个部分。第1部分主要完成对系统安全性的评测, 第2部分是在第1部分的基础上, 评价系统中设备的安全性或受攻击的难易程度。流量分析、漏洞检测、入侵检测作为不同的应用部署在云平台上, 用于分析虚拟主机的安全状况。
2.1 流量的分析与评估通过分析由云产生的网络流量, 结合服务器的配置状态, 动态地选择协议识别的方法。基于BP网络的协议识别的训练主要有基于已有标准数据集的训练和基于现有数据集的训练。标准数据集使用英国剑桥大学提供的08simple数据集[19]和Wireshark提供的数据集。基于深度报文检测的协议识别采用L7 Filter提供的协议特征包, 基于DFA协议读取IP包, 并对应用层协议进行匹配, 将协议类型转化为正则表达式。
为进一步提升云系统的处理能力, 本文提出4级流水化的PF_RING处理方式, 如图 2所示。
|
Download:
|
| 图 2 4级流水化PF_RING基本结构 | |
具体流程如下:
1) 网络流量经网卡提供给支持网络会话平衡的硬件, 虚拟化PF_RING线程队列。
2) 对任务线程中的网络报文进行预处理。
3) 分析并匹配网络报文, 其结果用于流量分析。
4) 任务进程的输出, 以可视化方式显示流量分析结果。
2.2 基于神经网络的分析方法云流量分析过程选取英国剑桥大学和Wireshark提供的数据集对BP神经网络进行训练, 云入侵检测过程选用Snort提供的规则集进行学习, 具体如算法1所示。BP神经网络的模型结构如图 3所示, 其由3层神经元构成, 包括输入层、隐藏层和输出层。输入层的神经元数量由输入数据的类型决定。隐藏层神经元的数量计算公式如下:
| $ S=\sqrt{\left( M+2 \right)N} $ | (1) |
|
Download:
|
| 图 3 BP神经网络结构 | |
其中, M和N分别表示输出层和输入层的神经元数量, 激活函数选择对数S形函数。
算法1 本文神经网络训练算法
输入 网络流量数据集或入侵检测规则集
输出 训练器
1.Begin
2.Init(Connectivity, Node Value)//初始化连接权值和//节点阈值
3.S=Input(Sample)//取样本
4.compute_hidden(S)//计算隐藏节点输出
5.eroor=compute_hidden_out_error(s)//计算隐藏层和//输出层误差
6.if error < Set_value
7.go to step 3
8.else
9.go to step 11
10.end if
11.end
2.3 安全评价算法本文针对云系统不能对自身安全状态进行评估的问题, 提出最佳攻击选择算法。该算法从攻击者的角度考虑被攻击目标的安全性, 进而评价系统整体的安全性, 为管理者提供依据, 降低攻击成功的概率。云系统的安全评价算法由八元组构成(T, IT, OT, DI, VN, VV, V, D), 代表某节点的状况。其中, T表示节点的平均流量, IT表示入口流量情况, OT表示出口流量情况, DI表示节点的重要等级, 包括重要、中等、低3级, 取值范围为(3, 2, 1), VN表示节点的漏洞数, VV表示漏洞的综合重要程度, V表示某一漏洞的重要程度, 包括危险、重要、中等、低4级, 取值范围为(4, 3, 2, 1), D表示日平均流量与重要等级的关系。
节点的网络流量计算以小时为计算窗口, 1天分为24个时间段。日平均出口流量的计算过程如下:
| $O{{T}_{\text{outpu}{{\text{t}}_{i}}}}=\frac{\sum\limits_{t=1}^{24}{O{{T}_{\text{outpu}{{\text{t}}_{i(t)}}}}}}{24} $ | (2) |
日平均入口流量计算过程如下:
| $ I{{T}_{\text{inpu}{{\text{t}}_{i}}}}=\frac{\sum\limits_{t=1}^{24}{I{{T}_{\text{inpu}{{\text{t}}_{i(t)}}}}}}{24} $ | (3) |
日平均流量计算过程如下:
| $ {{T}_{i}}=\frac{O{{T}_{\text{outpu}{{\text{t}}_{i}}}}+I{{T}_{\text{inpu}{{\text{t}}_{i}}}}}{2} $ | (4) |
日平均流量占节点所在区域总流量的比例的计算过程如下:
| $ {{\theta }_{i}}=\frac{{{T}_{i}}}{\sum\limits_{i=1}^{n}{{{T}_{i}}}} $ | (5) |
平均漏洞重要程度VV的计算过程如下:
| $V{{V}_{i}}=\sum\limits_{t=1}^{n}{\frac{{{V}_{it}}}{n}} $ | (6) |
其中, t表示某一漏洞的重要性取值。
日平均流量与节点重要等级的关系如下:
| $ {{D}_{i}}=D{{I}_{i}}\times {{\theta }_{i}} $ | (7) |
节点i的攻击性计算如下:
| $ Chicke{{n}_{i}}={{D}_{i}}\times V{{V}_{i}}\times V{{N}_{i}} $ | (8) |
最佳攻击选择算法的具体描述如下:
算法2 最佳攻击选择算法
输入 T、IT、OT、DI、VN、VV、V、D
输出 Chicken值由大到小的排列
1.Begin
2.While i < =节点总数
3.根据式(2)计算日平均出口流量
4.根据式(3)计算日平均入口流量
5.根据式(4)计算日平均流量
6.根据式(5)计算日平均流量占节点所在区域中总流量的比例
7.根据式(6)计算平均漏洞重要程度VV
8.根据式(7)计算日平均流量与节点重要等级的关系
9.根据式(8)计算攻击性Chicken
10.End While
11.对所有结点进行排序
12.End
3 实验结果与分析 3.1 实验环境搭建云系统中的安全性测试主要通过分析云平台上虚拟机的网络流量、网络入侵行为、虚拟机漏洞等实现。实验拓扑如图 4所示, 其由2个私有云组成, 云平台的配置信息如表 1所示。实验测试设备选用银河系列刀片机, 安装CentOS 6.4, 64 bit操作系统, 选用有1个端口的10 GB网卡。
|
Download:
|
| 图 4 云系统实验拓扑 | |
|
下载CSV 表 1 云平台配置信息 |
本文在不同网络流量环境下对NTAS、Wireshark以及本文算法的系统进行报文捕获测试, 云系统数据流量范围选取1 Gb/s~10 Gb/s, 实验结果如图 5所示。由图 5可知, 本文算法的云系统的报文捕获率达97.6%以上, 报文捕获能力优于Wireshark系统和NTAS系统, 具备在高速网络环境下对网络数据进行实时分析处理的能力。
|
Download:
|
| 图 5 3种系统的报文捕获能力对比 | |
本文选取英国剑桥大学和Wireshark提供的数据集对神经网络进行训练。在实时网络环境下, 采用DFA、BP、Port[20]3种方法对各协议网络流量的识别能力进行测试, 结果如图 6所示。由图 6可知, 采用基于DFA的多状态匹配法和基于BP神经网络的算法识别效果较好, 且DFA方法对已有协议的识别率较高, 对未知协议的识别没有BP方法好。
|
Download:
|
| 图 6 3种方法对各种协议的识别结果对比 | |
本文在高速网络环境下对云系统的安全性进行评估, 选取Snort算法在TNAPI、Libpcap 2种底层模块上的入侵测试结果与本文算法的系统进行对比, 结果如图 7所示。由图 7可知, 本文算法在1 Gb/s~10 Gb/s的网络流量下, 最大入侵防护能力达98.7%, 最低入侵防护能力达87.3%, 平均入侵防护能力为94.1%, 明显优于其他2种算法。
|
Download:
|
| 图 7 3种算法的入侵检测能力对比 | |
本文基于对网络流量分析技术、网络入侵检测、脆弱性评估方法等的研究, 提出一种在云系统上的安全性增强算法。在流量分析与评估时, 通过4级流水化PF_RING处理方式提升云系统的吞吐率, 并将基于BP神经网络的分析方法应用于安全检测。采用最佳选择算法对云系统的安全性进行评价。实验结果表明, 该算法能够对云系统中的网络流量捕获、漏洞检测等进行实时处理, 增强其安全性, 为云系统的防护提供参考。下一步将优化云系统安全评价算法及PF_RING流水线结构, 以提高在高速网络环境下云系统的安全防护能力。
| [1] |
ZISSIS D, LEKKAS D. Addressing cloud computing security issues[J]. Future Generation Computer Systems, 2012, 28(3): 583-592. DOI:10.1016/j.future.2010.12.006 ( 0)
|
| [2] |
WANG Cong, WANG Qian, REN Kui, et al.Privacy-preserving public auditing for data storage security in cloud computing[C]//Proceedings of the 29th IEEE International Conference on Computer Communications, Joint Conference of the IEEE Computer and Communications Societies.Washington D.C., USA: IEEE Press, 2010: 1-9.
( 0)
|
| [3] |
HONG Gang, HEYGSTER G, NOTHOLT J, et al. Simulations of microwave brightness temperatures at AMSU-B frequencies over a 3D convective cloud system[J]. International Journal of Remote Sensing, 2010, 31(7): 1781-1800. DOI:10.1080/01431160902926640 ( 0)
|
| [4] |
SULLIVAN M.Tribeca: a stream database manager for network traffic analysis[C]//Proceedings of International Conference on Very Large Data Bases.New York, USA: ACM Press, 1996: 594.
( 0)
|
| [5] |
TEUTON J, PETERSON E, NORDWALL D, et al.LINEBACkER: bio-inspired data reduction toward real time network traffic analysis[C]//Proceedings of the 6th International Symposium on Resilient Control Systems.Washington D.C., USA: IEEE Press, 2013: 170-174.
( 0)
|
| [6] |
JACK K, ROWELL D, FUGUANG S H I, et al.Network traffic analysis using a flow table: US 8169910B1[P].2013-04-30.
( 0)
|
| [7] |
SOMMER R, PAXSON V.Outside the closed world: on using machine learning for network intrusion detection[C]//Proceedings of 2010 IEEE Symposium on Security and Privacy.Washington D.C., USA: IEEE Press, 2010: 305-316.
( 0)
|
| [8] |
CORCHADO E, HERRERO Á. Neural visualization of network traffic data for intrusion detection[J]. Applied Soft Computing, 2011, 11(2): 2042-2056. DOI:10.1016/j.asoc.2010.07.002 ( 0)
|
| [9] |
KOTENKO I, STEPASHKIN M.Attack graph based evaluation of network security[C]//Proceedings of Communications and Multimedia Security.Berlin, Germany: Springer, 2006: 216-227.
( 0)
|
| [10] |
ALBERTS C J, DOROFEE A. Managing information security risks:the OCTAVE approach[M]. Boston, USA: Addison-Wesley Longman Publishing, 2002.
( 0)
|
| [11] |
CHAPMAN C, WARD S. Project risk management:processes, techniques and insights[M]. Hoboken, USA: Wiley, 1996.
( 0)
|
| [12] |
RITCHEY R W, AMMANN P.Using model checking to analyze network vulnerabilities[C]//Proceedings of 2000 IEEE Symposium on Security and Privacy.Washington D.C., USA: IEEE Press, 2000: 156-165.
( 0)
|
| [13] |
HA S, SHEYNER O, WING J M.Minimization and reliability analyses of attack graphs [EB/OL].[2018-05-20].http://pdfs.semanticscholar.org/2480/93713c93916ad4063f916294d1fac683aa7d.pdf.
( 0)
|
| [14] |
LYE K, WING J M. Game strategies in network security[J]. International Journal of Information Security, 2005, 4(1/2): 71-86. ( 0)
|
| [15] |
ROTHMAIER G, KRUMM H.A framework based approach for formal modeling and analysis of multi-level attacks in computer networks[C]//Proceedings of International Conference on Formal Techniques for Networked and Distributed Systems.Berlin, Germany: Springer, 2005: 247-260.
( 0)
|
| [16] |
MADAN B B, GOŠEVA-POPSTOJANOVA K, VAIDYANATHAN K, et al. A method for modeling and quantifying the security attributes of intrusion tolerant systems[J]. Performance valuation, 2004, 56(1): 167-186. ( 0)
|
| [17] |
SINGH S, LYONS J, NICOL D M.Fast model-based penetration testing[C]//Proceedings of the 2004 Winter Simulation Conference.Berlin, Germany: Springer, 2004: 309-317.
( 0)
|
| [18] |
KOTENKO I, STEPASHKIN M.Attack graph based evaluation of network security[C]//Proceedings of IFIP International Conference on Communications and Multimedia Security.Berlin, Germany: Springer, 2006: 216-227.
( 0)
|
| [19] |
LI Wei, CANINI M, MOORE A W, et al. Efficient application identification and the temporal and spatial stability of classification schema[J]. Computer Networks, 2009, 53(6): 790-809. DOI:10.1016/j.comnet.2008.11.016 ( 0)
|
| [20] |
张伟, 解争龙, 丁要军, 等. GPU Openflow海量网络数据处理模型[J]. 计算机应用, 2014, 34(8): 2243-2247. ( 0)
|
2019, Vol. 45

0)