The invention discloses a MQTT anomaly traffic detection method based on Naive Bayes. First, it captures a number of packets of MQTT normal traffic and abnormal traffic between the server side and the client of the MQTT communication system, and extracts the standard of the control message type and the specified control message type in the MQTT fixed header in each packet. The feature vector is formed, and then the parameters of the simple Bias classifier are obtained. When the abnormal flow detection is needed, the MQTT packets between the server and the client are obtained. The feature vectors are extracted. According to the parameters of the simple Bias classifier, the packet belongs to the normal flow and abnormal flow. The corresponding value of the recognition value is taken as the detection result. The invention extracts the feature vectors of the MQTT fixed header to control the message type and the type of the control message, and constructs the abnormal traffic detection model using the simple Bias classifier. It has good detection performance and can effectively prevent deception attack.
【技术实现步骤摘要】
一种基于朴素贝叶斯的MQTT异常流量检测方法
本专利技术属于物联网信息安全
,更为具体地讲,涉及一种基于朴素贝叶斯的MQTT异常流量检测方法。
技术介绍
MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)是IBM开发的一个即时通讯协议,是当今物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当作传感器和制动器的通信协议。MQTT协议的安全性对物联网系统非常重要。然而,MQTT是一种开放协议,它的报文结构和数据格式都是公开的,在没有足够的安全措施下,存在较大的安全隐患,攻击者能够利用符合MQTT协议规则的数据报文实施欺骗性攻击,例如,攻击者能够在MQTT协议报文的传输过程中,利用符合MQTT协议规则的数据包,篡改或者伪造MQTT数据报文,引起系统错误甚至破坏,严重威胁了物联网系统的安全性。若要防范此类欺骗性攻击,需要对MQTT数据内容进行过滤,即对应用层进行深度包过滤。由于欺骗性攻击的数据包是符合MQTT协议规则的,而传统防火墙不能识别,因此无法防范此类攻击。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于朴素贝叶斯的MQTT异常流量检测方法,提取MQTT固定报头中的信息,基于朴素贝叶斯分类器,有效实现MQTT异常流量检测。为实现上述专利技术目的,本专利技术基于朴素贝叶斯的MQTT异常流量检测方法包括以下步骤:S1:在MQTT通信系统的服务端与客户端之间捕获得到若干组MQTT正常流量和异常流量的数据包,记数据包的数量为N;S2:对于步骤S1中捕获到的每个数据 ...
【技术保护点】
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不同取值的条件概率:
【技术特征摘要】
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不同...
【专利技术属性】
技术研发人员:郑宏,王斌,辛晓帅,邹见效,何建,徐红兵,
申请(专利权)人:电子科技大学,
类型:发明
国别省市:四川,51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。