CN110475246A - 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 - Google Patents
基于孤立森林和序贯概率比检验的恶意锚节点检测方法 Download PDFInfo
- Publication number
- CN110475246A CN110475246A CN201910805300.XA CN201910805300A CN110475246A CN 110475246 A CN110475246 A CN 110475246A CN 201910805300 A CN201910805300 A CN 201910805300A CN 110475246 A CN110475246 A CN 110475246A
- Authority
- CN
- China
- Prior art keywords
- anchor node
- node
- malice
- anchor
- sample
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 62
- 238000001617 sequential probability ratio test Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 21
- 230000007246 mechanism Effects 0.000 claims abstract description 12
- 238000004891 communication Methods 0.000 claims abstract description 9
- 230000002159 abnormal effect Effects 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 238000012935 Averaging Methods 0.000 claims description 3
- 230000005856 abnormality Effects 0.000 claims description 3
- 239000004744 fabric Substances 0.000 claims description 3
- 238000012216 screening Methods 0.000 abstract description 7
- 238000005259 measurement Methods 0.000 description 11
- 238000012795 verification Methods 0.000 description 9
- 230000004807 localization Effects 0.000 description 7
- 238000007689 inspection Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000011478 gradient descent method Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000002153 concerted effect Effects 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013450 outlier detection Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 241000545442 Radix Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/009—Security arrangements; Authentication; Protecting privacy or anonymity specially adapted for networks, e.g. wireless sensor networks, ad-hoc networks, RFID networks or cloud networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/121—Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
- H04W12/122—Counter-measures against attacks; Protection against rogue devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明公开了一种基于孤立森林和序贯概率比检验的恶意锚节点检测方法,该方法结合孤立森林算法和投票机制获得锚节点中的可靠信息,并利用可靠信息建立检测模型。该方法仅需单个测距算法进行测距,不需要利用多个测距算法进行测距,同时,避免了多种测距方法过程中其中一种完全未被攻击的假设,更适合真实场的使用,即不需要假设完全不受攻击。利用孤立森林筛选正常样本,投票机制筛选正常样本中的参考锚节点实现多重的挑选,确保参考锚节点的可靠性,从而间接的保证后续依据参考锚节点获得恶意锚节点的过程;还利用差值信息进行序贯概率比检验,进一步提高恶意锚节点的检测,提高锚节点的检测正确率,也提高了后续目标节点最终定位的准确性。
Description
技术领域
本发明涉及无线传感器网络领域,更具体地,涉及一种基于孤立森林和序贯概率比检验的恶意锚节点检测方法。
背景技术
无线传感器网络(WSN)的定位***所采用的定位算法通常以位置已知的锚节点作为参照来估算位置节点的位置,这要求锚节点提供的信息完全可靠。但是由于WSN本身的开放性,节点在定位过程中很可能遭受各种攻击。锚节点可能受到环境影响或者被敌对势力俘获而成为恶意锚节点,影响定位过程。而传统的定位方法目的在于提高定位精度和能量有效性,并未考虑网络受到攻击的情况。一般网络受到的攻击分为外部攻击和内部攻击,其中针对于网络遭受到外部攻击的情况中,WSN定位过程可采取的安全措施主要包括:距离边界协议,恶意锚节点检测以及基于鲁棒计算的节点安全定位。其中,恶意锚节点检测是指通过对定位技术和攻击模型进行分析,针对受攻击情况下的网络特点采用相应的策略检测并剔除网络中的异常信息,利用可信度较高的参考信息定位目标节点。
现有的恶意锚节点检测方法主要为LAD、DMBN、GD、MNDC等方案,其中LAD方案假设网络中的节点分布概率是已知的,若计算得到的检测节点的估计位置与观测位置相差超过阈值,则认为有入侵者存在,报告异常。DMBN方案将已知位置的锚节点伪装成一个未知节点,计算距离与测量距离进行比较,若误差超过预定阈值,说明存在发送虚假位置信息的锚节点。GD算法利用梯度下降法定位目标节点,并增加一个剪枝阶段,当总梯度达到一定的阈值时将对应梯度较大的一半锚节点视为恶意锚节点,并舍弃这一部分锚节点提供的信息。而MNDC方案则具体分为以下步骤:S1、从所有锚节点中选三个,结合自身位置和TOA测距信息通过三边定位法得到定位样本;S2、通过自适应DBSCAN聚类对样本进行分类,将被判定为正常样本次数超过总次数的一半的视为最终正常样本,并将其对应锚节点判定为良性锚节点并且作为参考,其余为疑似恶意锚节点;S3、利用RSSI和TOA在均不受攻击的情况下具有一致性这一特点,利用参考锚节点两种方法测距的差值计算参考误差区间;S4、对于恶意锚节点,RSSI测距不受攻击而TOA测距受攻击,两者不再具有一致性,用序贯概率比检验对疑似恶意锚节点进行检验,最后判断恶意锚节点。
现有的恶意锚节点检测方法中在使用上都存在缺陷,DMBN算法需要额外的硬件支持,而LAD算法则要求网络分布情况已知。MNDC虽然不需要上述的条件,但MNDC算法需要利用两种测距方式的一致性进行检验,所以MNDC要求在两种测距方式中有一种是测距方式的测距结果是准确的,即两种测距方式中有一种方式是不受攻击的,而这样的假设在实际生活中是难以实现的。此外,MNDC采用自适应DBSCAN来对定位样本进行分类,且将被判定为正常样本次数超过总次数的一半的视为最终正常样本,将其对应的所有锚节点均判定为正常,这样的方式在恶意锚节点比例较少时,能够取得比较理想的效果。然而,当恶意锚节点比例升高,很可能有恶意锚节点参与的定位样本落在正常样本中,从而被误判为正常样本,使部分恶意锚节点不能被检测。此外,现有的MNDC算法仅仅考虑非协调式攻击,无法检测在协调式攻击下的恶意锚节点。
发明内容
本发明旨在克服上述现有技术的至少一种不足,提供一种基于孤立森林和序贯概率比检验的恶意锚节点检测方法,基于单个测距算法进行测距,并利用孤立森林和投票机制获得的参考锚节点进行恶意锚节点检测,适用于WSN真实场景和状况;提高了检测恶意锚节点的准确率,减少了恶意锚节点定位样本误判为正常样本的概率,同时,适用于协调式攻击和非协调式攻击情况下的恶意锚节点检测。
本发明采取的技术方案是,一种基于孤立森林和序贯概率比检验的恶意锚节点检测方法,包括步骤:
S1、目标节点发出定位请求,在其通信范围内的N个锚节点向目标节点发送数据,N≥3,目标节点获得锚节点的位置信息以及锚节点与目标节点之间的测距信息,其中,测距信息通过同一种测距方法获得;目标节点发出请求后,在其通信范围的N个锚节点向目标节点发送自身位置,并在该过程中进行锚节点与目标节点之间的测距,测距信息则发至目标节点。在该过程中,测距使用同一种算法,保证后续使用的测距信息具有统一性。更重要的是,只需要一种测距算法即可进行后续的恶意锚节点检测,且该方式不需要测距算法未受到攻击的前提,与现有技术中的MNDC具有显著差别;现有技术MNDC进行恶意锚节点检测需假设使用的两种测距过程中有一个是完全不受攻击的。而本方式不仅不需要两个测距算法,而且不需要保证测距过程不受攻击,更适合真实场景的使用,去除了完全不受攻击的假设使恶意锚节点检测更真实和准确。
S2、任选N个锚节点中的m个锚节点对目标节点定位,3≤m≤N-r,将定位使用的m个锚节点以及对应的定位结果作为一个样本,在N个锚节点中共获得个样本;以m个锚节点为基数,并利用m个锚节点对目标节点进行定位,其中m为与定位算法匹配的锚点数;当使用三边测量定位算法进行定位时,m取值为3,当使用四边测距定位算法时,则m取值为4,此外,还有基于其他数量锚节点的定位算法,m则取值为定位算法所对应的锚节点数。在N个锚节点中使用任意m个锚节点进行定位,由于锚节点在锚节点组合之间是可以重复的,所以共获得个样本,其中单个样本中包含了定位结果、定位结果对应的m个锚节点。在获取样本的过程中,还标记了每一个定位结果所使用的锚节点的标号。在选取m值时,需满足m≤N-r,其中r代表N个锚节点中的恶意锚节点总数,即N个锚节点中至少存在m个非恶意锚节点,从而避免每个样本都包含了恶意锚节点误导的定位结果。当恶意锚节点数量未知时,使用者应选取定位所需最小m值,才能最大几率避免恶意锚节点的干扰,获得较多的正常样本。而在现有技术中的定位过程,为了实现准确的定位,至少需要3个锚节点进行三边定位,所以m最小值为3;而使用者根据已知N的数值、锚节点被攻击情况、无线传感网络锚节点异常数据、推测的恶意锚节点数量范围等,可选择性的使用特定的定位方法从而达到对应的研究目的,所以m取值不仅为3。
S3、基于孤立森林算法筛选出个样本中的正常样本,并基于正常样本和投票机制获得可信度高的g个参考锚节点,3≤g≤m,除参考锚节点外的锚节点均视为疑似恶意锚节点;g值的选取满足3≤g≤m,当g取值过大会导致检测率下降,为了保证定位结果则有必要选取具有较高检测率的g值,将g值限定在3至m范围内则能保证参考锚节点的定位结果,也保证了较高的检测率。锚节点分为良性锚节点和恶意锚节点,将只使用良性锚节点进行定位的定位结果视为正常样本,而只要使用的m个锚节点中有恶意锚节点,则视为异常样本。因为正常样本只受到测量误差以及定位算法误差的影响,所以相对来说会集中在目标节点的真实位置附近,因此正常样本的分布较为密集,而对于异常样本,由于受到攻击的影响,离目标节点的真实位置较远且分布稀疏。而孤立森林是一种非常有效的离群点检测方法,离群点就是指分布稀疏且离密度较高的区域远的数据点。利用孤立森林算法可以筛选出正常样本,再通过投票机制获取出现在正常样本中可信度较高的g个参考锚节点,用于后续的检测参考信息;基于可靠信息能够建立准确性更好的检测模型,提高恶意锚节点检测准确率。上述的可信度表示锚节点未被篡改位置或未被攻击的可信程度,可信度通过投票机制中的票数决定,g个参考锚节点则代表所有正常样本中可信程度排前的锚节点;同时,为了防止有恶意锚节点被误检为良性锚节点,除可信度较高的g个参考锚节点,有必要对剩余锚节点进行筛查,所以将剩余锚节点视为疑似恶意锚节点以进行进一步检测,减少恶意锚节点定位样本误判为正常样本的概率。
S4、记N个锚节点中的第i个锚节点与目标节点测距为di,记g个参考锚节点对目标节点定位获得的初步定位结果为Tf,记第i个锚节点与初步定位结果Tf的欧式距离为||Ai-Tf||,则di与||Ai-Tf||的差值记为Di=|di-||Ai-Tf|||,基于差值信息建立参考误差区间;对N个锚节点进行标号,并对每个锚节点与目标节点之间进行测距,记第i个锚节点与目标节点测距为di;可信度较高的g个参考锚节点对目标节点进行定位后获得初步定位结果Tf,则第i个锚节点与初步定位结果之间的欧氏距离为:||Ai-Tf||;记差值为Di=|di-||Ai-Tf|||,对于良性锚节点,Di只受定位算法误差以及噪声误差的影响,即差值是在一个可接受范围内的。对于恶意锚节点,差值还受到攻击项的影响,极大可能不在这个范围内。由于在孤立森林算法中所得到的参考锚节点我们判定为没有遭受攻击,所以可利用参考锚节点的差值信息计算参考误差区间,建立检测模型。
S5、基于差值和参考误差区间对疑似恶意锚节点进行序贯概率比检验,判断疑似恶意锚节点是否为恶意锚节点;并利用恶意锚节点外的所有锚节点对目标节点定位,获得最终定位结果。如果仅仅通过一次测距的结果是否超出参考误差区间来检测是否为恶意锚节点具有偶然性,检测性能较差。为了提高检测性能,可以利用多次测距的结果来进行检测,但每一次恶意锚节点检测都需多次测距而获得的样本参与,检验则较为不方便,为了节省检验次数,可利用序贯概率比检验的方法,有助于提高检测的效率。同时,在通过检测确认恶意锚节点后,可以利用剩余的所有锚节点进行最终定位,获得目标节点的最终定位结果。
在基于测距的定位方法中,恶意锚节点对于网络的攻击表现为对测距过程的干扰,根据其工作方式的不同,可以分为以下两种模式:
(1)非协同式攻击
假定攻击者在每个受攻击的节点上独立行动,并通过干扰向正在定位的节点报告的距离估计来防止精确定位。建模如下:
其中ni是独立高斯同分布的零均值高斯随机变量,即代表测量噪声。将攻击对测距的影响模拟为独立高斯同分布的高斯随机变量ui,其中μδ和分别代表非协同式攻击项的均值和方差。
(2)协同式攻击
多个恶意锚节点共同作用,使目标节点估计其位置为Tmal,Tmal可以是攻击者确定的任意点,从而对网络发起更强的攻击,建模如下:
协同攻击的强度根据恶意锚节点报告的位置和实际位置之间的距离da=||T-Tmal||来表征。
由于本发明是通过孤立森林进行离群点检测,所以能在定位过程中获得可靠的样本,避免了协同攻击下多个恶意锚节点的误导;同时,基于投票机制能够获得可靠的参考锚节点,能够避免非协同攻击下单个恶意锚节点的误导。所以,本申请方案对协同式攻击和非协同式攻击都适用。
优选的,m取值为3,g取值为3,m个锚节点对目标节点的定位过程以及g个参考锚节点对目标节点的定位过程均采用三边测量法进行定位。三边测量法又称三边测量定位算法或三边定位法,是现有技术中使用较多的定位算法,该算法中用于定位目标节点所需的锚节点数仅为3个,保证了相对准确定位的同时使N个锚节点对应的定位结果样本数增多,避免了因样本内锚节点数量过多而导致正常样本检测错误的状况;当样本内锚节点数量过多时,且小部分锚节点为恶意锚节点,则定位结果的主导仍为良性锚节点,样本的定位结果仍趋于正常样本的定位结果,则会发生异常样本检测为正常样本的误检状况。优选的,g取值同为3,因为基于相同的定位算法和样本内锚节点数量,有助于整体的计算过程;更优的,3个锚节点既保证了定位的稳定性,也避免了参考锚节点数量较多而可能发生的参考锚节点误判,提高参考锚节点的可靠程度。
优选的,所述投票机制具体为:对判定为正常样本的定位结果对应的锚节点进行投票,出现一次投一票,依据总票数从大到小进行排序,将票数排前的g个锚节点确定为参考锚节点,g值为通过参考锚节点获得初步定位结果的定位算法所需总锚节点数。利用孤立森林获取正常样本后,将在正常样本中锚节点出现的次数作为对锚节点的可靠程度即可信度做评判,在正常样本中出现次数越频繁,表明包含该锚点的定位结果越倾向集中和密集在一起,表明该锚节点越可靠。在通过投票机制获取正常样本中出现较频繁的g个参考锚节点后,利用g个参考锚节点对目标节点定位获得初步定位结果,而该初步定位结果同样是作为可靠信息而存在。其中,参考锚节点的个数g则与获得初步定位结果的定位算法所需锚节点数匹配,当获得初步定位结果时使用三边测量法,则g值为3,即使用三个参考锚节点。
所述步骤S3具体包括:
(1)利用孤立森林算法对个样本的定位结果进行异常检测;检测个样本定位结果的密集程度和分布,对所有样本的定位结果进行离群检测;
(2)根据检测结果对每个样本进行打分,分数越高越异常,分数越低越正常;利用孤立森林算法对每个样本的定位结果进行打分,分值为0-1之间,分数代表异常程度,即分数越高说明越异常,分数越低则为正常样本的可能性越大。
(3)根据分数对样本进行由低到高的排序,记前一半的样本为正常样本,记后一半样本为异常样本;孤立森林的打分后,将所有样本依据分数排序,分数由低到高,将排序后处于前一半的样本记为正常样本,处于后一半的样本记为异常样本。即将分数低的一半作为正常样本,分数高的一半作为异常样本。孤立森林的打分能够表示样本的离群状态和分布,同时,为了保证参考锚节点具有较大的统计基数,选取分数低的一半样本为正常样本,提供足够多的的统计基数,提高可信程度。实际应用中,正常样本与异常样本的筛选条件还可根据实际检测而改变,如设置分数低的前1/3作为正常样本等。此外,正常样本的筛选还能基于孤立森林的具体打分值进行进一步的数值分析,从而获得特定数量的正常样本。
(4)基于正常样本中出现的锚节点和投票机制进行投票,获得票数高的g个参考锚节点,N个锚节点中除g个参考锚节点外均记为疑似恶意锚节点。除可靠的g个参考锚节点外,其他处于正常样本中的锚节点也有可能存在恶意锚节点,处于异常样本中的锚节点也存在良性锚节点,有必要将其余锚节点列为疑似恶意锚节点以进行进一步的检测。
步骤S4中g个参考锚节点对目标节点定位具体包括:
(1)对g个参考锚节点中的每个参考锚节点进行与目标节点的测距,且每个参考锚节点均与目标节点进行k次测距,并计算每个参考锚节点在k次测距状况下对应的测距平均值;其中k为正整数,k值越大,参考锚节点与目标节点之间的测距误差越小。
(2)根据每个参考锚节点的测距平均值以及每个参考锚节点的位置信息对目标节点进行定位,获得初步定位结果Tf。在获取每个参考锚节点与目标节点的测距平均值后,利用测距及参考锚节点位置对目标节点进行定位,优选的,g值可取为3,采用三边定位法对目标节点定位。
步骤S4中建立参考误差区间的步骤具体包括:
(1)对N个节点中的第i个锚节点与目标节点进行k次测距,并记k次测距中的第j次测距为dij,其中i、j均为正整数,计算第i个锚节点与初步定位结果Tf的欧式距离为||Ai-Tf||,则第i个锚节点第j次测距dij与||Ai-Tf||的差值为Dij=|dij-||Ai-Tf|||;其中Ai代表第i个锚节点。
(2)由于每个锚节点进行了k次测距,所以每个锚节点具有k个差值信息,将参考锚节点视为一个个体,并对参考锚节点另起标号,c=1,2,...,g,以差值信息视为样本,由于参考锚节点为N个锚节点的子集;
所以,对于第c个个体,样本的均值和方差分别为:
对不同个体的样本均值求平均,平均值定义为
并且对个体均值的分布的变异性进行估计:
根据每个个体的样本方差,个体内方差估计定义为其中,
则所有样本的方差总估计为:其中mh为测量次数的调和均数,由于所有个体的测量次数均为k次,所以有
(3)根据以上信息,得到参考锚节点差值信息的一致性区间,即参考误差区间[Dmin,Dmax],其中z1-a/2为标准正态分布1-a/2的上四分位数,a为显著性水平。
步骤S5具体包括:
(1)根据参考误差区间建立伯努利随机变量为:定义Zij=1的概率为p,并建立假设H0和H1:
H0假设为锚节点为良性锚节点的的情况,有p≤p0;
H1假设锚节点为恶意锚节点的情况,有p>p1;
其中p0和p1分别为预设的阈值;
(2)定义两类误检率:
定义假阴性率α:当H1成立时,p≤p0接受H0的概率,即恶意锚节点被判定为良性锚节点的概率;
定义假阳性率β:当H0成立时,p>p1接受H1的概率,即良性锚节点被判定为恶意锚节点的概率。
(3)利用目标节点与第i个疑似恶意锚节点的第j次测距下的差值Dij作为序贯概率比检验的检测样本,利用序贯概率比的相关性质,可以得到若j个样本中超过误差区间的个数为Sj,则有:
(a)Sj≤Lj,接受H0;
(b)Sj≥Uj,接受H1;
(c)Lj<Sj<Uj,不能确定,增大j继续检测(j=1,2,..,k);
其中,
(4)检测所有疑似恶意锚节点后获得S个恶意锚节点,并利用N-S个锚节点提供的信息,对比目标节点进行最终定位。通过对所有疑似恶意锚节点进行上述步骤的判断,得出所有恶意锚节点,即S个恶意锚节点。在获取恶意锚节点后,可以利用非恶意锚节点对目标节点进行最终定位,获得较为准确的结果。
优选的,最终定位采用最小二乘法进行定位。
与现有技术相比,本发明的有益效果为:基于单个测距算法进行测距,不需要利用多个测距算法进行测距,同时,避免了多种测距方法过程中其中一种完全未被攻击的假设,更适合真实场的使用,即不需要假设完全不受攻击。同时,利用有限锚节点之间相互组合,获得数量繁多的样本,为统计和筛选提供了较大的样本数量,使可靠信息的获得更加准确、更加可靠。利用孤立森林筛选正常样本,投票机制筛选正常样本中的参考锚节点实现多重的挑选,确保参考锚节点的可靠性,从而间接的保证后续依据参考锚节点获得恶意锚节点的过程,即提高恶意锚节点检测的准确性。同理,由于采取的多重筛选以及筛选少量的参考锚节点,协同式攻击或非协同式攻击都能够被应用,因为本方案并不是利用所有的定位结果。本方案还利用差值信息进行序贯概率比检验,进一步提高恶意锚节点的检测,提高锚节点的检测正确率,也间接的提高了后续目标节点最终定位的准确性。提高了定位精度,保证了定位的有效性。
附图说明
图1为本发明方法的流程图。
图2为非协同式攻击时在攻击项标准差下的GD、本发明算法的TPR、FPR变化;
图3为非协同式攻击时在攻击项标准差下的GD、LS、本发明算法的平均定位误差变化;
图4为协同式攻击时在恶意锚节点报告的位置和实际位置之间的距离da下的GD、本发明算法的TPR、FPR变化;
图5为协同式攻击时在恶意锚节点报告的位置和实际位置之间的距离da下的GD、LS、本发明算法的平均定位误差变化;
图6为非协同式攻击时不同数量恶意锚节点下本发明算法的TPR变化。
具体实施方式
本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
实施例
在一个面积为60m×60m的正方形区域内随机部署30个锚节点和一个目标节点,其中有9个恶意锚节点。在进行的模拟中,在协同和非协同式攻击下测量噪声的标准差σn均设置为2m,非协同式攻击下攻击项的均值μδ设置为4m。
本申请方案流程如图1所示,包括多个阶段。
第一阶段:孤立森林确定参考锚节点
目标节点发出定位请求,在其通信范围内的30个锚节点向目标节点发送数据,目标节点获得锚节点的位置信息以及锚节点与目标节点之间的测距信息,其中,测距信息通过同一种测距方法RSSI(Received Signal Strength Indication)获得;
任选30个锚节点中的3个锚节点使用三边测量法对目标节点定位,将定位使用的3个锚节点以及对应的定位结果作为一个样本,在30个锚节点中共获得个样本;
利用孤立森林算法对个样本的定位结果进行异常检测,根据检测结果对每个样本进行打分,分数越高越异常,分数越低越正常;根据分数对样本进行由低到高的排序,记前一半的样本为正常样本,记后一半样本为异常样本;对判定为正常样本的定位结果对应的锚节点进行投票,出现一次投一票,依据总票数从大到小进行排序,将票数排前的3个锚节点确定为参考锚节点,除参考锚节点外的锚节点均视为疑似恶意锚节点;
第二阶段:建立监测模型
记30个锚节点中的第i个锚节点与目标节点测距为di,对第i个锚节点进行k次测距,则目标节点与第i个锚节点的第j次测距记录为dij,3个参考锚节点属于30个参考锚节点,所以对3个参考锚节点同样进行了k次测距,并获得了k次测距的平均值;基于该平均值和参考锚节点自身位置信息,通过三边测量法对目标节点初步定位获得初步定为结果Tf,则第i个锚节点与初步定位结果Tf的欧式距离为||Ai-Tf||,则第i个锚节点第j次测距dij与||Ai-Tf||的差值为Dij=|dij-||Ai-Tf|||;上述i=1,2,...,30,k=30。
由于每个锚节点进行了k次测距,所以每个锚节点具有k个差值信息,将参考锚节点视为一个个体,并对参考锚节点另起标号,c=1,2,3,对于第c个个体,第j次测距为dcj,与||Ac-Tf||的差值为Dcj=|dcj-||Ac-Tf|||,以差值信息视为样本;
对于第c个个体,样本的均值和方差分别为:
对不同个体的样本均值求平均,平均值定义为其中g即为g,且g=3,在下述过程中相同。
并且对个体均值的分布的变异性进行估计:
根据每个个体的样本方差,个体内方差估计定义为其中,
则所有样本的方差总估计为:其中mh为测量次数的调和均数,由于所有个体的测量次数均为k次,所以有
根据以上信息,得到参考锚节点差值信息的一致性区间,即参考误差区间[Dmin,Dmax],其中z1-a/2为标准正态分布1-a/2的上四分位数,a为显著性水平,本实施例中a取值为0.05。
第三阶段:序贯概率比检验
如果仅仅通过一次测距的结果是否超出参考误差区间来检测是否为恶意锚节点具有偶然性,检测性能较差。所以需要利用多次测距的结果来进行检测,同时,为了节省检验次数,采用序贯概率比检验的方法,避免每一次都需要k个样本参与检验。
首先,根据参考误差区间建立伯努利随机变量为:定义Zij=1的概率为p,并建立假设H0和H1:
H0假设为锚节点为良性锚节点的的情况,有p≤p0;
H1假设锚节点为恶意锚节点的情况,有p>p1;
其中p0和p1分别为预设的阈值,在本实施例中为了提高检测率,降低误检率,设置两个概率阈值为p0=0.1,p1=0.9。
然后定义两类误检率:
定义假阴性率α:当H1成立时,p≤p0接受H0的概率,即恶意锚节点被判定为良性锚节点的概率,本实施例中α=0.1;
定义假阳性率β:当H0成立时,p>p1接受H1的概率,即良性锚节点被判定为恶意锚节点的概率,本实施例中β=0.1。
利用目标节点与第i个疑似恶意锚节点的第j次测距下的差值Dij作为序贯概率比检验的检测样本,利用序贯概率比的相关性质,可以得到若j个样本中超过误差区间的个数为Sj,则有:
(a)Sj≤Lj,接受H0;
(b)Sj≥Uj,接受H1;
(c)Lj<Sj<Uj,不能确定,增大j继续检测(j=1,2,..,k);
其中,
检测所有疑似恶意锚节点后获得S个恶意锚节点,并利用N-S个锚节点提供的信息,利用最小二乘法对比目标节点进行最终定位,获得最终定位结果。
基于最终定位结果以及实施过程中已知的恶意锚节点书,为了验证算法的有效性,引入三个评估指标:
(1)TPR(检测率,正确检测出的恶意锚节点数占总恶意锚节点数的比例);
(2)FPR(误检率,错判为恶意锚节点的良性锚节点占总良性锚节点的比例);
(3)平均定位误差(定位误差为定位结果与实际位置之间的误差)。
基于上述条件,验证算法的有效性,在非协同式攻击下,TPR、FPR以及平均定位误差随着攻击项标准差的变化情况如图2和3所示,以及协同式攻击的情况下随着da的变化情况,如图4和5所示;
由图2可知,虽然在攻击项标准差小于15m时,本申请的检测方法TPR低于GD算法,但是其FPR上的表现却远远优于GD算法,其中GDf为固定步长的梯度下降法,GDv为变化步长的梯度下降法,这是由于GD算法将占比为百分之五十的锚节点判定为恶意锚节点,所以即使在攻击项标准差很小的情况下,TPR也比较高,但是与此同时,这也导致GD算法的FPR始终比较高。而本申请对恶意锚节点的判定要经过两个阶段,所以在FPR始终保持在一个比较低的状态,图中显示始终低于0.1。而当攻击项标准差变大时,孤立森林的检测效果更好,而且恶意锚节点测距超出误差区间的可能性更大,所以本发明方案的TPR随攻击项标准差上升的速度比GD算法更快。
由图3可知,在攻击项标准差小于30m时,本申请方案的定位误差与GDv算法十分接近,低于GDf算法,而当攻击项标准差超过30m时,本申请方案的定位误差小于GDv算法,这是因为此时两个方案中TPR基本相同,而我们所提出方案在FPR上具有很大的优势。而LS算法没有考虑攻击情况,所以误差远远大于其他算法。
由图4可知,在协同式攻击的情况下,在TPR上,本申请方案略次于GDf和GDv算法,但是在FPR上依然远远低于GDf和GDv算法。所以综合TPR和FP上的表现,本申请方案仍优于其他两种算法。但是纵向对比,在协同式攻击下,本文算法的优势不如在处理非协同式攻击下明显,这是由于在协同式攻击下,在Pmal附近,估计位置样本也分布比较密集,在一定程度上降低了孤立森林的处理效果。
由图5可知,当协同式攻击强度较小时,本申请方案的定位误差与GDv算法接近,低于GDf算法,而在攻击强度超过40m时,本申请方案的定位误差低于其他算法。这是由于此时检测率相差不大,但是本申请方案的误检率远远低于其他两种算法。而LS算法没有考虑攻击情况,所以误差最大。
为了具体模拟网络被破坏的不同程度,即恶意锚节点数不同的情况下的性能,本实施过程中还仿真了在锚节点个数不同的情况下本申请方案的检测率性能。如图6所示。由图6可知,恶意锚节点数越少,算法的检测性能就越好,而且攻击项均值越大,检测率也更高。这是由于在恶意锚节点数较少时,有恶意锚节点参与的估计位置样本也就越少,更容易被判定为异常。而当攻击项均值越大时,恶意锚节点参与的定位结果离真实位置距离更远,而且测距与欧式距离之间的差值越大,也就更容易被检测出来。
显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (8)
1.一种基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,包括步骤:
S1、目标节点发出定位请求,在其通信范围内的N个锚节点向目标节点发送数据,N≥3,目标节点获得锚节点的位置信息以及锚节点与目标节点之间的测距信息,其中,测距信息通过同一种测距方法获得;
S2、任选N个锚节点中的m个锚节点对目标节点定位,3≤m≤N-r,其中r为N个锚节点中恶意锚节点的总数;将定位使用的m个锚节点以及对应的定位结果作为一个样本,在N个锚节点中共获得个样本;
S3、基于孤立森林算法筛选出个样本中的正常样本,并基于正常样本和投票机制获得可信度高的g个参考锚节点,3≤g≤m,除参考锚节点外的锚节点均视为疑似恶意锚节点;
S4、记N个锚节点中的第i个锚节点与目标节点测距为di,记g个参考锚节点对目标节点定位获得的初步定位结果为Tf,记第i个锚节点与初步定位结果Tf的欧式距离为||Ai-Tf||,则di与||Ai-Tf||的差值记为Di=|di-||Ai-Tf||,基于差值信息建立参考误差区间;
S5、基于差值和参考误差区间对疑似恶意锚节点进行序贯概率比检验,判断疑似恶意锚节点是否为恶意锚节点;并利用恶意锚节点外的所有锚节点对目标节点定位,获得最终定位结果。
2.根据权利要求1所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,m取值为3,g取值为3,m个锚节点对目标节点的定位过程以及g个参考锚节点对目标节点的定位过程均采用三边测量法进行定位。
3.根据权利要求1所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,所述投票机制具体为:对判定为正常样本的定位结果对应的锚节点进行投票,出现一次投一票,依据总票数从大到小进行排序,将票数排前的g个锚节点确定为参考锚节点,g值为通过参考锚节点获得初步定位结果的定位算法所需总锚节点数。
4.根据权利要求1所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,所述步骤S3具体包括:
(1)利用孤立森林算法对个样本的定位结果进行异常检测;
(2)根据检测结果对每个样本进行打分,分数越高越异常,分数越低越正常;
(3)根据分数对样本进行分数由低至高的排序,记前一半样本为正常样本,记后一半样本为异常样本;
(4)基于正常样本中出现的锚节点和投票机制进行投票,获得票数高的g个参考锚节点,N个锚节点中除g个参考锚节点外均记为疑似恶意锚节点。
5.根据权利要求1所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,步骤S4中g个参考锚节点对目标节点定位具体包括:
(1)对g个参考锚节点中的每个参考锚节点进行与目标节点的测距,且每个参考锚节点均与目标节点进行k次测距,并计算每个参考锚节点在k次测距状况下对应的测距平均值;
(2)根据每个参考锚节点的测距平均值以及每个参考锚节点的位置信息对目标节点进行定位,获得初步定位结果Tf。
6.根据权利要求5所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,步骤S4中建立参考误差区间的步骤具体包括:
(1)对N个节点中的第i个锚节点与目标节点进行k次测距,并记k次测距中的第i次测距为dij,计算第i个锚节点与初步定位结果Tf的欧式距离为||Ai-Tf||,则第i个锚节点第j次测距dij与||Ai-Tf||的差值为Dij=|dij-||Ai-Tf|||;
(2)由于每个锚节点进行了k次测距,所以每个锚节点具有k个差值信息,将参考锚节点视为一个个体,并对参考锚节点标号,c=1,...,g,对于第c个个体,第j次测距为dcj,与||Ac-Tf||的差值为Dcj=|dcj-||Ac-Tf|||,以差值信息视为样本;
对于第c个个体,样本的均值和方差分别为:
对不同个体的样本均值求平均,平均值定义为
并且对个体均值的分布的变异性进行估计:
根据每个个体的样本方差,个体内方差估计定义为其中,
则所有样本的方差总估计为:其中mh为测量次数的调和均数,由于所有个体的测量次数均为k次,所以有
(3)根据以上信息,得到参考锚节点差值信息的一致性区间,即参考误差区间[Dmin,Dmax],其中为标准正态分布1-a/2的上四分位数,a为显著性水平。
7.根据权利要求6所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,步骤S5具体包括:
(1)根据参考误差区间建立伯努利随机变量为:定义
Zij=1的概率为p,并建立假设H0和H1:
H0假设为锚节点为良性锚节点的的情况,有p≤p0;
H1假设锚节点为恶意锚节点的情况,有p>p1;
其中p0和p1分别为预设的阈值;
(2)定义两类误检率:
定义假阴性率α:当H1成立时,p≤p0接受H0的概率,即恶意锚节点被判定为良性锚节点的概率;
定义假阳性率β:当H0成立时,p>p1接受H1的概率,即良性锚节点被判定为恶意锚节点的概率。
(3)利用目标节点与第i个疑似恶意锚节点的第j次测距下的差值Dij作为序贯概率比检验的检测样本,利用序贯概率比的相关性质,可以得到若j个样本中超过误差区间的个数为Sj,则有:
(a)Sj≤Lj,接受H0;
(b)Sj≥Uj,接受H1;
(c)Lj<Sj<Uj,不能确定,增大j继续检测(j=1,2,..,k);
其中,
(4)检测所有疑似恶意锚节点后获得S个恶意锚节点,并利用N-S个锚节点提供的信息对目标节点进行最终定位。
8.根据权利要求7所述的基于孤立森林和序贯概率比检验的恶意锚节点检测方法,其特征在于,最终定位采用最小二乘法进行定位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910805300.XA CN110475246B (zh) | 2019-08-28 | 2019-08-28 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910805300.XA CN110475246B (zh) | 2019-08-28 | 2019-08-28 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110475246A true CN110475246A (zh) | 2019-11-19 |
CN110475246B CN110475246B (zh) | 2021-01-26 |
Family
ID=68513831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910805300.XA Active CN110475246B (zh) | 2019-08-28 | 2019-08-28 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110475246B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159251A (zh) * | 2019-12-19 | 2020-05-15 | 青岛聚好联科技有限公司 | 一种异常数据的确定方法及装置 |
CN112533134A (zh) * | 2020-11-06 | 2021-03-19 | 浙江工业大学 | 一种基于双重检测的无线传感器网络安全定位方法 |
CN113038475A (zh) * | 2021-03-15 | 2021-06-25 | 中山大学 | 基于稀疏项恢复的恶意锚节点检测和目标节点定位方法 |
CN113795031A (zh) * | 2021-08-06 | 2021-12-14 | 普联技术有限公司 | 一种网络节点异常检测方法、装置及网络设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130002477A1 (en) * | 2011-06-29 | 2013-01-03 | Sintayehu Dehnie | Methods and systems for detecting GPS spoofing attacks |
CN108882225A (zh) * | 2018-05-07 | 2018-11-23 | 中山大学 | 一种无线传感器网络中基于测距的安全定位方法 |
CN108877949A (zh) * | 2018-06-11 | 2018-11-23 | 吉林大学 | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 |
CN108985632A (zh) * | 2018-07-16 | 2018-12-11 | 国网上海市电力公司 | 一种基于孤立森林算法的用电数据异常检测模型 |
-
2019
- 2019-08-28 CN CN201910805300.XA patent/CN110475246B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130002477A1 (en) * | 2011-06-29 | 2013-01-03 | Sintayehu Dehnie | Methods and systems for detecting GPS spoofing attacks |
CN108882225A (zh) * | 2018-05-07 | 2018-11-23 | 中山大学 | 一种无线传感器网络中基于测距的安全定位方法 |
CN108877949A (zh) * | 2018-06-11 | 2018-11-23 | 吉林大学 | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 |
CN108985632A (zh) * | 2018-07-16 | 2018-12-11 | 国网上海市电力公司 | 一种基于孤立森林算法的用电数据异常检测模型 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111159251A (zh) * | 2019-12-19 | 2020-05-15 | 青岛聚好联科技有限公司 | 一种异常数据的确定方法及装置 |
CN112533134A (zh) * | 2020-11-06 | 2021-03-19 | 浙江工业大学 | 一种基于双重检测的无线传感器网络安全定位方法 |
CN112533134B (zh) * | 2020-11-06 | 2022-06-17 | 浙江工业大学 | 一种基于双重检测的无线传感器网络安全定位方法 |
CN113038475A (zh) * | 2021-03-15 | 2021-06-25 | 中山大学 | 基于稀疏项恢复的恶意锚节点检测和目标节点定位方法 |
CN113038475B (zh) * | 2021-03-15 | 2023-01-20 | 中山大学 | 基于稀疏项恢复的恶意锚节点检测和目标节点定位方法 |
CN113795031A (zh) * | 2021-08-06 | 2021-12-14 | 普联技术有限公司 | 一种网络节点异常检测方法、装置及网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110475246B (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110475246A (zh) | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 | |
CN107656245B (zh) | 一种将信息融合应用到雷达信号分选中的方法 | |
CN108322347A (zh) | 数据检测方法、装置、检测服务器及存储介质 | |
CN108306894A (zh) | 一种基于攻击发生置信度的网络安全态势评估方法及*** | |
CN106323452B (zh) | 一种设备异音的检测方法及检测装置 | |
CN106443604B (zh) | Lfm/bpsk混合调制信号盲处理结果的校验方法 | |
CN108882225B (zh) | 一种无线传感器网络中基于测距的安全定位方法 | |
CN109067586A (zh) | DDoS攻击检测方法及装置 | |
CN111913156A (zh) | 基于深度学习模型与特征联合的雷达辐射源个体识别方法 | |
CN106209861B (zh) | 一种基于广义杰卡德相似系数Web应用层DDoS攻击检测方法及装置 | |
CN110151184A (zh) | 非接触式吸毒人员快速检测***及方法 | |
CN106899435A (zh) | 一种面向无线入侵检测***的复杂攻击识别技术 | |
CN110210508A (zh) | 模型生成方法、异常流量检测方法、装置、电子设备、计算机可读存储介质 | |
CN103581186A (zh) | 一种网络安全态势感知方法及*** | |
CN104065430B (zh) | 基于节点识别的协作频谱检测方法 | |
CN108601026A (zh) | 基于随机抽样一致性的感知数据错误化攻击检测方法 | |
CN108833049A (zh) | 一种无人机网络中基于认知的欺骗式抗干扰方法及装置 | |
CN108683564B (zh) | 一种基于多维决策属性的网络仿真***可信度评估方法 | |
CN109039503A (zh) | 一种频谱感知方法、装置、设备及计算机可读存储介质 | |
CN113645182B (zh) | 一种基于二次特征筛选的拒绝服务攻击随机森林检测方法 | |
US7552035B2 (en) | Method to use a receiver operator characteristics curve for model comparison in machine condition monitoring | |
Illiano et al. | Don't fool me!: detection, characterisation and diagnosis of spoofed and masked events in wireless sensor networks | |
CN116308958A (zh) | 基于移动终端的碳排放在线检测预警***及方法 | |
CN109828168A (zh) | 基于核密度估计的变换器故障诊断方法 | |
CN105259540A (zh) | 一种多站雷达抗有源欺骗式干扰的优化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |