APP下载

基于实用拜占庭容错的物联网入侵检测方法

2019-08-27潘建国李豪

计算机应用 2019年6期
关键词:低能耗入侵检测支持向量机

潘建国 李豪

摘 要:物联网入侵的检测率虽高,但面临节点能力消耗过大的问题,为此提出一种基于共识的实用拜占庭容错(PBFT)算法的入侵检测方法。首先,使用支持向量机(SVM)进行预训练得到入侵检测判定规则,并将训练规则应用于物联网中的每个节点;然后,选举出部分节点对网络中其他节点进行主动入侵检测,同时将自身的检测结果向其他节点公布;最后,每个节点依据PBFT算法判断其他节点的状态,使检测结果在系统内达到一致性。在NSL-KDD数据集上使用TinyOS进行仿真的实验结果表明,所提方法与集成入侵检测系统(IIDS)和双重降维双重检测(TDTC)方法相比,能量消耗平均降低12.2%和7.6%,能够有效地降低物联网的能量消耗。

关键词:物联网;实用拜占庭容错;入侵检测;低能耗;支持向量机

中图分类号: TP393.08

文献标志码:A

Abstract: Current Internet of Things (IoT) networks have high detection rate of known types of attacks but the network node energy consumption is high. Aiming at this fact, an intrusion detection approach based on Practical Byzantine Fault Tolerance (PBFT) algorithm was proposed. Firstly, Support Vector Machine (SVM) was used for pre-training to obtain the intrusion detection decision rule, and the trained rule was applied to each node in IoT. Then, some nodes were voted to perform the active intrusion detection on other nodes in the network, while announce their detection results to other nodes. Finally, each node judged the state of other nodes according to PBFT algorithm, making the detection results reach consistency in the system. The simulation results on NSL-KDD dataset by TinyOS show that the proposed approach reduces the energy consumption by 12.2% and 7.6% averagely and respectively compared with Integrated Intrusion Detection System (IIDS) and Two-layer Dimension reduction and Two-tier Classification (TDTC) approach, effectively reducing the energy consumption of IoT.

Key words: Internet of Things (IoT); Practical Byzantine Fault Tolerance (PBFT); intrusion detection; low energy consumption; Support Vector Machine (SVM)

0 引言

近年來,物联网因具有节点数量大、低功耗、部署方法便捷等优点,在设备监控、环境检测、安保消防等领域得到了飞速发展,与此同时,其安全性问题也受到越来越多研究者的关注。传统被动防御的安全策略已经不能有效地保证物联网安全运行,如黑洞攻击、能源耗尽攻击和女巫攻击等不能被有效识别并防御[1]。入侵检测技术作为一种主动防御策略,通过采集网络中关键节点的数据进行分析,可以在攻击者发起攻击之前采取防御措施,有效保系统的安全[2-3]。

物联网入侵检测系统主要完成以下功能:采集数据、识别入侵行为、识别入侵者、采取相应的防御措施[4]。目前,依托于物联网海量数据,研究人员提出了综合先验知识和机器学习的入侵检测方法,取得了比较好的检测效果。但是,由于物联网中网络节点一般由电池进行供电,其能量资源受限。因此,如何在能量受限的情况下使入侵检测系统能够长时间可靠运行成为当下的研究热点。

Wang等[5]提出了一种集成入侵检测系统(Integrated Intrusion Detection System, IIDS),IIDS将物联网网络结构分成三层:在顶层IHIDS(Intelligent Hybrid IDS)层进行异常检测和特征检测,并对新的攻击类型进行学习,并将学习结果传递给中间层HIDS;HIDS对攻击类型进行识别;在底层mIDS(misuse IDS)进行特征检测,对正常数据进行过滤。由于加入了IHIDS进行二次学习,提升了对未知攻击的检测准确率;但是带来了较高的资源消耗。Loo等[6]针对路由攻击提出了一种基于特征筛选的检测方法,对路由攻击的检测进行优化;但对其他攻击类型的检测率没有提升。Pajouh等[7]对现有网络结构进行分析,提出了双重降维双重检测(Two-layer Dimension reduction and Two-tier Classification, TDTC)的方法,通过特征检测[6]筛选已知攻击类型的攻击节点,再通过异常检测判断未确定节点的可信性。该方法通过特征检测来规避异常检测的高额开销;但是同时带了较高的误报率。Sedjelmaci等[8]和刘雅菲等[9]分别提出了基于博弈论(Game Theory, GT)的入侵检测方法,其核心是通过收益比来遏制攻击节点发起攻击,通过减少入侵检测次数达到降低资源消耗的目的;但该种模型需要对攻击节点的行为模式进行额外计算。Lin等[10]提出了一种基于投票的入侵检测方法,该方法采用检测率最高的节点的检测结果作为系统其他节点的检测结果;但当该节点遭受攻击后会大幅影响系统的稳定性。

目前,物联网入侵检测系统工作时能量消耗主要源于入侵检测时的计算开销,单个节点的入侵检测策略的优化对能量消耗的减少影响很小,因此物联网入侵检测方法的研究集中于减少检测次数方向。实用拜占庭容错(Practical Byzantine Fault Tolerance, PBFT) [11]证明在满足节点总数N≥3m+1(m为恶意节点数量)的情况下,系统是可靠和稳定的。为了实现物联网入侵检测高检测率的同时降低能量消耗,本文引入基于PBFT的选举机制,选择可信度较高的部分节点进行入侵检测,待检测结束后将投票结果向网络中的全部节点公布,完成物联网入侵检测过程。

1 PBFT算法

1.1 拜占庭容错系统

PBFT模型源于拜占庭将军问题[12],该问题的核心思想可以描述为,当节点总数为N,恶意节点为m时,若N≥3m+1时,恶意节点的决定不会对系统产生影响。

为简化证明过程,以一个节点发送决定给其他节点的形式来证明。系统的稳定运行需要以下前提条件:

IC1 所有正常节点能无误地处理接收到的决定。

IC2 如果发送节点是正常的,那么所有正常节点能正确处理其决定。

定义1 majority(node1,node2,…,noden)为统计数据中出现次数最多的结果。其中,nodei表示一个节点对其他节点的检测结果。

定义2 OM(0)。

1)检测节点将决定发送给其他节点。

2)接收节点采用接收到的检测结果。如果没接收到检测节点的检测结果,则将该检测节点标记为异常状态。

定义3 OM(m)。

1)发送者将决定发送给其他节点。

2)对于每个接收节点i,decisioni是每个接收节点i收到的决定,如果没接收到某检测节点的检测结果,则将该检测节点标记为异常状态。接收节点i在OM(m-1)中作为发送节点将决定发送给另外N-2个节点。

3)对于每个接收节点j,并且j≠i,decisionj是节点j接收到的从第2)步中的节点i发送过来的决定(使用OM(m-1)算法)。如果没有收到第2)步中节点i的决定,则将该检测节点标记为异常状态。最后节点j使用majority(node1,node2,…,noden)得到最终决定。

引理 对于任意m和k,如果有超过2k+m个正常节点和最多k个恶意节点,那么算法OM(m)满足IC2。

证明 当m=0时,OM(0)在节点是正常的时候满足IC2。

当m>0时,首先节点将决定传递给n-1个其他节点,然后每个节点对n-1个节点执行OM(m-1)算法。因为假设了n>2k+m,所以n-1>2k+(m-1)≥2k,这样每轮OM(m-k)算法中正常节点收到的决定都是majority(node1,node2,…,noden)。

定理1 对于任意m,如果有超过3m个节点和最多m个恶意节点,算法OM(m)满足条件IC1 和条件IC2。

证明 当n=4,m=1时:

1)假定节点3为恶意节点,以节点2作为首个发布者为例:

a)节点2执行算法OM(1)将自己的决定发送给其他3个节点,它们都正确地收到了命令。

b)每个收到决定的节点都作为发布者执行算法OM(0),将自己的决定转发给其余节点,因为节点3是恶意节点,所以它给节点2传递的结果是错误结果。节点2最后根据majority(node1,node2,…,noden)函数来决定命令。

节点3无法干扰节点2的结果,对其他两个节点也一样。

2)假定节点3为恶意节点,且为首个发布者:

a)节点3向其他节点发送了恶意的决定。

b)其他节点收到决定后,执行OM(0)向所有的节点发送自身的决定,这样所有节点接收到的决定不相同,其他节点通过majority(node1,node2,…,noden)函数判断最终结果,因此节点3无法达到目标。

当m>1时,假定第1)轮中节点是正常节点,那么将引理中k设为m,则OM(m)满足IC2、IC1。

若第1)轮为恶意节点,则第2)轮中最多就只有m-1个恶意節点,又因为有3m个正常节点,所以正常节点的总数超过3m-1,且有3m-1>3(m-1)。通过归纳法可以证明OM(m-1)满足IC1和IC2。当任意两个正常节点在OM(m-1)过程中获得相同决定,那么在OM(m)中每个正常节点可以得到majority(node1,node2,…,noden),可知满足条件IC1和IC2。

因此,从全部N个节点中选举2N/3+1个节点即可保证全部节点的最终决定一致。

1.2 一致性协议

为保证每个节点在入侵检测过程中都能够按照一个确定顺序选举入侵检测节点、进行入侵检测、检测结果公布、对结果进行统计与处理,所有节点应遵循同样的一致性协议。在入侵检测系统的工作过程中,一致性协议至少包含三个阶段:节点选举、结果公布、结果统计。其具体可以描述为:1)对于一个包含3m+1个节点的拜占庭容错系统,选举2m+1个可信节点进行入侵检测。2)每个被选举节点在入侵检测完成后将自身的检测结果向网络中其他节点公布。3)对每次入侵检测结果的统计在接收到第一个结果后开始进行,当节点i接收到的decisioni中关于节点j的统计结果大于m+1时,节点j的可信度确定。一致性协议运行示意图如图1所示。

2 基于PBFT的入侵检测

2.1 基于PBFT的入侵检测流程

将一致性协议融入PBFT,提出IPBFT(Improved PBFT),用于物联网入侵检测。物联网在构建时对每个节点进行初始化。首先使用支持向量机(Support Vector Machine, SVM)算法对现有数据集进行预训练,得到的分类标准作为入侵检测异常节点的检测引擎,将该规则写入物联网中每个节点。每个节点运行同样的入侵检测规则可以保证物联网中入检测标准的一致性。

将设备的可信状态分为可信状态、可疑状态、恶意状态等三种状态,不同的可信状态在选举过程中拥有不同的权值w,w∈[0,1],可信状态权值为1,可疑状态权值为0,每个节点的可信度为c,网络内每个节点拥有独立的入侵检测系统(Intrusion Detection System, IDS)。

物联网节点初始化进行组网时,默认簇头节点均为可信节点。新加入节点将可信度置0。每个节点具有独立的身份标识ID,每个节点独立保存其他节点的历史可信状态表TSi。基于IPBFT的入侵检测工作流程如图2所示。

2.2 节点的选举

在本文背景中,选举总数大于2N/3+1时,可以保证系统的可信性。每个节点各自的可信状态可被全部节点得知,候选节点的范围将控制在拥有高可信度节点的范围内,可以使结果更趋于真实。以wi代表某节点拥有权值,以权值代表该节点的可信度。随机从N个节点中选举n个节点,选举结果的可信度为:

2.3 主动入侵检测

物联网中的节点对其他节点的选举结果进行合并及统计,一旦选举节点数量到达2m+1,则选举结果确定,保存当前应进行入侵检测的节点列表。若自身被选举,则进行主动入侵检测;否则等待。

被选举节点对网络数据进行采集,标准化处理成形如NSL-KDD数据集[13]的格式,并使用预训练好的检测引擎进行检测,对物联网中其他节点的行为模式作出判断。此过程中每个节点的检测引擎独立工作互不影响。

2.4 结果公布与可信状态更新

进行入侵检测的节点将检测结果对本网络中的全部节点公布。每个节点只接收GID中IDS的检测结果,并对接收到的所有检测结果进行统计,统计数目最高的可信状态即为节点的当前可信状态,并更新TSi。

