• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種基于隨機(jī)森林算法的MQTT異常流量檢測(cè)方法

      2021-01-27 06:53:24吳克河崔文超
      關(guān)鍵詞:報(bào)文分類器客戶端

      吳克河,張 英,崔文超,程 瑞

      (華北電力大學(xué)控制與計(jì)算機(jī)工程學(xué)院,北京 102206)

      0 引 言

      物聯(lián)網(wǎng)(Internet of Things, IoT)被稱為是繼計(jì)算機(jī)和互聯(lián)網(wǎng)之后的第三次信息技術(shù)革命,是現(xiàn)代科技潮流當(dāng)中最熱門的技術(shù)之一[1]。由于物聯(lián)網(wǎng)系統(tǒng)對(duì)于通信協(xié)議的特殊要求,IBM開發(fā)了一種適用于物聯(lián)網(wǎng)數(shù)據(jù)傳輸?shù)腗QTT協(xié)議,該協(xié)議采用二進(jìn)制格式編碼,易于開發(fā)和實(shí)現(xiàn),對(duì)低功耗和低速網(wǎng)絡(luò)具有良好的適應(yīng)性。目前基于MQTT協(xié)議通信的工業(yè)物聯(lián)網(wǎng)設(shè)備數(shù)量已經(jīng)達(dá)到了千萬量級(jí)。

      隨著物聯(lián)網(wǎng)的發(fā)展,基于工業(yè)物聯(lián)網(wǎng)的安全事件如工業(yè)核心數(shù)據(jù)泄漏、互聯(lián)終端遭到非法劫持和操控在國(guó)內(nèi)外時(shí)有發(fā)生,對(duì)于入侵者來說,攻擊工業(yè)物聯(lián)網(wǎng)系統(tǒng)比攻擊其他行業(yè)的物聯(lián)網(wǎng)系統(tǒng)能夠獲得更多的利益[2]。

      MQTT協(xié)議旨在為物聯(lián)網(wǎng)提供一個(gè)真正輕量級(jí)且易于使用的通信協(xié)議,故而該協(xié)議在眾多的物聯(lián)網(wǎng)通信協(xié)議中最受歡迎。本文主要研究MQTT通信中的應(yīng)用層安全性,應(yīng)用層是所有數(shù)據(jù)的最終匯聚點(diǎn),故而可以采用流量分析的方法來設(shè)計(jì)安全防護(hù)方案。目前應(yīng)用廣泛的DPI深度包檢測(cè)技術(shù)通過特征匹配的方式搜索流量載荷中的相關(guān)字節(jié)特征[3],也能保障MQTT代理服務(wù)器不受非法入侵,但是對(duì)于精心包裝好的符合協(xié)議規(guī)約并滿足訪問控制規(guī)則的數(shù)據(jù)包就不能有效地被基于包過濾的防火墻發(fā)現(xiàn)。因此,有必要在通信服務(wù)器和終端設(shè)備層面對(duì)流量進(jìn)行動(dòng)態(tài)分析,采用MQTT入侵檢測(cè)機(jī)制及時(shí)報(bào)告可疑行為[4]。本文提取MQTT流量中各種類型的報(bào)文的次數(shù)作為特征,還詳細(xì)統(tǒng)計(jì)部分類型報(bào)文的負(fù)載部分的主題最大相同個(gè)數(shù),并采用隨機(jī)森林算法對(duì)MQTT異常流量進(jìn)行檢測(cè)。

      1 相關(guān)研究

      目前對(duì)MQTT協(xié)議的研究和應(yīng)用已經(jīng)擴(kuò)展到各個(gè)領(lǐng)域,從協(xié)議的研究角度來看,文獻(xiàn)[5-8]對(duì)MQTT協(xié)議內(nèi)容進(jìn)行了詳細(xì)的研究,分別對(duì)協(xié)議主題、服務(wù)質(zhì)量、遺囑消息、心跳機(jī)制進(jìn)行了詳細(xì)的設(shè)計(jì)與分析。

      文獻(xiàn)[9-11]對(duì)物聯(lián)網(wǎng)中的消息傳輸協(xié)議進(jìn)行了對(duì)比,主要包括MQTT、CoAP、AMQP、XMPP和HTTP,并深入分析各自的優(yōu)勢(shì)和局限性。文獻(xiàn)[12-13]中,在霧計(jì)算網(wǎng)絡(luò)中應(yīng)用了MQTT協(xié)議,實(shí)現(xiàn)了消息受控制的有序傳輸和網(wǎng)絡(luò)設(shè)備間的負(fù)載均衡。文獻(xiàn)[14-17]提到將MQTT應(yīng)用于智慧農(nóng)業(yè)、智能家居和移動(dòng)互聯(lián)網(wǎng)的即時(shí)通信、消息推送系統(tǒng)中。文獻(xiàn)[18]對(duì)MQTT安全機(jī)制進(jìn)行研究,重點(diǎn)研究了如何在操作受限的物聯(lián)網(wǎng)設(shè)備間安全地傳輸消息。

      文獻(xiàn)[19]選取MQTT協(xié)議固定報(bào)頭中的控制報(bào)文類型和控制報(bào)文標(biāo)志位作為特征屬性,提出了將樸素貝葉斯分類算法應(yīng)用到MQTT異常流量檢測(cè)中。

      文獻(xiàn)[20]分析MQTT協(xié)議中的客戶端異常行為,選取用戶的連接頻率和發(fā)布頻率2個(gè)屬性作為特征,并對(duì)每個(gè)特征采用相應(yīng)的權(quán)重,提出了將加權(quán)歐氏距離和K-MEANS均值算法相結(jié)合,用于MQTT異常行為檢測(cè)。本文在此工作基礎(chǔ)上,提出一種基于隨機(jī)森林算法的異常流量檢測(cè)模型,不僅提取MQTT流量中連接頻率和發(fā)布頻率作為特征,還統(tǒng)計(jì)其他各種類型報(bào)文的次數(shù),并且還詳細(xì)統(tǒng)計(jì)部分類型報(bào)文的負(fù)載部分的主題最大相同個(gè)數(shù)對(duì)模型進(jìn)行訓(xùn)練測(cè)試,隨機(jī)森林算法有效克服單一分類方法精度不高、過擬合的問題,對(duì)異常值和噪聲具有很好的容忍度。

      2 隨機(jī)森林算法

      為了解決傳統(tǒng)的單一分類方法往往不準(zhǔn)確而且容易出現(xiàn)過擬合的問題,許多學(xué)者通過組合多個(gè)分類模型來提高分類效果。集成學(xué)習(xí)是一種協(xié)同多個(gè)“個(gè)體學(xué)習(xí)器”完成任務(wù)的學(xué)習(xí)方法,其原理是使用某種方式將多個(gè)學(xué)習(xí)器集成,以此獲得比單一學(xué)習(xí)器更優(yōu)越的泛化性能[21]。隨機(jī)森林(Random Forest,RF)是由Breiman[22]提出的一種組合分類算法,該算法能夠平衡分布不均勻樣本的誤差,分類精度高,對(duì)異常值和噪聲有很好的容忍度,不存在過擬合問題。

      隨機(jī)森林分類器是樹形分類器{h(x,θk),k=1,…,K}的集合,其中h(x,θk)是一棵采用CART算法構(gòu)建的分類回歸樹,輸入向量是x,{θk}決定了一棵樹的生長(zhǎng)方向,隨機(jī)森林分類器[23]采用簡(jiǎn)單多數(shù)投票法來確定最終分類結(jié)果,即對(duì)于組合分類器H(x,最后的分類結(jié)果為:

      (1)

      采用Bagging方法進(jìn)行隨機(jī)森林構(gòu)建的過程描述如下:

      1)對(duì)于給定的訓(xùn)練樣本,經(jīng)過n次隨機(jī)的可重復(fù)抽樣,從數(shù)據(jù)(X,Y)…(Xn,Yn)出發(fā),構(gòu)建bootstrap樣本;

      2)基于每個(gè)bootstrap樣本構(gòu)建決策樹;

      3)重復(fù)步驟1和步驟2,得到更多的決策樹;

      4)讓每棵樹對(duì)輸入向量x進(jìn)行投票;

      5)統(tǒng)計(jì)所有投票數(shù),找出票數(shù)最高的就是向量x的類別標(biāo)簽;

      6)與正確分類標(biāo)簽不一致的比例,就是該算法的錯(cuò)誤分類率。

      3 基于隨機(jī)森林算法的MQTT異常流量檢測(cè)方法

      MQTT中存在著許多風(fēng)險(xiǎn)因素,關(guān)于MQTT協(xié)議的安全性,目前還沒有標(biāo)準(zhǔn)化的解決方案,在不安全的通信環(huán)境中,服務(wù)端需要檢測(cè)客戶端的異常行為,客戶端一些常見的異常行為如下:

      1)客戶端請(qǐng)求訂閱或者取消訂閱大量相同主題的數(shù)據(jù)包;

      2)客戶端發(fā)出大量連接或中斷連接請(qǐng)求;

      3)客戶端發(fā)布大量具有相同有效載荷的發(fā)布包或者客戶端發(fā)送大量沒有訂閱者的發(fā)布包。

      對(duì)于以上這些異常行為,本文提出使用隨機(jī)森林算法對(duì)異常行為進(jìn)行檢測(cè),及時(shí)發(fā)現(xiàn)異常客戶端,保障通信安全。

      3.1 流量特征的選取

      在機(jī)器學(xué)習(xí)流量分類中,特征維數(shù)過少又不足以實(shí)現(xiàn)完美的流量分類,使用不相關(guān)或冗余的特征會(huì)對(duì)分類器的準(zhǔn)確性產(chǎn)生負(fù)面的影響。選擇有意義的特征子集很重要。流量統(tǒng)計(jì)特征的選擇往往決定了不同場(chǎng)景下網(wǎng)絡(luò)流量分類結(jié)果的好壞。

      在網(wǎng)絡(luò)數(shù)據(jù)流中,只有通過一定時(shí)間積累的數(shù)據(jù)才能夠表征用戶的行為,根據(jù)上述常見的客戶端的異常行為可以看出,客戶端異常行為主要和一段時(shí)間內(nèi)連接包、中斷連接包、相同有效載荷發(fā)布包、相同主題訂閱包、相同主題取消訂閱包的個(gè)數(shù)等有關(guān)。本文提取MQTT流量中的應(yīng)用報(bào)文中的流量特征如表1所示。

      表1 選取的MQTT流量特征詳細(xì)描述

      3.2 數(shù)據(jù)處理

      流特征提取的過程中會(huì)不可避免地遇上數(shù)據(jù)包解析錯(cuò)誤等情況,數(shù)據(jù)清洗過程主要是快速檢查數(shù)據(jù)集中的空數(shù)據(jù)和重復(fù)數(shù)據(jù)并刪除,以及處理缺失值情況等。

      本文通過Wireshark對(duì)一定時(shí)間內(nèi)的MQTT服務(wù)器和MQTT客戶端之間的通信流量進(jìn)行收集,然后對(duì)收集到的數(shù)據(jù)進(jìn)行特征提取,分析出該段時(shí)間內(nèi)MQTT數(shù)據(jù)流中連接包、連接確認(rèn)包、發(fā)布包、訂閱包、取消訂閱包、PING請(qǐng)求包、PING應(yīng)答包、中斷連接包等數(shù)據(jù)包個(gè)數(shù),由于每次抓取的流量包中連接確認(rèn)次數(shù)、發(fā)布確認(rèn)次數(shù)、訂閱確認(rèn)、取消訂閱確認(rèn)、PING應(yīng)答次數(shù)分別與連接次數(shù)、發(fā)布次數(shù)、訂閱次數(shù)、取消訂閱次數(shù)、PING請(qǐng)求次數(shù)差不多,因此這10個(gè)數(shù)據(jù)信息只選取其中5個(gè)作為特征,刪除重復(fù)的不必要的信息。并進(jìn)一步分析出發(fā)布包中最大相同有效載荷包個(gè)數(shù)、訂閱包中最大相同主題包個(gè)數(shù)、取消訂閱包中最大相同主題包個(gè)數(shù)這3個(gè)特征作為有力補(bǔ)充。

      4 實(shí)驗(yàn)及結(jié)果分析

      4.1 數(shù)據(jù)集

      本實(shí)驗(yàn)中,異常流量攻擊源向與MQTT客戶端進(jìn)行正常通信的MQTT服務(wù)器端發(fā)送任意構(gòu)造的MQTT報(bào)文,異常流量檢測(cè)模塊所在的服務(wù)器利用旁路抓取數(shù)據(jù)的方法使用Libpcap(Packet Capture Library)提供的庫函數(shù)對(duì)交換機(jī)中的通信流量進(jìn)行截取,然后異常流量檢測(cè)模塊會(huì)對(duì)截取到的MQTT流量進(jìn)行處理。本實(shí)驗(yàn)一共選取了6586個(gè)報(bào)文樣本,其中正常的報(bào)文3484個(gè),異常的報(bào)文3102個(gè),其中70%的樣本用于訓(xùn)練分類器模型,再使用另外30%對(duì)該模型進(jìn)行測(cè)試。

      4.2 性能指標(biāo)

      只有使用合理的評(píng)價(jià)指標(biāo),才能對(duì)MQTT異常流量檢測(cè)二元分類模型的性能進(jìn)行評(píng)估。由于MQTT協(xié)議數(shù)據(jù)樣本不平衡,正負(fù)樣本之比可能偏離于1∶1,如果只使用準(zhǔn)確率之類的指標(biāo),數(shù)據(jù)樣本不平衡問題帶來的性能評(píng)估偏差將無法解決。因此本文除了選取混淆矩陣外,還選取F1值、ROC曲線以及AUC值對(duì)分類結(jié)果進(jìn)行分析,如表2所示。

      表2 分類結(jié)果混淆矩陣

      準(zhǔn)確率(Accuracy, A):表示的是預(yù)測(cè)正確的樣本占總樣本的比例,形式如公式(2)所示。

      (2)

      精確率(Precision,P):真實(shí)為真的樣本中評(píng)估預(yù)測(cè)為真的樣本所占比例,形式如公式(3)所示。

      (3)

      召回率(Recall,R):評(píng)估預(yù)測(cè)為真的樣本中真實(shí)為真的比例,形式如公式(4)所示。

      (4)

      F1值是準(zhǔn)確率和召回率的調(diào)和平均值,可以有效地避免模型評(píng)估帶來的偏差,如公式(5)所示。

      (5)

      真陽率(True Positive Rate,TPR):表示分類器預(yù)測(cè)為正類中實(shí)際為正實(shí)例的占比,形式如公式(6)所示。

      (6)

      誤報(bào)率(False Positive Rate,F(xiàn)PR):表示分類器預(yù)測(cè)為正類中實(shí)際為負(fù)實(shí)例占所有負(fù)實(shí)例的比例,形式如公式(7)所示。

      (7)

      ROC曲線:全稱為受試者操作特性曲線,曲線由自變量FPR和因變量TPR組成。ROC曲線上的各個(gè)點(diǎn)表示對(duì)輸入信號(hào)刺激的響應(yīng),它是二元分類問題常用的參考關(guān)系圖。

      AUC值:全稱為曲線下面積,根據(jù)ROC曲線,將其下方的面積定義為AUC值。AUC值越接近0或1,模型的性能越好;相反,AUC取值越接近0.5,模型性能越差。

      4.3 實(shí)驗(yàn)結(jié)果

      本實(shí)驗(yàn)場(chǎng)景比較RF分類器與其他3個(gè)常用的分類器對(duì)MQTT異常流量的識(shí)別效果,其中包括GBDT(梯度提升樹)、DT(決策樹)、SVM(支持向量機(jī))、NB(樸素貝葉斯),使用的分類性能指標(biāo)為Accuracy(準(zhǔn)確率)、Precision(精確率)、Recall(召回率)、F1-score(F1值)、運(yùn)行時(shí)間。實(shí)驗(yàn)結(jié)果如表3和圖1所示。

      表3 MQTT異常流量識(shí)別結(jié)果

      圖1 MQTT異常流量分類結(jié)果

      從實(shí)驗(yàn)結(jié)果可以看出,基于集成學(xué)習(xí)的RF、GBDT分類器的準(zhǔn)確率均高于90%,其中RF分類器的準(zhǔn)確率達(dá)到最高約為96.4%。單獨(dú)的DT分類器準(zhǔn)確率約為93.5%,低于RF分類模型的96.4%。由此可見,基于RF的集成模型的分類性能要優(yōu)于單獨(dú)使用的分類模型。

      ROC曲線所覆蓋的面積被稱為AUC空間(圖2中的灰色區(qū)域)??梢酝ㄟ^AUC空間的大小來判斷模型的預(yù)測(cè)能力。一般來說,AUC的空間越大,模型的預(yù)測(cè)能力越好。從圖2可以看出,使用隨機(jī)森林算法模型進(jìn)行分類得到的AUC值為0.99,分類效果接近于完美。

      圖2 隨機(jī)森林算法ROC-AUC曲線圖

      5 結(jié)束語

      本文提出了一種基于RF算法的MQTT異常流量識(shí)別方法,實(shí)驗(yàn)結(jié)果表明,該模型通過提取MQTT數(shù)據(jù)流中的特征能夠有效地對(duì)MQTT異常流量進(jìn)行識(shí)別。對(duì)于高級(jí)的、持續(xù)的欺騙性數(shù)據(jù)包攻擊采用基于隨機(jī)森林算法的MQTT協(xié)議異常流量檢測(cè)模塊能夠快速檢測(cè)出攻擊并作出防護(hù)響應(yīng),保障工業(yè)物聯(lián)網(wǎng)系統(tǒng)的網(wǎng)絡(luò)安全。

      但是,仍有一些方面有待改進(jìn)和進(jìn)一步完善。首先,當(dāng)工業(yè)物聯(lián)網(wǎng)系統(tǒng)在穩(wěn)定運(yùn)行時(shí),MQTT控制報(bào)文的類型是有限的,因此只能獲得數(shù)量有限、分布不均勻的數(shù)據(jù)樣本,故而模型的準(zhǔn)確率可能會(huì)由于訓(xùn)練樣本的種類不夠全面、數(shù)量不夠多而造成影響。其次,可以對(duì)特征屬性的劃分進(jìn)行更多的選擇,進(jìn)一步提高M(jìn)QTT異常流量檢測(cè)模型的分類正確率。

      猜你喜歡
      報(bào)文分類器客戶端
      基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
      汽車電器(2022年9期)2022-11-07 02:16:24
      CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
      淺析反駁類報(bào)文要點(diǎn)
      縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
      孵化垂直頻道:新聞客戶端新策略
      基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
      BP-GA光照分類器在車道線識(shí)別中的應(yīng)用
      加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
      結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
      ATS與列車通信報(bào)文分析
      西盟| 仁寿县| 运城市| 牡丹江市| 泰来县| 新昌县| 临沭县| 儋州市| 正宁县| 和静县| 东丰县| 泰兴市| 定陶县| 西平县| 石城县| 兰西县| 南汇区| 喀喇沁旗| 吕梁市| 敦煌市| 天全县| 徐闻县| 上栗县| 隆化县| 谢通门县| 华容县| 阿城市| 康定县| 东乡县| 辛集市| 昆明市| 榆树市| 嵩明县| 乌审旗| 宜良县| 灵台县| 长宁区| 信宜市| 合江县| 贡山| 宣化县|