CN111314310B - 一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 - Google Patents
一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 Download PDFInfo
- Publication number
- CN111314310B CN111314310B CN202010060693.9A CN202010060693A CN111314310B CN 111314310 B CN111314310 B CN 111314310B CN 202010060693 A CN202010060693 A CN 202010060693A CN 111314310 B CN111314310 B CN 111314310B
- Authority
- CN
- China
- Prior art keywords
- data packet
- data
- industrial control
- network
- attack
- 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/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/2411—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Evolutionary Biology (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于机器学习的不可解析网络数据特征选择的攻击检测方法。本方法由数据获取预处理、特征提取与构建、基于机器学习攻击检测模型建立与检测三部分组成:数据预处理部分对网络数据数值化;特征提取与构建部分在深入解析工控网络攻击的基础上,基于数据包周期、长度信息完成数据特征的构建;建模部分是基于机器学习分类方法建立工控网络攻击检测模型。本发明能实时准确的检测工控系统网络中重放大流量攻击、中间人攻击等攻击形式,减少安全事故发生和带来的经济损失。
Description
技术领域
本发明涉及一种工控网络攻击检测方法,具体地说,是一种利用机器学习,基于工控网络数据包特征工程完成工控网络特定攻击检测的方法,属于工控网络安全技术领域。
背景技术
工业互联网是互联网和新一代信息技术与全球工业系统全方位深度融合集成所形成的产业和应用生态,是工业智能化发展的关键综合信息基础设施。大型工控网络在带来设备智能化、便利的远程控制的同时也使其更加容易受到网络攻击的威胁。高技术含量的网络攻击手段不断出现,病毒日趋复杂,工业领域一旦受到网络攻击,将会造成巨大的经济损失。因此,研究适用于工控网络的实时攻击检测与定位技术进行安全防护显得极为重要。目前,主流的攻击检测方案大多是针对特定的工控系统场景,研究适用于该场景的算法,从而建立通信行为攻击检测模型,从而实现实时的、高精度的网络攻击检测。然而,主流的工控企业,例如中控、西门子、霍尼韦尔等,都在朝着私有化、高度加密化的方向开发产品。加密的网络数据使得攻击检测模型无法提取关键有效的特征进行推理决断,实用性和普适性得到限制。因此,研究基于加密的、协议不可解析的工控网络数据的特征提取与构建方法以及鲁棒的高性能的机器学习算法,实现加密网络的攻击检测进行安全防护显得极为重要。
目前常用的工控网络入侵检测方案是在通过网络数据数据包分析软件抓取工业通信过程中的网络数据包的基础上,引入适应网络数据特征的攻击检测算法,对构建的网络数据集进行训练测试,在满足攻击检测准确率和时间精度的要求下,建立工控网络攻击检测模型。现有的工控网络攻击检测方法主要是针对通用可解析网络数据,对加密未解析网络数据的攻击检测研究尚缺,同时由于工控网络系统受到攻击形式多变不一,基于常规机器学习算法的模型鲁棒性较差,可以将泛化能力高的集成学习方法应用到网络攻击检测中。
发明内容
为了加强工况系统的安全防护能力,工控现场控制层与现场设备层之间的通信普遍会进行加密和签名处理,加密的网络数据使得攻击检测模型无法提取关键有效的特征进行推理决断,本发明在深入解析异常攻击模式的基础上,设计一种基于周期和数据包长度特征的特征构建方案,并以SVM分类算法和集成学习自适应提升算法(Adaptive Boosting,AdaBoost)为重点,研究基于此重构特征的机器学习检测模型。
本发明是通过以下技术方案实现的:一种基于机器学习的不可解析网络数据特征选择的攻击检测方法,该方法包括如下步骤:
步骤1:实时抓取工控系统通信过程中控制层与现场设备层间通信网络数据包,完成网络数据包预处理;
步骤2:特征提取与构建,即深入解析工控系统中中间人、重放大流量攻击这两种攻击模式,由于数据包协议不可解析性,在数据包周期、长度信息的基础上构建新的数据特征,该数据特征包括发送周期内数据包之间的长度差值、周期间相同长度数据包的时间差值、数据包收发频率;
步骤3:在步骤2)的基础上,完成数据包预处理以及攻击数据包和正常数据包标定,建立工控网络训练集;
步骤4:基于机器学习方法建立工控网络攻击检测模型,并利用步骤3)得到的工控网络训练集训练所述模型;
步骤5:利用步骤4)训练好的工控网络攻击检测模型判断网络数据包是否异常,完成工控网络的攻击检测。
进一步地,所述步骤1中,对通过抓包工具抓取的通信网络数据包进行预处理,包括对IP地址、协议类型等非数值信息完成数值转化,转化过程具体为:将IP地址的四位信息转化为四位数值信息,将q种协议类型依次转化为0,1,2,…,q-1。
进一步地,所述步骤2中,根据数据包周期、长度信息构建的新的数据特征与数据包原有的数据特征共同组成用于模型训练的数据特征,所述数据包原有的数据特征包括数据包帧头信息。
进一步地,所述网络数据包帧头中具有时间t、数据包长度length两种数据信息;为了解决中间人攻击通过伪造主机ip使通信双方无察觉的问题,从数据包周期出发,选择每相邻的两个相同长度数据包i和j的时间间隔作为数据包i的特征量,与原有特征综合得到现有不可解析数据包的特征向量:
考虑到一个周期内相同长度的数据包数量共有n个,第n个数据包序列设为σn,特征向量:
考虑到周期内可能具有相邻长度差相同的数据包对共m对,特征向量:
进一步地,从数据包收发时间特征出发,提取数据包收发频率特征f,f为数据包i前ΔT(可取1s)时间内通信过程中收发数据包个数,构成特征向量:
基于周期内相同长度数量数据包个数n,具有相邻长度差相同的数据包对m对,最终用以下向量表示协议不可解析数据包i的数据特征:
本发明方法与现有技术相比,具有的有益效果是:本发明可在网络数据协议不可解析的情况下,基于周期和数据包长度特征重构特征,并基于机器学习方法建立工控网络攻击检测模型,能准确的检测工控系统网络中重放大流量攻击、中间人攻击等攻击形式,最大程度的减少工控网络攻击造成的安全事故发生和带来的经济损失。
附图说明
图1是本发明方法流程图;
图2是数据包周期时间特征构建流程图;
图3是数据包周期内长度差构建流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
利用典型工控网络安全测试平台,现场控制层采用国内中控ECS700控制器,现场设备层将串级水箱作为控制对象,给出工控网络攻击检测流程,包括如下步骤:
步骤1)实时抓取工控系统通信过程中控制层与现场设备层间通信网络数据包,完成网络数据包预处理。
借助Wireshark工具采集了网络通信数据共119176条数据,其中正常数据包与攻击数据包比例为50:1,完成数据集的构建。其中通过Wireshark抓包软件抓取的通信网络数据文件是pcap格式的,进行格式转化为csv文件,对帧头中IP、协议等非数值信息进行数值转化,将IP地址的四位信息转化为四位数值信息,将q种协议类型依次转化为0,1,2,…,q-1。采集的网络数据收发周期为13,一个周期内相同长度数据包共有2个,相邻长度差相同数据包对共1对。
步骤2)特征提取与构建,即深入解析工控系统中中间人、重放大流量攻击这两种攻击模式,由于数据包协议不可解析性,在数据包周期、长度信息的基础上构建新的数据特征,如图2、3所示,新数据特征包括发送周期内数据包之间的长度差值和周期间相同长度数据包时间差值,还包括数据包i前1s内通信过程中收发数据包个数f,再和原有特征包括数据包帧头信息等组成现有数据特征。
考虑到一个周期内相同长度的数据包数量共有n个,第n个数据包序列设为σn,具有相邻长度差相同数据包对共m对,和频率特征f组成协议不可解析数据包i特征:
再引入源IP地址(IPsrc)、目的IP地址(IPdst)、源端口(PORTsrc)、目的端口(PORTdst)、等信息,增加对IP地址更改、数据包丢失、数据包伪造、端口更改、数据包乱序几种攻击方式的检测,与重放大流量攻击和中间人攻击组成共七种攻击形式,分别在不同的作用位置给出。采集的网络数据收发周期内共有13个数据包,一个周期内相同长度数据包共有2个,相邻长度差相同数据包对共1对,即n=2,m=1,此时协议不可解析数据包i特征:
步骤3)完成数据包预处理以及攻击数据包和正常数据包标定,建立工控网络数据集;
对帧头信息中网络端口值和IP值进行归一化处理,构建步骤2)结论所述的具有数据包帧头信息和构建新特征的16维数据特征与标签。通过人为设定,对攻击数据包和正常数据包分别给标签+1、-1,完成工控网络数据集的建立,构建的数据集按照7:3的比例划分成数据训练集与测试集。
步骤4)基于机器学习方法建立工控网络攻击检测模型。
以工业互联网中的每一个数据包为研究对象,可解析网络数据攻击检测问题实质上变成了数据包的分类问题,分别建立基于机器学习SVM、集成算法AdaBoost的分类模型。将步骤3)得到的训练集作为输入,进行训练学习得到工控网络攻击检测模型。
步骤5)利用步骤4)训练好的工控网络攻击检测模型判断网络数据包是否异常,完成工控网络的攻击检测。
将数据集中的测试集输入训练模型中,预测结果即判断当前数据包是否为攻击数据包。考虑模型性能的优化,分别对SVM惩罚参数、调节参数以及AdaBoost迭代次数进行参数设置,比较不同参数下的模型性能。最终考虑到本平台固定主从站通信周期大于0.02s,规定攻击检测时间要小于此值,否则如果不能实时检测,设计的方案将没有意义。所以选择迭代次数n=65的AdaBoost算法建立攻击检测模型,此时检测时间为0.019902s,模型的召回率为96.3602%,精度为97.3767%。
以上所述仅是本发明的优选实施方式,虽然本发明已以较佳实施例披露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (2)
1.一种基于机器学习的不可解析网络数据特征选择的攻击检测方法,其特征在于,包括如下步骤:
步骤1:实时抓取工控系统通信过程中控制层与现场设备层间通信网络数据包,完成网络数据包预处理;
步骤2:特征提取与构建,即深入解析工控系统中中间人、重放大流量攻击这两种攻击模式,由于数据包协议不可解析性,在数据包周期、长度信息的基础上构建新的数据特征,该数据特征包括发送周期内数据包之间的长度差值、周期间相同长度数据包的时间差值、数据包收发频率;根据数据包周期、长度信息构建的新的数据特征与数据包原有的数据特征共同组成用于模型训练的数据特征,所述数据包原有的数据特征包括数据包帧头信息,所述数据包帧头中具有时间t、数据包长度length两种数据信息;从数据包周期出发,选择每相邻的两个相同长度数据包i和j的时间间隔作为数据包i的特征量,与原有特征综合得到现有不可解析数据包的特征向量:
考虑到一个周期内相同长度的数据包数量共有n个,第n个数据包序列设为σn,特征向量:
考虑到周期内可能具有相邻长度差相同的数据包对共m对,特征向量:
从数据包收发时间特征出发,提取数据包收发频率特征f,f为数据包i前ΔT时间内通信过程中收发数据包个数,构成特征向量:
基于周期内相同长度数量数据包个数n,具有相邻长度差相同的数据包对m对,最终用以下向量表示协议不可解析数据包i的数据特征:
步骤3:在步骤2)的基础上,完成数据包预处理以及攻击数据包和正常数据包标定,建立工控网络训练集;
步骤4:基于机器学习方法建立工控网络攻击检测模型,并利用步骤3)得到的工控网络训练集训练所述模型;
步骤5:利用步骤4)训练好的工控网络攻击检测模型判断网络数据包是否异常,完成工控网络的攻击检测。
2.根据权利要求1所述的一种基于机器学习的不可解析网络数据特征选择的攻击检测方法,其特征在于:所述步骤1中,对通过抓包工具抓取的通信网络数据包进行预处理,包括对IP地址、协议类型等非数值信息完成数值转化,转化过程具体为:将IP地址的四位信息转化为四位数值信息,将q种协议类型依次转化为0,1,2,…,q-1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060693.9A CN111314310B (zh) | 2020-01-19 | 2020-01-19 | 一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010060693.9A CN111314310B (zh) | 2020-01-19 | 2020-01-19 | 一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111314310A CN111314310A (zh) | 2020-06-19 |
CN111314310B true CN111314310B (zh) | 2021-02-12 |
Family
ID=71152885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010060693.9A Active CN111314310B (zh) | 2020-01-19 | 2020-01-19 | 一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111314310B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112822151A (zh) * | 2020-11-06 | 2021-05-18 | 浙江中烟工业有限责任公司 | 面向控制网络工业计算机的多层精准主动网络攻击检测方法及系统 |
CN112491867B (zh) * | 2020-11-24 | 2021-11-12 | 北京航空航天大学 | 一种基于会话相似性分析的ssh中间人攻击检测系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9686300B1 (en) * | 2014-07-14 | 2017-06-20 | Akamai Technologies, Inc. | Intrusion detection on computing devices |
CN108737332A (zh) * | 2017-04-17 | 2018-11-02 | 南京邮电大学 | 一种基于机器学习的中间人攻击预测方法 |
CN110535854A (zh) * | 2019-08-28 | 2019-12-03 | 南京市晨枭软件技术有限公司 | 一种用于工业控制系统入侵检测方法及系统 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141455B (zh) * | 2015-08-24 | 2018-08-17 | 西南大学 | 一种基于统计特征的有噪网络流量分类建模方法 |
US10701092B2 (en) * | 2016-11-30 | 2020-06-30 | Cisco Technology, Inc. | Estimating feature confidence for online anomaly detection |
CN107508831B (zh) * | 2017-09-21 | 2020-02-14 | 华东师范大学 | 一种基于总线的入侵检测方法 |
JP6835703B2 (ja) * | 2017-12-01 | 2021-02-24 | 日本電信電話株式会社 | サイバー攻撃検知システム、特徴量選定システム、サイバー攻撃検知方法、及びプログラム |
CN110324316B (zh) * | 2019-05-31 | 2022-04-22 | 河南九域恩湃电力技术有限公司 | 一种基于多种机器学习算法的工控异常行为检测方法 |
CN110311898B (zh) * | 2019-06-13 | 2021-08-03 | 浙江工业大学 | 基于高斯径向基函数分类器的网络化数控系统中间人攻击检测方法 |
CN110636076B (zh) * | 2019-10-12 | 2021-06-11 | 北京安信天行科技有限公司 | 一种主机攻击检测方法及系统 |
-
2020
- 2020-01-19 CN CN202010060693.9A patent/CN111314310B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9686300B1 (en) * | 2014-07-14 | 2017-06-20 | Akamai Technologies, Inc. | Intrusion detection on computing devices |
CN108737332A (zh) * | 2017-04-17 | 2018-11-02 | 南京邮电大学 | 一种基于机器学习的中间人攻击预测方法 |
CN110535854A (zh) * | 2019-08-28 | 2019-12-03 | 南京市晨枭软件技术有限公司 | 一种用于工业控制系统入侵检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111314310A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909811B (zh) | 一种基于ocsvm的电网异常行为检测、分析方法与系统 | |
WO2020134867A1 (zh) | 一种用于电力终端的异常数据的检测方法及装置 | |
CN109861988A (zh) | 一种基于集成学习的工业控制系统入侵检测方法 | |
CN111314310B (zh) | 一种基于机器学习的不可解析网络数据特征选择的攻击检测方法 | |
CN111885059B (zh) | 一种工业网络流量异常检测定位的方法 | |
CN113162893B (zh) | 基于注意力机制的工业控制系统网络流量异常检测方法 | |
CN112702235B (zh) | 一种对未知协议自动化逆向分析的方法 | |
CN111092862A (zh) | 一种用于对电网终端通信流量异常进行检测的方法及系统 | |
CN104734916A (zh) | 一种基于tcp协议的高效多级异常流量检测方法 | |
CN114721264A (zh) | 一种基于两阶段自编码器的工业信息物理系统攻击检测方法 | |
CN114444096B (zh) | 一种基于数据分析的网络数据储存加密检测系统 | |
CN112134873B (zh) | 一种IoT网络异常流量实时检测方法及系统 | |
CN104753617A (zh) | 基于神经网络的时序型隐信道检测方法 | |
Ouyang et al. | FS-IDS: a novel few-shot learning based intrusion detection system for scada networks | |
CN112291213A (zh) | 一种基于智能终端的异常流量分析方法及装置 | |
CN116662184A (zh) | 一种基于Bert的工控协议模糊测试用例筛选方法及系统 | |
Xia et al. | Intrusion detection system based on principal component analysis and grey neural networks | |
CN117729540A (zh) | 一种基于统一边缘计算框架的感知设备云边安全管控方法 | |
CN112822191A (zh) | 一种网络化协同系统中多维数据安全性检测的方法 | |
Sathar et al. | Mitigating IEC-60870-5-104 vulnerabilities: Anomaly detection in smart grid based on LSTM autoencoder | |
CN115643085A (zh) | 一种物联网设备安全保护方法及系统 | |
CN114884695A (zh) | 一种基于深度学习的工业控制流量协议识别方法 | |
Peng et al. | Research on abnormal detection technology of real-time interaction process in new energy network | |
CN112954689A (zh) | 针对蓝牙无线传输的轻量化网络入侵检测系统和方法 | |
CN115086043B (zh) | 一种基于最小公共子序列的加密网络流量分类识别方法 |
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 |