国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

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)對于通信協(xié)議的特殊要求,IBM開發(fā)了一種適用于物聯(lián)網(wǎng)數(shù)據(jù)傳輸?shù)腗QTT協(xié)議,該協(xié)議采用二進(jìn)制格式編碼,易于開發(fā)和實(shí)現(xiàn),對低功耗和低速網(wǎng)絡(luò)具有良好的適應(yīng)性。目前基于MQTT協(xié)議通信的工業(yè)物聯(lián)網(wǎng)設(shè)備數(shù)量已經(jīng)達(dá)到了千萬量級。

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

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

1 相關(guān)研究

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

文獻(xiàn)[9-11]對物聯(lián)網(wǎng)中的消息傳輸協(xié)議進(jìn)行了對比,主要包括MQTT、CoAP、AMQP、XMPP和HTTP,并深入分析各自的優(yōu)勢和局限性。文獻(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]對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異常流量檢測中。

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

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]提出的一種組合分類算法,該算法能夠平衡分布不均勻樣本的誤差,分類精度高,對異常值和噪聲有很好的容忍度,不存在過擬合問題。

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

(1)

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

1)對于給定的訓(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)讓每棵樹對輸入向量x進(jìn)行投票;

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

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

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

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

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

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

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

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

3.1 流量特征的選取

在機(jī)器學(xué)習(xí)流量分類中,特征維數(shù)過少又不足以實(shí)現(xiàn)完美的流量分類,使用不相關(guān)或冗余的特征會(huì)對分類器的準(zhǔn)確性產(chǎn)生負(fù)面的影響。選擇有意義的特征子集很重要。流量統(tǒng)計(jì)特征的選擇往往決定了不同場景下網(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對一定時(shí)間內(nèi)的MQTT服務(wù)器和MQTT客戶端之間的通信流量進(jìn)行收集,然后對收集到的數(shù)據(jù)進(jìn)行特征提取,分析出該段時(shí)間內(nèi)MQTT數(shù)據(jù)流中連接包、連接確認(rèn)包、發(fā)布包、訂閱包、取消訂閱包、PING請求包、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請求次數(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)文,異常流量檢測模塊所在的服務(wù)器利用旁路抓取數(shù)據(jù)的方法使用Libpcap(Packet Capture Library)提供的庫函數(shù)對交換機(jī)中的通信流量進(jìn)行截取,然后異常流量檢測模塊會(huì)對截取到的MQTT流量進(jìn)行處理。本實(shí)驗(yàn)一共選取了6586個(gè)報(bào)文樣本,其中正常的報(bào)文3484個(gè),異常的報(bào)文3102個(gè),其中70%的樣本用于訓(xùn)練分類器模型,再使用另外30%對該模型進(jìn)行測試。

4.2 性能指標(biāo)

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

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

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

(2)

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

(3)

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

(4)

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

(5)

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

(6)

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

(7)

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

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

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

本實(shí)驗(yàn)場景比較RF分類器與其他3個(gè)常用的分類器對MQTT異常流量的識別效果,其中包括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異常流量識別結(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ù)測能力。一般來說,AUC的空間越大,模型的預(yù)測能力越好。從圖2可以看出,使用隨機(jī)森林算法模型進(jìn)行分類得到的AUC值為0.99,分類效果接近于完美。

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

5 結(jié)束語

本文提出了一種基于RF算法的MQTT異常流量識別方法,實(shí)驗(yàn)結(jié)果表明,該模型通過提取MQTT數(shù)據(jù)流中的特征能夠有效地對MQTT異常流量進(jìn)行識別。對于高級的、持續(xù)的欺騙性數(shù)據(jù)包攻擊采用基于隨機(jī)森林算法的MQTT協(xié)議異常流量檢測模塊能夠快速檢測出攻擊并作出防護(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ù)量不夠多而造成影響。其次,可以對特征屬性的劃分進(jìn)行更多的選擇,進(jìn)一步提高M(jìn)QTT異常流量檢測模型的分類正確率。

猜你喜歡
報(bào)文分類器客戶端
基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
汽車電器(2022年9期)2022-11-07 02:16:24
CTCS-2級報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
淺析反駁類報(bào)文要點(diǎn)
中國外匯(2019年11期)2019-08-27 02:06:30
縣級臺在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
傳媒評論(2018年4期)2018-06-27 08:20:24
孵化垂直頻道:新聞客戶端新策略
傳媒評論(2018年4期)2018-06-27 08:20:16
基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
電子測試(2018年10期)2018-06-26 05:53:34
BP-GA光照分類器在車道線識別中的應(yīng)用
電子測試(2018年1期)2018-04-18 11:52:35
加權(quán)空-譜與最近鄰分類器相結(jié)合的高光譜圖像分類
結(jié)合模糊(C+P)均值聚類和SP-V-支持向量機(jī)的TSK分類器
ATS與列車通信報(bào)文分析
泰和县| 泰兴市| 隆昌县| 博爱县| 垣曲县| 甘德县| 巫溪县| 嵊州市| 电白县| 万盛区| 台北县| 娄烦县| 金平| 太原市| 徐州市| 高阳县| 五原县| 房产| 天峻县| 股票| 玛纳斯县| 宜兰县| 喜德县| 鹤壁市| 密山市| 金阳县| 阿城市| 延边| 邛崃市| 武强县| 海盐县| 双峰县| 鹤庆县| 台东市| 七台河市| 永城市| 桂东县| 桂林市| 松溪县| 辽源市| 临海市|