每个节点存储每次检测结果。每个节点在当前入侵检测结束后更新权值和可信状态,其可信度更新为:

3 实验结果及分析

3.1 网络拓扑结构

本文中采用的物聯网簇型结构主要由簇头节点及普通节点组成,是实际应用中常见的拓扑结构[14]。普通节点即传感器节点,是物联网网络中的终端节点。簇头节点即物联网中的网关设备,负责管理簇内节点,并向外部报告数据。IDS运行于簇头节点,每个簇头节点在与其他簇头节点之间基于PBFT进行入侵检测。具体的网络拓扑结构如图3所示。

3.2 数据集预处理

实验采用NSL-KDD数据集作为训练数据集。该数据集每条数据包含41项特征及1个分类标签,分类标签将数据分为4类攻击(Abnormal)类型和1类正常(Normal)类型,如表1所示。相较于KDD CUP99数据集去除了部分冗余数据,训练出的模型具有更好的检测效果。

3.3 实验评价标准

入侵检测方法的安全性能主要体现在检测率指标上,具体为检测出的恶意节点数量占网络中全部恶意节点总数的比例。在此采用通用评价标准如下:1)TP(True Positive)表示样本正确判断为正类的样本数;2)TN(True Negative)表示样本正确判断为负类的样本数;3)FP(False Positive)表示样本错误判断为负类的样本数。

3.4 实验方案设计

为验证本文提出的入侵检测方法IPBFT,使用SVM作为异常检测算法对NSL-KDD数据集进行学习获取入侵检测规则。使用TinyOS及TOSSIM工具[15]对网络节点及参数进行仿真。TinyOS定义了两类设备:微控制器和外围设备。本实验中使用微控制器进行流程控制及执行入侵检测规则,使用Active Message层对无线射频模块进行控制,完成节点间的通信。根据文献[5,8]提出的物联网整体入侵检测方法,结合本文提出的基于共识的方法进行仿真实验。具体的仿真环境参数如表2所示。

3.5 结果分析

实验分别对拥有不同数量网络节点且初始状态拥有不同比例异常节点的网络进行仿真,不同网络状态下的实验结果如图4所示。从图4可以看出,采用双重降维再进行检测策略的TDTC方法具有最低的检测率,原因是双重降维会降低训练数据集的精度。IPBFT由于采用了PBFT模型,并引入一致性协议,在网络中节点数量较多的情况下能够拥有更高的检测率,与采用三层结构并进行多次入侵检测的IIDS相近。

4 结语

本文提出了一种物联网中基于PBFT的入侵检测方法IPBFT,该方法具有如下特点:1)引入选举机制,减少了进行入侵检测节点数量,降低了能量开销;2)节点将检测结果进行发布,使系统节点拥有一致的检测结果;3)检测率比TDTC方法有提高,而误报率则大幅下降,且在不同攻击节点数量的物联网中保持稳定的水平,因此系统的鲁棒性得到提升。实验结果表明,与现有的IIDS和TDTC方法相比,在不影响对已知攻击类型识别和检测的前提下,IPBFT能够降低能量消耗,可以对常见的攻击类型进行有效的入侵检测。然而,IPBFT中节点选举具有随机性,单个节点可能因为每次都被选举而导致能量消耗速度过快,因此接下来将考虑引入能量消耗模型,在选举时综合考虑节点的可信状态和节点剩余能量,确保物联网能够长期稳定工作。

参考文献 (References)

[1] 刘海燕,张钰,毕建权,等.基于分布式及协同式网络入侵检测技术综述[J].计算机工程与应用,2018,54(8):1-6,20.(LIU H Y, ZHANG Y, BI J Q, et al. Review of technology based on distributed and collaborative network intrusion detection [J]. Computer Engineering and Applications, 2018, 54 (8): 1-6, 20.)

[2] JOKAR P, LEUNG V C M. Intrusion detection and prevention for ZigBee-based home area networks in smart grids [J]. IEEE Transactions on Smart Grid, 2016,9(3): 1800-1811.

