CN113114618B - 一种基于流量分类识别的物联网设备入侵检测的方法 - Google Patents
一种基于流量分类识别的物联网设备入侵检测的方法 Download PDFInfo
- Publication number
- CN113114618B CN113114618B CN202110230371.9A CN202110230371A CN113114618B CN 113114618 B CN113114618 B CN 113114618B CN 202110230371 A CN202110230371 A CN 202110230371A CN 113114618 B CN113114618 B CN 113114618B
- Authority
- CN
- China
- Prior art keywords
- internet
- things
- classifier
- equipment
- traffic
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16Y—INFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
- G16Y30/00—IoT infrastructure
- G16Y30/10—Security thereof
Abstract
本发明属于物联网安全技术领域,公开了一种基于流量分类识别的物联网设备入侵检测的方法,构建一个模拟的物联网智能环境,获取物联网设备的流量信息;确认进行物联网流量分类识别的特征向量;基于多阶段机器学习方法的流量分类识别,用训练数据对分类器进行训练;利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验,查看检测率。本发明主要研究是基于统计的设备流量分类识别算法,并在特征向量的选择方面更多的是基于统计的流量数据包进行选择。本发明可以用来检测和减轻网络安全攻击,物联网中设备是极其容易被渗透和攻击的;通过分类识别他们每一种设备的流量模式来识别攻击。
Description
技术领域
本发明属于物联网安全技术领域,尤其涉及一种基于流量分类识别的物联网设备入侵检测的方法。
背景技术
目前,在物联网广泛普及的同时,政府监管机构、网络运营者对网络空间中的物联网设备缺少统计和管理。主要存在以下几个方面:
(1)各种类型的物联网设备通常由不同运营者、不同厂商、不同人员安装,对全量设备的登记和统计非常困难。
(2)物联网由于广泛采用了NAT技术和IP地址动态分配,缺少唯一化的标记手段,使得掌握网络中物联网设备总体情况变得困难。
上述情况会导致产生入侵攻击,针对入侵攻击提供检测方法是十分有必要的。由于物联网设备普遍资源受限导致的安全防护不足,使得很多物联网设备成为网络攻击的工具或跳板,对全球网络空间安全带来严峻挑战。因此防止假物联网设备伪装成真的物联网设备来对进行攻击由为重要,所以应对物联网设备进行识别和分类,这也是入侵检测一方面。通过流量分类可以检测和减轻网络安全攻击,物联网中设备是极其容易被渗透和攻击的,通过识别他们每一种设备的流量模式来识别攻击。
现有的研究方案针对物联网设备所上传的流量做了大量的分类识别进而得到入侵检测。物联网设备流量分类技术两类:协议特征识别:针对协议中的强特征对不同设备流量进行匹配分类。统计识别:寻找流量数据中的包数、包长、时间间隔、请求数量等弱特征,采用统计方法对不同设备进行分类识别。
协议特征识别方法的优点是识别准确率高,但需要提前知道设备类型及其通信协议,对于未知的物联网设备无法识别,而且随着加密技术在网络协议传输中的广泛采用,协议特征变得越来越模糊,因此基于协议强特征的识别方法越来越表现出局限性。基于统计的识别方法有可能识别出未知的物联网设备,因为同一厂家产品在流量上具有相似性,另外可以有效地识别和分类加密流量。
通过上述分析,现有技术存在的问题及缺陷为:
(1)现有技术中协议特征识别方法对于未知的物联网设备无法识别,而且随着加密技术在网络协议传输中的广泛采用,协议特征变得越来越模糊,基于协议强特征的识别方法越来越表现出局限性。
(2)现有技术中基于统计的识别方法有可能识别出未知的物联网设备,因为同一厂家产品在流量上具有相似性,另外可以有效地识别和分类加密流量。
解决以上问题及缺陷的难度为:现有的物联网设备拥有的强特征都是基于协议本身而存在的,但是在隐私保护度高的条件下会对协议特征进行进一步保护,从而很难在加密环境下,更有效地识别和分类物联网流量
解决以上问题及缺陷的意义为:随着物联网和5G等的快速发展,出现了越来越多的物联网设备。而物联网设备极易成为被渗透攻击的对象,从而影响网络安全。通过对物联网设备识别分类可以快速定位异常物联网设备流量攻击,提高网络安全强度。
发明内容
针对现有技术存在的问题,本发明提供了一种基于流量分类识别的物联网设备入侵检测的方法。
本发明是这样实现的,一种基于流量分类识别的物联网设备入侵检测的方法,所述基于流量分类识别的物联网设备入侵检测的方法,包括:
步骤一,构建一个模拟的物联网智能环境,获取物联网设备的流量信息;积极作用:模拟物联网智能环境可以更逼真的呈现出真实物联网环境,从而实现对方案的实施并对实验结果进行评估。
步骤二,确认进行物联网流量分类识别的特征向量;积极作用:确认特征向量会影响后续机器学习的效果,所以特征向量的确认非常关键。
步骤三,基于多阶段机器学习方法的流量分类识别,用训练数据对分类器进行训练;积极作用:通过多阶段机器学习方法可以对训练集进行训练,从而为之后的试验集更准确的预测分类打下基础。
步骤四,利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验,查看检测率。积极作用:对步骤三中已经训练好的多阶段分类器进行验证,模拟入侵设备流量来进入分类器,根据分类器输出的分类及置信度进行结果分析保证方案实施的准确性。
进一步,所述步骤一中,构建一个模拟的物联网智能环境具体过程为:
先构建一个模拟的物联网智能环境,并得到一个真实的网络空间;通过有线或者无线的网络方式服务大量的物联网设备,并允许通过网关来和互联网服务器进行通信;
还在网关上安装了OpenWrt包,捕获流量的信息;并将这些流量信息保存到外部存储设备中,方便进行查看。
进一步,所述物联网智能环境中的设备主要包括:智能摄像头、烟雾传感器、智能开关、空气质量检测器、土壤温湿度检测器和人流量检测器;物联网智能环境中的设备都属于物联网交互的设备,通过有线或者无线的方式向网关发送相关的数据。
进一步,所述步骤一中,获取物联网设备的流量信息具体过程为:
采用运行在OpenWrt上的tcpdump工具来收集所有的流量信息,将获取到的数据流量信息和已知的MAC地址进行一一对应,进行检测分析;
通过工具将流量信息保存成外部存储设备USB上,然后在USB上记录这些流量信息,采用Cron周期任务来定期收集相关的信息。
进一步,所述步骤二中,确认进行物联网流量分类识别的特征向量具体过程为:
对物联网设备的流量做了相关选择,并作为相关特征向量;基于物联网设备流量分类采用物联网设备中的流量属性进行分类。
进一步,所述属性主要包含两大部分:物联网设备活动的流量模式和物联网设备的信号模式;
物联网设备活动的流量模式,主要包含流量总量、流持续时间和设备睡眠时间;
物联网设备的信号模式,主要包含以下内容:
物联网设备和服务器通信的远程端口,每一个物联网设备都会和远程服务器固定的几个端口进行通信,将这些与通信端口根据通信的频繁程度进行统计;
使用DNS查询的域名和使用频率;DNS是所有网络设备使用的通用应用程序;由于物联网设备是为特定目的定制设计的,因此它们只能访问有限数量的域,这些域对应于它们特定于供应商的端点服务器;
DNS查询:网络通讯基于TCP/IP的,而TCP/IP是基于IP地址的,访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面;这是因为有一个叫“DNS服务器”的计算机自动把域名翻译成了相应的IP地址,然后调出IP地址所对应的网页;DNS是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作;
使用NTP查询的频次,NTP是物联网设备使用的另一种流行协议,因为对于物联网设备来说精确的验证执行时间对物联网操作尤为重要,许多物联网设备倾向于定期使用NTP协议;
NTP:网络时间协议是在数据网络潜伏时间可变的计算机系统之间通过分组交换进行时钟同步的一个网络协议,位于OSI模型的应用层;NTP意图将所有参与计算机的协调世界时,时间同步到几毫秒的误差内;它使用Marzullo算法的修改版来选择准确的时间服务器,减轻可变网络延迟造成的影响;NTP在公共互联网保持几十毫秒的误差,并且在理想的局域网环境中,实现超过1毫秒的精度。
进一步,所述步骤三中,具体过程为:
将开发一种基于多阶段机器学习的算法,使用这些属性的组合来帮助对物联网设备进行高精度分类;
统计属性包括流量/持续时间、睡眠时间和DNS/NTP间隔等,其中包含单个定量和连续的值;因此,采用两阶段的物联网分类器分层架构,包括:第一阶段分类器和第二阶段分类器。
进一步,所述第一阶段分类器,每一个第一阶段分类器生成的两个输出,即一个试探性的类和置信度,连同其他单值定量属性被送入一个第二阶段分类器产生最终的输出;
第一阶段分类器使用朴素贝叶斯多项式分类器来分析第一阶段中的每个数据信息;
在训练阶段,分类器取每一个类的分布情况,用相关计算给定一个类的每个类的概率;
朴素贝叶斯分类器在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强独立下运用贝叶斯定理为基础的简单概率分类器。
进一步,所述第二阶段分类器接受所有统计属性以及来自每个第一阶段分类器的一对输出即包括试探类和置信度,因此使用一个基于随机森林的分类器;
随机森林在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定;
主要的学习方法是根据下列算法而建造每棵树:
用N来表示训练用例的个数,M表示特征数目;
输入特征数目m,用于确定决策树上一个节点的决策结果;其中m应远小于M;
从N个训练用例中以有放回抽样的方式,取样N次,形成一个训练集即bootstrap取样,并用未抽到的用例作预测,评估其误差;
对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的;根据这m个特征,计算其最佳的分裂方式。
进一步,所述步骤四中,利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验的具体过程为:
构建多阶段机器学习方法的分类器,通过将收集的数据进行训练来对样本进行聚类,使类内数据之间、相似度最大;然后对已经训练好的分类器进行测试,即进行入侵检测实验:
若测试数据通过分类器后比较结果超过阙值,则认为传输该数据的设备为入侵物联网的设备,进行及时报警即可,否则予以通过。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:如果为恶意流量的话(入侵设备流量),被识别出来的设备为一个随机的物联网设备,但是置信度低于80%。否则,正常流量会被正确分类为正常的物联网设备,且置信度高于93%以上。所以可以把阙值定义为80%,如果低于80%,则可以将设备定义为入侵设备,需要采取报警措施。
物联网被誉为社会变革的下一波浪潮,智能家庭、企业和城市正越来越多地配备大量物联网设备。然而,这种智能环境的运营商可能甚至不完全了解他们的物联网资产,更不用说每个物联网设备是否能正常运行,免受网络攻击。本发明主要研究是基于统计的设备流量分类识别算法,并在特征向量的选择方面更多的是基于统计的流量数据包进行选择。本发明可以用来检测和减轻网络安全攻击,物联网中设备是极其容易被渗透和攻击的;通过分类识别他们每一种设备的流量模式来识别攻击。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的基于流量分类识别的物联网设备入侵检测的方法流程图。
图2是本发明实施例提供的多阶段分类器结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种一种基于流量分类识别的物联网设备入侵检测的方法,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的基于流量分类识别的物联网设备入侵检测的方法,包括:
S101:构建一个模拟的物联网智能环境,获取物联网设备的流量信息。
S102:确认进行物联网流量分类识别的特征向量。
S103:基于多阶段机器学习方法的流量分类识别,用训练数据对分类器进行训练。
S104:利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验,查看检测率。
本发明提供的基于流量分类识别的物联网设备入侵检测的方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的基于流量分类识别的物联网设备入侵检测的方法仅仅是一个具体实施例而已。
本发明实施例提供的S101中,构建一个模拟的物联网智能环境具体过程为:
先构建一个模拟的物联网智能环境,并得到一个真实的网络空间;通过有线或者无线的网络方式服务大量的物联网设备,并允许通过网关来和互联网服务器进行通信;
还在网关上安装了OpenWrt包,捕获流量的信息;并将这些流量信息保存到外部存储设备中,方便进行查看。
物联网智能环境中的设备主要包括:智能摄像头、烟雾传感器、智能开关、空气质量检测器、土壤温湿度检测器和人流量检测器;物联网智能环境中的设备都属于物联网交互的设备,通过有线或者无线的方式向网关发送相关的数据。
本发明实施例提供的S101中,获取物联网设备的流量信息具体过程为:
采用运行在OpenWrt上的tcpdump工具来收集所有的流量信息,将获取到的数据流量信息和已知的MAC地址进行一一对应,进行检测分析;
通过工具将流量信息保存成外部存储设备USB上,然后在USB上记录这些流量信息,采用Cron周期任务来定期收集相关的信息。
本发明实施例提供的S102中,确认进行物联网流量分类识别的特征向量具体过程为:
对物联网设备的流量做了相关选择,并作为相关特征向量;基于物联网设备流量分类采用物联网设备中的流量属性进行分类。
流量属性主要包含两大部分:
(1)物联网设备活动的流量模式,主要包含流量总量、流持续时间和设备睡眠时间。
(2)物联网设备的信号模式,主要包含以下内容:
①物联网设备和服务器通信的远程端口;每一个物联网设备都会和远程服务器固定的几个端口进行通信,将这些与通信端口根据通信的频繁程度进行统计。
②使用DNS查询的域名和使用频率;DNS是所有网络设备使用的通用应用程序;由于物联网设备是为特定目的定制设计的,因此它们只能访问有限数量的域,这些域对应于它们特定于供应商的端点服务器。
DNS查询:网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址,而不能认识域名;无法记住10个以上IP地址的网站,所以访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面,这是因为有一个叫“DNS服务器”的计算机自动把域名“翻译”成了相应的IP地址,然后调出IP地址所对应的网页。DNS(Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作。
③使用NTP查询的频次,NTP是物联网设备使用的另一种流行协议,因为对于物联网设备来说精确的验证执行时间对物联网操作尤为重要,许多物联网设备倾向于定期使用NTP协议。
NTP:网络时间协议(Network Time Protocol)是在数据网络潜伏时间可变的计算机系统之间通过分组交换进行时钟同步的一个网络协议,位于OSI模型的应用层。NTP意图将所有参与计算机的协调世界时(UTC)时间同步到几毫秒的误差内。它使用Marzullo算法的修改版来选择准确的时间服务器,其设计旨在减轻可变网络延迟造成的影响。NTP通常可以在公共互联网保持几十毫秒的误差,并且在理想的局域网环境中可以实现超过1毫秒的精度。不对称路由和拥塞控制可能导致100毫秒或更高的错误。
本发明实施例提供的S103中,具体过程为:
将开发一种基于多阶段机器学习的算法,使用这些属性的组合来帮助对物联网设备进行高精度分类。
统计属性包括流量/持续时间、睡眠时间和DNS/NTP间隔等,其中包含单个定量和连续的值。因此,采用两阶段的物联网分类器分层架构。
(1)第一阶段分类器
每一个第一阶段分类器生成的两个输出,即一个试探性的类和置信度,连同其他单值定量属性被送入一个第二阶段分类器产生最终的输出。
第一阶段分类器,主要使用朴素贝叶斯多项式分类器来分析第一阶段中的每个数据信息。
在训练阶段,分类器取每一个类的分布情况,用相关计算给定一个类的每个类的概率。
朴素贝叶斯分类器:在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强独立下运用贝叶斯定理为基础的简单概率分类器。
第二阶段分类器,接受所有统计属性以及来自每个第一阶段分类器的一对输出即包括试探类和置信度,因此使用一个基于随机森林的分类器。
随机森林:在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。
主要的学习方法是根据下列算法而建造每棵树:
用N来表示训练用例的个数,M表示特征数目。
输入特征数目m,用于确定决策树上一个节点的决策结果;其中m应远小于M。
从N个训练用例中以有放回抽样的方式,取样N次,形成一个训练集即bootstrap取样,并用未抽到的用例作预测,评估其误差。
对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的;根据这m个特征,计算其最佳的分裂方式。
本发明实施例提供的S104中,利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验的具体过程为:
构建多阶段机器学习方法的分类器,通过将收集的数据进行训练来对样本进行聚类,使类内数据之间、相似度最大;然后对已经训练好的分类器进行测试,即进行入侵检测实验:
若测试数据通过分类器后比较结果超过阙值,则认为传输该数据的设备为入侵物联网的设备,进行及时报警即可,否则予以通过。
下面结合具体实施例对本发明的技术方案作进一步的描述。
1、构建一个模拟的物联网智能环境
需要先构建一个模拟的物联网智能环境,并得到一个真实的网络空间,它可以通过有线或者无线的网络方式服务大量的物联网设备,并允许通过网关来和互联网服务器进行通信。
还在网关上安装了OpenWrt包,既可以用来捕获流量的信息;并将这些流量信息保存到外部存储设备中,方便进行查看。
物联网智能环境中的设备主要包括:智能摄像头、烟雾传感器、智能开关、空气质量检测器、土壤温湿度检测器和人流量检测器;都属于物联网交互的设备,可以通过有线或者无线的方式向网关发送相关的数据。
2、获取物联网设备的流量信息
采用运行在OpenWrt上的tcpdump工具来收集所有的流量信息。将获取到的数据流量信息和已知的MAC地址进行一一对应,这样方便进行检测分析。
通过工具将流量信息保存成外部存储设备USB上,然后在USB上记录这些流量信息,可以采用Cron周期任务来定期收集相关的信息。
3、确认进行物联网流量分类识别的特征向量
对物联网设备的流量做了相关选择,并作为相关特征向量。基于物联网设备流量分类在本发明中主要是采用了物联网设备中的流量属性进行分类。
流量属性主要包含两大部分:
(1)物联网设备活动的流量模式,主要包含流量总量(即下载和上传的所有字节和)、流持续时间(例如,流中上传的第一个包和最后一个包的时间差)和设备睡眠时间(例如,物联网设备没有主动发数据流的时间)。
(2)物联网设备的信号模式。主要包含以下内容:
①物联网设备和服务器通信的远程端口
每一个物联网设备都会和远程服务器固定的几个端口进行通信,将这些与通信端口根据通信的频繁程度进行统计。
②使用DNS查询的域名和使用频率
DNS是几乎所有网络设备使用的通用应用程序。由于物联网设备是为特定目的定制设计的,因此它们只能访问有限数量的域,这些域对应于它们特定于供应商的端点服务器。
DNS查询:网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址,而不能认识域名。无法记住10个以上IP地址的网站,所以访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面,这是因为有一个叫“DNS服务器”的计算机自动把域名“翻译”成了相应的IP地址,然后调出IP地址所对应的网页。DNS(Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作。DNS就是这样的一位“翻译官”。
③使用NTP查询的频次
NTP是物联网设备使用的另一种流行协议,因为对于物联网设备来说精确的验证执行时间对物联网操作尤为重要。许多物联网设备倾向于定期使用NTP协议(UDP端口123),以便与公开可用的NTP服务器同步它们的时间。
NTP:网络时间协议(Network Time Protocol)是在数据网络潜伏时间可变的计算机系统之间通过分组交换进行时钟同步的一个网络协议,位于OSI模型的应用层。自1985年以来,NTP是目前仍在使用的最古老的互联网协议之一。NTP意图将所有参与计算机的协调世界时(UTC)时间同步到几毫秒的误差内。它使用Marzullo算法的修改版来选择准确的时间服务器,其设计旨在减轻可变网络延迟造成的影响。NTP通常可以在公共互联网保持几十毫秒的误差,并且在理想的局域网环境中可以实现超过1毫秒的精度。不对称路由和拥塞控制可能导致100毫秒(或更高)的错误。
4、基于多阶段机器学习方法的流量分类识别方案
将开发一种基于多阶段机器学习的算法,使用这些属性的组合来帮助对物联网设备进行高精度分类。
本发明中统计属性包括流量/持续时间、睡眠时间和DNS/NTP间隔等,其中包含单个定量和连续的值。因此,本发明采用了两阶段的物联网分类器分层架构。
(1)第一阶段分类器
每一个第一阶段分类器生成的两个输出,即一个试探性的类和置信度,连同其他单值定量属性(例如,流量、持续时间、速率、睡眠时间和DNS查询)被送入一个第二阶段分类器产生最终的输出(即设备识别置信度)。
第一阶段分类器,主要使用朴素贝叶斯多项式分类器来分析第一阶段中的每个数据信息。
实验表明,朴素贝叶斯分类器在处理大量的唯一数据是具有良好的文本分类性能。
在训练阶段,分类器取每一个类的分布情况,如单个唯一域名,用相关计算给定一个类的每个类的概率。
朴素贝叶斯分类器:在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强(朴素)独立下运用贝叶斯定理为基础的简单概率分类器。该分类器模型会给问题实例分配用特征值表示的类标签,类标签取自有限集合。它不是训练这种分类器的单一算法,而是一系列基于相同原理的算法:所有朴素贝叶斯分类器都假定样本每个特征与其他特征都不相关。
朴素贝叶斯分类器的一个优势在于只需要根据少量的训练数据估计出必要的参数(变量的均值和方差)。由于变量独立假设,只需要估计各个变量的方法,而不需要确定整个协方差矩阵。
(2)第二阶段分类器
它接受所有统计属性以及来自每个第一阶段分类器的一对输出(即包括试探类和置信度)。由于第二阶段分类器不是线性可分的,并且第一阶段分类器的输出是标称值,因此使用一个基于随机森林的分类器。选择随机森林的另一个原因是,与其他决策树分类器相比,它对过拟合的容忍度高。
随机森林:在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。
主要的学习方法是根据下列算法而建造每棵树:
①用N来表示训练用例(样本)的个数,M表示特征数目。
②输入特征数目m,用于确定决策树上一个节点的决策结果;其中m应远小于M。
③从N个训练用例(样本)中以有放回抽样的方式,取样N次,形成一个训练集(即bootstrap取样),并用未抽到的用例(样本)作预测,评估其误差。
④对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的。根据这m个特征,计算其最佳的分裂方式。
⑤每棵树都会完整成长而不会剪枝,这有可能在建完一棵正常树状分类器后会被采用)。
5入侵检测分析
构建了多阶段机器学习方法的分类器,通过将收集的数据进行训练来对样本进行聚类,使类内数据之间、相似度最大;然后对已经训练好的分类器进行测试。即进行入侵检测实验:若测试数据通过分类器后比较结果超过阙值,则认为传输该数据的设备为入侵物联网的设备,进行及时报警即可,否则予以通过。仿真实验结果表明,该方法在明显缩短检测时间的同时检测率可达93%。
实验结果如表1所示。如果为恶意流量的话(入侵设备流量),被识别出来的设备为一个随机的物联网设备,但是置信度低于80%。否则,正常流量会被正确分类为正常的物联网设备,且置信度高于93%以上。所以可以把阙值定义为80%,如果低于80%,则可以将设备定义为入侵设备,需要采取报警措施。
表1
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述基于流量分类识别的物联网设备入侵检测的方法包括:
构建一个模拟的物联网智能环境,获取物联网设备的流量信息;
确认进行物联网流量分类识别的特征向量;
基于多阶段机器学习方法的流量分类识别,训练数据对分类器进行训练;
利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验,查看检测率;
所述构建一个模拟的物联网智能环境具体过程为:先构建一个模拟的物联网智能环境,并得到一个真实的网络空间;通过有线或者无线的网络方式服务大量的物联网设备,并允许通过网关来和互联网服务器进行通信;
还在网关上安装了OpenWrt包,捕获流量的信息;并将这些流量信息保存到外部存储设备中,方便进行查看;
所述基于多阶段机器学习方法的流量分类识别,训练数据对分类器进行训练具体过程为:
将开发一种基于多阶段机器学习的算法,使用这些属性的组合来帮助对物联网设备进行高精度分类;
统计属性包括流量/持续时间、睡眠时间和DNS/NTP间隔,其中包含单个定量和连续的值;因此,采用两阶段的物联网分类器分层架构,包括:第一阶段分类器和第二阶段分类器;
所述第一阶段分类器,每一个第一阶段分类器生成的两个输出,即一个试探性的类和置信度,连同其他单值定量属性被送入一个第二阶段分类器产生最终的输出;
第一阶段分类器使用朴素贝叶斯多项式分类器来分析第一阶段中的每个数据信息;
在训练阶段,分类器取每一个类的分布情况,用相关计算给定一个类的每个类的概率;
朴素贝叶斯分类器在机器学习中,朴素贝叶斯分类器是一系列以假设特征之间强独立下运用贝叶斯定理为基础的简单概率分类器;
所述第二阶段分类器接受所有统计属性以及来自每个第一阶段分类器的一对输出即包括试探类和置信度,因此使用一个基于随机森林的分类器;
随机森林在机器学习中,随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定;
主要的学习方法是根据下列算法而建造每棵树:
用N来表示训练用例的个数,M表示特征数目;
输入特征数目m,用于确定决策树上一个节点的决策结果;其中m应远小于M;
从N个训练用例中以有放回抽样的方式,取样N次,形成一个训练集即bootstrap取样,并用未抽到的用例作预测,评估其误差;
对于每一个节点,随机选择m个特征,决策树上每个节点的决定都是基于这些特征确定的;根据这m个特征,计算其最佳的分裂方式。
2.如权利要求1所述的基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述物联网智能环境中的设备包括:智能摄像头、烟雾传感器、智能开关、空气质量检测器、土壤温湿度检测器和人流量检测器;物联网智能环境中的设备都属于物联网交互的设备,通过有线或者无线的方式向网关发送相关的数据。
3.如权利要求1所述的基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述获取物联网设备的流量信息具体过程为:
采用运行在OpenWrt上的tcpdump工具来收集所有的流量信息,将获取到的数据流量信息和已知的MAC地址进行一一对应,进行检测分析;
通过工具将流量信息保存成外部存储设备USB上,然后在USB上记录这些流量信息,采用Cron周期任务来定期收集相关的信息。
4.如权利要求1所述的基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述确认进行物联网流量分类识别的特征向量具体过程为:
对物联网设备的流量做了相关选择,并作为相关特征向量;基于物联网设备流量分类采用物联网设备中的流量属性进行分类。
5.如权利要求4所述的基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述属性包含两大部分:物联网设备活动的流量模式和物联网设备的信号模式;
物联网设备活动的流量模式,主要包含流量总量、流持续时间和设备睡眠时间;
物联网设备的信号模式,主要包含以下内容:
物联网设备和服务器通信的远程端口,每一个物联网设备都会和远程服务器固定的几个端口进行通信,将这些与通信端口根据通信的频繁程度进行统计;
使用DNS查询的域名和使用频率;DNS是所有网络设备使用的通用应用程序;由于物联网设备是为特定目的定制设计的,因此它们只能访问有限数量的域,这些域对应于它们特定于供应商的端点服务器;
DNS查询:网络通讯基于TCP/IP的,而TCP/IP是基于IP地址的,访问网站时,更多的是在浏览器地址栏中输入域名,就能看到所需要的页面;这是因为有一个叫“DNS服务器”的计算机自动把域名翻译成了相应的IP地址,然后调出IP地址所对应的网页;DNS是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作;
使用NTP查询的频次,NTP是物联网设备使用的另一种流行协议,因为对于物联网设备来说精确的验证执行时间对物联网操作尤为重要,许多物联网设备倾向于定期使用NTP协议;
NTP:网络时间协议是在数据网络潜伏时间可变的计算机系统之间通过分组交换进行时钟同步的一个网络协议,位于OSI模型的应用层;NTP意图将所有参与计算机的协调世界时,时间同步到几毫秒的误差内;它使用Marzullo算法的修改版来选择准确的时间服务器,减轻可变网络延迟造成的影响;NTP在公共互联网保持几十毫秒的误差,并且在理想的局域网环境中,实现超过1毫秒的精度。
6.如权利要求1所述的基于流量分类识别的物联网设备入侵检测的方法,其特征在于,所述利用假物联网设备模拟入侵检测并用正常物联网设备来进行试验的具体过程为:
构建多阶段机器学习方法的分类器,通过将收集的数据进行训练来对样本进行聚类,使类内数据之间、相似度最大;然后对已经训练好的分类器进行测试,即进行入侵检测实验:
若测试数据通过分类器后比较结果超过阙值,则认为传输该数据的设备为入侵物联网的设备,进行及时报警即可,否则予以通过。
7.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1~6任意一项所述基于流量分类识别的物联网设备入侵检测的方法的步骤。
8.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于实现权利要求1~6任意一项所述的基于流量分类识别的物联网设备入侵检测的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110230371.9A CN113114618B (zh) | 2021-03-02 | 2021-03-02 | 一种基于流量分类识别的物联网设备入侵检测的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110230371.9A CN113114618B (zh) | 2021-03-02 | 2021-03-02 | 一种基于流量分类识别的物联网设备入侵检测的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113114618A CN113114618A (zh) | 2021-07-13 |
CN113114618B true CN113114618B (zh) | 2022-07-08 |
Family
ID=76709637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110230371.9A Active CN113114618B (zh) | 2021-03-02 | 2021-03-02 | 一种基于流量分类识别的物联网设备入侵检测的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113114618B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113347210B (zh) * | 2021-08-03 | 2021-10-29 | 北京观成科技有限公司 | 一种dns隧道检测方法、装置及电子设备 |
CN113609480B (zh) * | 2021-08-12 | 2023-04-28 | 广西师范大学 | 基于大规模网络流的多路学习入侵检测方法 |
CN113824730A (zh) * | 2021-09-29 | 2021-12-21 | 恒安嘉新(北京)科技股份公司 | 一种攻击分析方法、装置、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109886833A (zh) * | 2019-01-21 | 2019-06-14 | 广东电网有限责任公司信息中心 | 一种面向智能电网服务器流量异常检测的深度学习方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10356111B2 (en) * | 2014-01-06 | 2019-07-16 | Cisco Technology, Inc. | Scheduling a network attack to train a machine learning model |
CN108540451A (zh) * | 2018-03-13 | 2018-09-14 | 北京理工大学 | 一种用机器学习技术对网络攻击行为进行分类检测的方法 |
CN110620760A (zh) * | 2019-07-30 | 2019-12-27 | 东南大学 | 一种SVM和贝叶斯网络的FlexRay总线融合入侵检测方法和检测装置 |
CN112087447B (zh) * | 2020-09-07 | 2022-05-06 | 广西师范大学 | 面向稀有攻击的网络入侵检测方法 |
-
2021
- 2021-03-02 CN CN202110230371.9A patent/CN113114618B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109886833A (zh) * | 2019-01-21 | 2019-06-14 | 广东电网有限责任公司信息中心 | 一种面向智能电网服务器流量异常检测的深度学习方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113114618A (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113114618B (zh) | 一种基于流量分类识别的物联网设备入侵检测的方法 | |
CN109600363B (zh) | 一种物联网终端网络画像及异常网络访问行为检测方法 | |
CN109450842B (zh) | 一种基于神经网络的网络恶意行为识别方法 | |
CN107135093B (zh) | 一种基于有限自动机的物联网入侵检测方法及检测系统 | |
US10200382B2 (en) | System and method for detecting abnormal traffic behavior using infinite decaying clusters | |
CN107360145B (zh) | 一种多节点蜜罐系统及其数据分析方法 | |
Ramaki et al. | RTECA: Real time episode correlation algorithm for multi-step attack scenarios detection | |
CN107517216B (zh) | 一种网络安全事件关联方法 | |
CN111262722A (zh) | 一种用于工业控制系统网络的安全监测方法 | |
CN112104677A (zh) | 一种基于知识图谱的受控主机检测方法和装置 | |
EP3913888A1 (en) | Detection method for malicious domain name in domain name system and detection device | |
Matoušek et al. | Efficient modelling of ICS communication for anomaly detection using probabilistic automata | |
CN105827611B (zh) | 一种基于模糊推理的分布式拒绝服务网络攻击检测方法和系统 | |
Bezawada et al. | Behavioral fingerprinting of Internet‐of‐Things devices | |
Shitharth et al. | A new probabilistic relevancy classification (PRC) based intrusion detection system (IDS) for SCADA network | |
Fan et al. | Autoiot: Automatically updated iot device identification with semi-supervised learning | |
Sukhwani et al. | A survey of anomaly detection techniques and hidden markov model | |
CN112087450B (zh) | 一种异常ip识别方法、系统及计算机设备 | |
Yin et al. | Anomaly traffic detection based on feature fluctuation for secure industrial internet of things | |
Aluthge | Iot device fingerprinting with sequence-based features | |
Tsikerdekis et al. | Network anomaly detection using exponential random graph models and autoregressive moving average | |
Farid et al. | Learning intrusion detection based on adaptive bayesian algorithm | |
Li et al. | Remote NAT detect algorithm based on support vector machine | |
CN114004281A (zh) | 基于设备标识的流量分类识别方法 | |
KR102037192B1 (ko) | 계층적 구조 학습을 통한 네트워크 트래픽의 지속적인 신호 트래픽 탐지 장치 및 방법 |
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 |