[发明专利]一种基于朴素贝叶斯的MQTT异常流量检测方法有效
申请号: | 201810087318.6 | 申请日: | 2018-01-30 |
公开(公告)号: | CN108366053B | 公开(公告)日: | 2020-09-18 |
发明(设计)人: | 郑宏;王斌;辛晓帅;邹见效;何建;徐红兵 | 申请(专利权)人: | 电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 成都行之专利代理事务所(普通合伙) 51220 | 代理人: | 温利平;陈靓靓 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于朴素贝叶斯的MQTT异常流量检测方法,首先在MQTT通信系统的服务端与客户端之间捕获得到若干组MQTT正常流量和异常流量的数据包,提取出每个数据包中MQTT固定报头中控制报文类型和指定控制报文类型的标志位构成特征向量,然后计算得到朴素贝叶斯分类器的各项参数,当需要进行异常流量检测时,获取服务端与客户端之间的MQTT数据包,提取出特征向量,根据朴素贝叶斯分类器的参数计算得到该数据包属于正常流量和异常流量的识别值,取较大值对应的类型作为检测结果。本发明提取MQTT固定报头中控制报文类型和指定控制报文类型的标志位构成特征向量,利用朴素贝叶斯分类器构建异常流量检测模型,具有良好的检测性能,可以有效防范欺骗性攻击。 | ||
搜索关键词: | 一种 基于 朴素 贝叶斯 mqtt 异常 流量 检测 方法 | ||
【主权项】:
1.一种基于朴素贝叶斯的MQTT异常流量检测方法,其特征在于,包括以下步骤:S1:在MQTT通信系统的服务端与客户端之间捕获得到若干组MQTT正常流量和异常流量的数据包,记数据包的数量为N;S2:对于步骤S1中捕获到的每个数据包,提取MQTT固定报头中控制报文类型记为特征属性x1,提取固定报头中指定控制报文类型的标志位记为特征属性x2,从而得到每个数据包的特征向量Xi=[x1i,x2i],其中i=1,2,3,…,N,x1i和x2i分别表示第i个数据包的特征属性x1和x2的取值;S3:对于每个特征向量Xi,如果对应数据包属于正常流量,令其标识Yi=1,如果对应数据包属于异常流量,令其标识Yi=0;S4:采用以下方法计算得到朴素贝叶斯分类器的各项参数:分别统计N个特征向量中标识Y为1和标识Y为0的特征向量出现的概率,分别记为P(Y=1)和P(Y=0);对于标识为1的特征向量,按照以下公式计算特征属性x1不同取值的条件概率:
其中,j表示特征属性x1的具体取值,j=1,2,3,…,s1,s1表示控制报文类型的数量;按照以下公式计算特征属性x2不同取值的条件概率:
其中,k表示特征属性x2的具体取值,k=0,1,…,s2‑1,s2表示控制报文类型标志位取值的数量;对于标识为0的特征向量,按照以下公式计算特征属性x1不同取值的条件概率:
按照以下公式计算特征属性x2不同取值的条件概率:
S5:当需要进行异常流量检测时,获取服务端与客户端之间的MQTT数据包,提取出特征向量X′=[x′1,x′2],根据步骤S104得到的朴素贝叶斯分类器的参数,分别计算P(h)=P(x′1|Y=1)P(x′2|Y=1)P(Y=1)和P(s)=P(x′1|Y=0)P(x′2|Y=0)P(Y=0),然后比较P(h)和P(s)的大小,如果P(h)≥P(s),则数据包正常,允许该数据包通过;若P(h)<P(s),则数据包异常,不允许该数据包通过。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810087318.6/,转载请声明来源钻瓜专利网。
- 上一篇:验证短信的处理方法及系统
- 下一篇:一种数据分发、转发方法及装置