[3] SEDJELMACI H, SENOUCI S M. Efficient and lightweight intrusion detection based on nodes' behaviors in wireless sensor networks [C]// Proceedings of the IEEE 2013 Global Information Infrastructure Symposium. Piscataway, NJ: IEEE, 2013: 1-6.

[4] ARRINGTON B , BARNETT L E , RUFUS R , et al. Behavioral Modeling Intrusion Detection System (BMIDS) using Internet of Things (IoT) behavior-based anomaly detection via immunity-inspired algorithms [C]// Proceedings of the IEEE 2016 25th International Conference on Computer Communication and Networks. Piscataway, NJ: IEEE, 2016: 1-6.

[5] WANG S S, YAN K Q, WANG S C, et al. An integrated intrusion detection system for cluster-based wireless sensor networks [J]. Expert Systems with Applications, 2011, 38(12): 15234-15243.

[6] LOO C E, NG M Y, LECKIE C. Intrusion detection for routing attacks in sensor networks [J]. International Journal of Distributed Sensor Networks, 2006, 2(4): 313-332.

[7] PAJOUH H H, JAVIDAN R, KHAYMAI R, et al. A two-layer dimension reduction and two-tier classification model for anomaly-based intrusion detection in IoT backbone networks [EB/OL]. [2018-08-18]. IEEE Transactions on Emerging Topics in Computing, 2016. https://core.ac.uk/download/pdf/74220285.pdf.

[8] SEDJELMACI H, SENOUCI S M, TALEB T. An accurate security game for low-resource IoT devices [J]. IEEE Transactions on Vehicular Technology, 2017, 66(10): 9381-9393.

[9] 劉雅菲,刘宴兵.WSN中一种新的基于重复博弈的入侵检测研究[J].计算机应用研究,2013,30(5):1540-1543.(LIU Y F, LIU Y B. Novel research of intrusion detection based on repeated game in wireless sensor network [J]. Application Research of Computers, 2013, 30(5): 1540-1543.)

[10] LIN Y-D, LAI Y-C, HO C-Y, et al. Creditability-based weighted voting for reducing false positives and negatives in intrusion detection [J]. Computers & Security, 2013, 39(Part B): 460-474.

[11] COWLING J, MYERS D, LISKOV B, et al. HQ replication: a hybrid quorum protocol for byzantine fault tolerance [C]// Proceedings of the 2006 7th USENIX Symposium on Operating Systems Design & Implementation. Berkeley, CA: USENIX Association, 2006: 177-190.

[12] 范捷,易乐天,舒继武.拜占庭系统技术研究综述[J].软件学报,2013,24(6):1346-1360.(FAN J, YI L T, SHU J W. Research on the technologies of Byzantine system [J]. Journal of Software, 2013, 24(6): 1346-1360.)

[13] DHANABAL L, SHANTHARAJAH D S. A study on NSL-KDD dataset for intrusion detection system based on classification algorithms [J]. International Journal of Advanced Research in Computer and Communication Engineering, 2015, 4(6): 446-452.

[14] 柳亚男,王箭,张楠楠.层次型传感器网络簇内密钥协商方法[J].系统工程与电子技术,2011,33(7):1633-1637.(LIU Y N, WANG J, ZHANG N N. Intra-cluster key agreement in hierarchical sensor networks [J]. Systems Engineering and Electronics, 2011, 33(7): 1633-1637.)

[15] LEVIS P, LEE N, WELSH M, et al. TOSSIM: accurate and scalable simulation of entire TinyOS applications [C]// SenSys 2003: Proceedings of the 1st International Conference on Embedded Networked Sensor Systems. New York: ACM, 2003: 126-137.

猜你喜欢

低能耗入侵检测支持向量机
河北今明两年符合条件的项目,原则上至少要建1栋超低能耗建筑
无线传感器网络环境下低能耗拓扑控制策略
基于入侵检测的数据流挖掘和识别技术应用
艺术类院校高效存储系统的设计
动态场景中的视觉目标识别方法分析
论提高装备故障预测准确度的方法途径
基于熵技术的公共事业费最优组合预测
基于关联规则的计算机入侵检测方法
基于支持向量机的金融数据分析研究
大截面烧卫生瓷隧道窑的节能分析