2023年7月8日发(作者:)
小型微
型计算
机系统Journal
of
Chinese
Computer
Systems2021年4月第4期Vol.
42
No.
4
2021基于EKM-AE模型的无监督主机入侵检测方法柴亚闯-杨文忠蔦张志豪-胡知权J杜慧祥S钱芸芸I'(新疆大学信息科学与工程学院,乌鲁木齐830046)2(新疆大学软件学院,乌鲁木齐830046)E-mail:
ywz_xy@
163.
com摘
要:针对深度学习方法运用于入侵检测时需要大量标注数据集和难以实时检测的缺陷,利用网络流量中正常数据多于异
常数据的一般规律,提出一种结合集成K-means聚类和自编码器的EKM-AE(
ensemble
K-means
and
autoencoder)入侵检测方
法.首先通过集成K-means聚类从实时抓取的网络流量中得出正常样例,用于训练自编码器,然后由完成训练的自编码器执行
入侵检测.在虚拟局域网主机环境下进行了入侵检测实验,结果表明,在绝大多数实际应用场景(正常流量多于异常流量)下该
方法具有良好的检测性能,且具有全过程无监督、可实时在线检测的优点,对主机网络安全有良好的提升作用.关键词:集成K-means聚类;自编码器;网络入侵检测;无监督学习;实时在线检测中图分类号:TP393
文献标识码:A
文章编
号:1000-1220(2021 )04-0868-07Unsupervised
Host
Intrusion
Detection
Method
Based
on
EKM-AE
ModelCHAI
Ya-chuang1
,YANG
Wen-zhong1
, ZHANG
Zhi-hao1
,HU
Zhi-quan1
,DU
Hui-xiang2,
QIAN
Yun-yun11 ( College
of
Information
Science
and
Engineering,
Xinjiang
University,
Urumqi
830046,
China)2 (
School
of
Software,
Xinjiang
University,
Urumqi
830046,
China)Abstract:
In
view
of
the
defects
that deep
learning
requires
a
large
number
of
annotated
data
sets
and
is
difficult
to
detect
in
real
time
when
it
is
applied
to
intrusion
detection,
an
EKM-AE
intrusion
detection
method
combining
ensemble
K-means
clustering and
autoencoder
was
proposed
based
on
the
general
rule
that
normal
data
is
more
than
abnormal
data
in
network
traffic.
Firstly,
normal
samples
were
obtained
from
the
real-time
captured
network
traffic
by
using
ensemble
K-means
clustering
to train
the
autoencoder,
and
then
intrusion
detection
was
performed by
the
trained
autoencoder.
The
intrusion
detection
experiment
was
taken on
the
host
under
virtual
LAN
environment,
and
the
result
shows
that
the
method
has
a
good
detection
performance
in
most
practical
application
scenarios
(
normal
traffic
is
more
than abnormal
traffic)
,and the
whole
detection
process
is
real-time,unsupervised and
online.
So
it
is
also
benefit
in
improving
the
network
security
of
the
words:ensemble
K-means
clustering;autoencoder;network
intrusion
detection;unsupervised
learning;real-time
online
detection1引言随着计算机及网络技术的飞速发展,越来越多的人通过
计算机学习知识、聊天通讯,甚至网上交易•然而随着计算机
不同特征来辨别入侵行为.因此这种方法相比以往方法具有
能检测新的未知类型攻击的优点⑺.但是目前机器学习或深
度学习应用于入侵检测还有着以下不足⑻:1)
需要大量有标签的数据集进行监督训练.为了得到检
越来越多地应用于生活中的方方面面,计算机或服务器面临
测性能比较好的模型,用于训练模型的数据量往往是越多越
好.且为了降低模型检测的误报和漏报率,这些数据集往往都
要有人工添加标签处理⑼.因此大量数据收集、整理并添加
标签会给人们带来较高的工作量.2)
离线学习.目前机器学习或深度学习应用于入侵检测
的安全隐患也越来越严重•入侵检测系统(Intrusion
Detection
System,
IDS)作为一种监视和分析主机或网络事件的系统,
在当前网络安全防御中发挥着非常重要的作用⑴.由于物联
网及工业控制网络对实际生活生产的巨大影响,大部分的入
侵检测系统主要针对于物联网或工控网络,用于主机、服务器
或其它领域的相对较少近年来,许多国内外学者将机器
学习方法引入入侵检测中,使网络设备的入侵检测能力大大
的基本流程是收集数据、对收集到的数据进行预处理、用备选
模型进行训练、用检测数据测试模型性能.比如在入侵检测领
域,基于公开离线数据集(-KDD等)开展的研究
增强.相比以往基于规则的入侵检测,这些机器学习方法通过
学习网络的正常或异常行为反应在目标系统底层网络流量的
占了相当大的比例,尽管这些模型在公开数据集上取得了较
好的检测效果,但不同于图像处理中训练及检测数据与实
收稿日期:2020307
收修改稿日期:2020-05-08
基金项目:国家自然科学基金项目(U1603115
)资助;国家重点研发计划项目
(2017YFC0820702-3)资助;新疆维吾尔自治区高校科研计划项目创新团队项目(XJEDU2017T002)资助;四川省科技计划项目(WA2O18-
YY007)资助.作者简介:柴亚闯,男,1995年生,硕士研究生,研究方向为网络安全、人侵检测;杨文忠(通讯作者),男,1971年生,博士,副教
授,CCF会员,研究方向为网络安全、机器学习;张志豪,男,1995年生,硕士研究生,研究方向为信息安全、智能交通;胡知权,男,1993年生,硕士
研究生,研究方向为网络信息安全、无线传感器网络;杜越祥,男,1994年生,硕士研究生,研究方向为自然语言处理、知识图谱;钱芸芸,女,1996
年生,硕士研究生,研究方向为自然语言处理、信息安全.4期柴亚闯等:基于EKM-AE模型的无监督主机入侵检测方法869际应用环境中非常类似的特点,入侵检测领域中成功的入侵
规则或建立博弈模型来进行,部分方法对已知类型的攻击具
大都归功于攻击者奇异的想法和手段,因而其训练及检测数
有较好的检测能力,但这些方法有着不能检测未知攻击、对大
据集中所体现的网络环境和网络事件与实际使用中的可能会
数据场景不适用或使用的工具具有局限性(比如低交互式蜜
大不相同,而这种利用离线数据学习的方法会使模型只学习
罐)等缺点.到收集数据时网络环境的特点,这就会导致模型在实际使用
机器学习方法在入侵检测领域中的应用也比较多.基本
中缺乏灵活性与自学习能力,从而使其正确率及实际可用性
模式是利用代表网络事件的网络流量等数据,建立模型,学习
大打折扣.正常行为或攻击行为的不同特征,从而能够自动辨别入侵行
3)占用资源量大,训练复杂度高,且实时检测较难实现.
为g.用大量数据训练模型意味着方法对计算机或其它智能设备有
许劭皤等人⑴针对目标网络在遭受攻击时反应在底层
较高的硬件要求.比如,加载数据集需要较大的内存,为了提
重要网络流量特征各异的特点,引入信息增益率定量分析不
高模型的训练及检测速度需要较高性能的处理器等.而人工
同特征对检测性能的影响程度,采用半监督学习利用少量标
神经网络的计算复杂度会随着神经元的个数指数增长⑻,层
记数据获得大量数据用于训练,提高模型的检测性能:Praba-
数较深的网络也会有较高的训练复杂度.因此这种方法在执
vathy
S等人"[针对规模可缩放、动态的物联网环境,基于模
行速度上劣于基于规则的方法.面对每秒钟会产生的巨大数
糊计算,采用在线序列极限学习机(Online
Sequential
Extreme
据包数量,实时检测往往难以保证.Learning
Machine)的方法,构建分布式的检测体系;Anand S
鉴于以上不足,应该着力完善机器学习在入侵检测领域
等人使用改进的遗传K均值算法(IGKM)进行入侵检测
的应用方法和应用的具体网络场景.所以,本文提出了一种结
实验,并在KDD99数据集上与K-means
+
+算法做了对比;
合传统机器学习方法一集成K-means聚类和人工神经网络模
Yisroel
M等人⑻针对网关或路由器设备内存和计算能力有限
型(Artificial
Neural Network,ANN)—自编码器的无监督在线
的问题,提出了一种基于集成自编码器的在线入侵检测方法.主机入侵检测方法EKM-AE,具有如下特点:以上机器学习方法虽然能够检测未知类型的攻击,但会
1)
无监督学习•本文方法针对Kitsune方法⑷(2018年
存在特征选取不全面、需要大量数据用以训练等问题,进而造
NDSS会议论文,下文亦用Kitsune代表)需要正常数据样本
成模型对某些类型的攻击检测性能不高、数据的可靠标签化
训练自编码器的缺陷,利用集成K-means聚类从一般流量
需要成本、检测模型受限于训练数据等问题I⑷•比如文献[1]
(正常与异常流量均存在)中得出正常样本用以训练自编码
中方法虽然可以利用少量标记数据获得大量训练数据,但是
器,所以能在全程无监督(不需要标签)的条件下较好地区分
半监督方式本身会使训练数据的标签岀现一定的错误率.
测试集中的正常与异常流量.降低了一般机器学习需要大量
Kitsune虽然也采用了基于自编码器的在线检测方法,但该模
标签数据产生的数据集收集整理的工作量.型的训练要用正常流量数据进行,不能说是一种完全无监督
2)
在线处理.本文方法可以设计成获取使用时流量作为
的方法,而且该模型的特征提取方法在某些应用场景中不能
训练数据的形式,即在线训练、在线检测,这样就有利于克服
全面反应网络流量的特点.上述离线学习产生的缺陷,本文实验部分就以在线训练、在线
因此,本文提出基于EKM-AE模型的无监督主机入侵检
检测方式进行实验对比,展现本文方法的有效性.测方法,实验部分把本方法同几种常用无监督方法以及Kit3)
复杂度低.本文方法的检测模型主要由一自编码器构
sune
方法进行了对比.成,使得模型训练检测简单,执行速度在很多情况下高于数据
包产生的速度.3相关理论2相关工作本文EKM-AE模型用到的相关理论有两部分:集成K-
means聚类与自编码器.目前入侵检测可以根据其使用的方法分为非机器学习的
3.1集成K-means聚类检测和机器学习的检测.k均值聚类算法是一种迭代求解的聚类分析算法,首先
Guo Q等人设计了一种对无线传感器网络任一路由
选取k个对象作为初始聚类中心,通过某种距离计算方法,计
协议的所有攻击类型自动生成规则的方法,使得无线传感器
算每个对象与各个聚类中心的距离,把每个对象分配给距离
网络场景下的入侵检测更具有普适性和灵活性:Shen
S等
它最近的聚类中心.聚类中心以及分配给它们的对象就代表
人将无线传感器网络中攻击者与入侵检测代理之间的作
一个聚类•分配样本后,聚类中心会根据聚类中现有的对象被
用建模成一种入侵检测博弈模型,根据两者的作用关系定义
重新计算,这个过程将不断重复直到满足某种终止条件为止.
代价矩阵,从而得到一种可以节省无线传感器节点资源的防
这种方法可以自动地由样本间的某种距离将样本区分开来,
御方法;Fronimos
D等人评估了几种低交互式蜜罐的性
具有简单、无监督和运行速度快的优点.能,并进一步讨论了低交互式蜜罐在发现高级可持续威胁早
集成学习因为相较于单个模型通常能够获得更好的预测
期迹象方面的用途;Pawlick
J等人对云控系统中云管理
结果被广泛应用.一般通过构建并结合多个单个模型来实现.
员、攻击者和设备3种不同角色用不同的博弈模型进行建模,
在单个模型产生后,通过某种策略将单个模型的结果结合起
深化了对云控系统安全的理解.来,产生更好的预测结果.可以看出,入侵检测中的非机器学习方法大都通过生成
因此,为了增强K-means聚类结果的可靠性,本文采用集 870小型微型计算机系统2021
年成K-means聚类方法.先通过一定策略将输入数据分成若干
我们用/,表示网络中的第i层,用I
h
II表示第I,层中神
部分,接着对每一部分进行K-means聚类操作,最后结合每部
分数据的聚类结果综合得出输入数据的聚类结果•该过程可
用图1来表示.经元的个数,用w,表示连接层I,与层iiti的权重;X表示层
心上的偏置.因此,该模型的参数e可定义为元组0=
(
W,
b).由于输出要重构输入,因此,与一般神经网络模型不同的
y”y”y”y,,yh1
z”z”z;,z”z”.
•
•
|是,自编码器的输出层神经元的个数与输入层神经元的个数
相等.且输出层的权重矩阵与隐藏层权重矩阵互为转置,即在
图2中,%
=叫.自编码器的执行过程比较简单,在训练完成后仏"层的
选取不同部分,
分别进行k-means
聚类■
I
x»x,
|、根据各部芳•棗
类结果,得出
最终聚类结果rr,z,
i
丫2,仏I
yi.y»y.
|;
••…I
X'M
II曲|
z“z.输出可表示为:4+|
=/(叱•
a; +勺),其中a,即层上的
输出/(
•)为神经网络的激活函数,一般为sigmoid函数,定
义为=rv?-设%为自编码器的输入,爲(•)为自编码
器在参数0下的全局正向传播,则最终的执行输出y可表示
Zi,Z2,Z3,Z4,Zj,…正常样本类异常样本类为y
=如(x).自编码器可采用典型的神经网络训练方法一误差反向传
图1集成K-means聚类示意图Fig.
1
Schematic
diagram
of
the
ensemble
K-means
clustering播算法进行训练.训练之前,需要定义输出向量与输入向量差
值的度量(即重构误差),作为反向传播的优化目标.注意,还有其它的无监督聚类算法可以使用,比如DB-
SCAN等,但是集成方式的K-means算法在本环境中最直接
自编码器可以起到很多作用,用于异常检测就是其中之
基本原理就是以数据x进行训练之后的自编码器就会具
有效.若采用DBSCAN算法,由于必须不断通过调整eps和
min_samples参数值来得到合适的聚类数,所以在集成方式的
有重构与X处于相同分布的其它数据的能力.如果一个数据
与X属于不同的数据分布规律,则其重构结果与其本身就会
有较大的误差.同样,在定义了输入与其重构结果之间差值的
每轮迭代中都会造成较高的时间复杂度,以至基本无法在实
际环境中使用.第5节会进一步讨论该问题.3.2自编码器度量后,通过设定阈值,就可以检测是否有异常情况发生,本
文就是利用这一特点检测网络中存在的异常情况.自编码器(autoencoder, AE)是一类半监督学习和无监督
学习中使用的人工神经网络,功能是通过将输入信息作为学
习目标,对输入信息进行表征学习.包含编码器和解码器.对
输入信息的高效表示称为编码,这种表示维度一般远小于输
4本文方法本文EKM-AE模型可分为EKM(集成K-means聚类)部
分和AE(自编码器)部分,其中EKM部分用于以无监督的方
式得出流量中的正常样例用于训练,AE部分是用于执行训
入数据,使得其可用于降维.而由编码阶段的低维表示还原出
原输入信息称为解码.自编码器一般表现为将输入复制到输
出来工作,但通过不同方式对神经网络增加约束,可以使这种
复制变得极其困难.比如,可以限制内部表示的尺寸(即实现
练和异常检测的自编码器.整个方法流程包括数据包抓取、数
据包解析、特征获取、模型训练和异常检测5个部分,如图3
所示.(巧始)降维),或者对训练数据增加噪声并训练自编码器使其能恢
复原有.这些限制条件防止自编码器机械地将输入复制为输
出,并强制它学习到数据的高效表示•此外,自编码器还有着
其它许多作用.|数据包抓取|
|数据包解析||特征获取集成K-means巴
获豉正膏样例|篆模型EKM部分.模型AE部分图3本文方法流程图图2自编码器示例图Fig.
2
Schematic
diagram
of
the
autoencoderFig.
3
Flow
diagram
of
this
method数据包抓取通过第3方工具捕获流经主机网卡的实时流
作为一种特殊的人工神经网络,自编码器具有神经网络
量数据.本文使用wireshark工具,将网卡流量数据捕获为原
始流量数据pcapng文件.数据包解析通过wireshark中的
tshark工具,将原始pcapng文件中的有关属性信息提取出来,
的一般结构:输入层(input,visible
layers)、隐藏层(hidden
lay-
ers)和输出层(output
layers).
一个典型的自编码器(只有一
个隐藏层)结构可以用图2来表示.从而将原始流量数据转换为检测需要使用的信息.特征获取 4期柴亚闯等:基于EKM-AE模型的无监督主机入侵检测方法871将数据包解析的结果转换成计算机能够处理的数字(向量),
用于下一步模型的训练或执行•模型训练部分先无监督地找
出代表正常流量的数字向量,并构造自编码器,然后由这些向
量对自编码器进行训练.异常检测部分接收代表实时流经网
卡流量的数字向量,并用完成训练的自编码器模型对数字向
量进行重构,给出数字向量的重构误差•在重构误差大于某一
阈值时,方法判定对应的流量数据具有入侵行为.由于数据包抓取,数据包解析两部分均通过第3方工具
来实现,因此本文对这两部分不做详细说明.4.1特征获取特征对于模型最终的性能会产生非常大的彫响,一般使
用全面反应客观数据规律的特征训练得到的模型都具有较好
的性能.特征获取的任务最主要是用数字去代表实际的数据,
有不少方法根据实际信息计算出某些统计量(即统计特征)
作为特征获取结果,也有些方法为了降低模型的复杂度,选用
尽可能少的特征去代表实际信息.这些方法有着选取特征不
全面或计算复杂度过高的问题,因此本着简单有效的原则,本
文选取了数据包长度、源目MAC地址、源目IP地址和源目
TCP端口等可能对检测结果有影响的18个属性信息,这些属
性在tshark中的对应名称如表1所示.表1属性名称列表Table
1
Table
of
property
name
used
一选取属性在tshark命令中的对应名称
frame,
len
eth.
src
eth.
dst
ip.
src
ip. dst
tcp.
srcport
tcp. dstport
udp.
srcport
udp.
dstport
icmp.
type
icmp.
code
arp.
opcode
arp.
src.
hw_mac
arp.
src.
proto_ipv4
arp. dst.
hw_mac
arp.
dst.
proto_ipv4
ipv6.
src
ipv6.
dst然后用数字对抓取数据中这些属性出现的取值进行编
号,即一种编号对应一种属性取值情况.在实现中,利用py
thon语言中字典数据类型即可实现这种转换,将属性取值作图4特征获取构造字典示例图Fig.
4
Schematic
diagram
of
the
generated
dictionaries
for
getting
features为字典键值key,其对应的数字编号作为value,这种处理得到
的示例字典如图4所示.利用字典中的value值得到代表每条数据样例的向量表
示.随后对这些向量表示进行归一化操作以便于训练.需要注
意的是,为了实现在线训练、在线检测的方式,本文参考了
Kitsune对数据归一化的操作方式,根据处理过的向量不断改
变记录最大值和最小值的参数norm_max和norm_min,并利
用当前参数norm_max和norm_min的值对要处理的向量进
行归一化,实现一种在线归一化的方式,归一化公式为:x
=---------------x
-
norm
minnorm_max
-
norm_min=---:-----
+
pad-其中pad取非常接近于0的正小数,如10".按照这种
方式,在模型训练前,记录前10000条数据逐一归一化后的结
果以在模型训练阶段使用,类似地,在异常检测阶段,根据训
练阶段最后的norm_max和norm_min参数值,对待检测样例
的向量表示进行归一化,之后输入到已完成训练的自编码器
模型进行检测.这种特征获取方法以简单直接的方式记录了实际数据包
的特点,避免了计算复杂统计量对时间的大量消耗,又能够较
全面地记录实际流量数据的特点,对比实验中也说明了这个
问题.4.2模型训练本文在模型训练部分,与以往方法最显著的不同就是设
法弥补自编码器需要正常标签的数据进行训练的不足.如果
能够无监督地发现正常样本,再用这些正常样本对自编码器
训练,就能够实现更大程度的无监督化,这种无监督化,在对
比真实标签测试模型性能之外的其他阶段,均不需要人工方
式为数据集添加正常或异常标签.为了实现这个目标,本文
EKM-AE模型在EKM部分利用网络流量中正常数据要远远
多于入侵性数据的一般规律,采用集成K-means方法对目标
数据进行无监督聚类操作,并认定最终聚类结果里,占多数的
一类为正常数据类.EKM部分中的集成K-means聚类操作可
表示为下述算法1.算法1. EKM部分中集成K-means聚类:
clustering(train_x,n):cur_iter
=
0last_result
=[]while
cur_iter
do:sub_x = select_sub_matrix( train_x)result = K-means (k =2, sub_x) result = modify_by_more_to_negative (result) last_result. append(result) cur_iter + +endlast_result = numpy. array (last_result). T final_result = decide_by_vote( last_result) return final_result该过程中,train_x表示训练数据(含有异常样本),n是事 先指定的总迭代次数,一般取奇数,select_sub_matrix通过随 机指定若干特征列,得到训练数据的“子部分", modify _by_ more_to_negative将每次K-means聚类结果里多数部分标为 正常(0).重复这个过程n次,若训练数据中某样例在n次K- means聚类中多于号次均被判定为正常(异常),则最终认定872小型微型计算机系统5实验结果及分析S.1实验环境2021 年此样例为正常(异常).根据这种机制,在模型训练之前,捕获最开始的10000条 数据样例,执行集成K-means聚类操作,将多数的一类视为正 常样例,用于自编码器模型的训练.为了防止数据信息在逐层 为了检测本文EKM-AE方法在基于主机的入侵防御中 传递中不断丢失,本文采用只有一个隐藏层的自编码器作为 训练与检测模型.由于输入样例维度为18,所以自编码器的 是否有效,使用虚拟化软件VMware-workstation搭建了虚拟 的局域网实验环境.针对可能对主机发起的5种攻击类型做 了实验,包括从目标主机中抓取流量数据,用EKM-AE方法 给出实验结果,将结果与相关方法进行对比并分析原因等 输入神经元个数与输出神经元个数均为18,隐藏层神经元个 数按一定的比例进行压缩.训练过程可表示为下述算法2. 算法2.自编码器训练过程: train(0,X,max_iter):过程.实验选取的5种攻击类型有:使用kali-Linux对主机进行 的arp攻击(含此攻击的测试数据用“kali_arp”代表,本段下 cur_iter = 0文括号内字母意义类似)、使用第3方软件p2p终结者对主机 进行的arp攻击(p2p_arp)、针对主机操作系统漏洞的攻击 (winserver)、针对主机的dos攻击(dos)以及包含后门的文件 while cur_iter < = max_iter do:A,X#=he(X) deltas =be(X,Xf) 对宿主主机的攻击(adobe).以上5种攻击中,kali_arp、dos攻 击通过kali_linux的命令行命令arpspoof、hping3实现,winserver 攻击通过在 kali-linux中,利用靶机win 7操作系统曾 0 = GD( A, deltas) cur_iter ++retum 0有的漏洞msl7_010_etemalblue来实现,adobe攻击利用靶机 Adobe Reader 9版本软件中含有的漏洞,在kali-linux里生成 上述过程中,A与X,分别表示当X作为输入时,正向传 播所得到的每个神经元的激活量与实际的输出,由于模型训 含有后门的pdf文件来实现,p2p_arp攻击通过使用第3方工 具软件p2p终结者,以图形用户界面方式实现.练目的是能够重构输入,所以deltas表示实际输出与期望输 出(输入本身)的差值(其他符号可参见3. 2节),随后利用梯 实验环境中涉及的系统或软件版本如表2所示.表2各软件或系统版本详情表Table 2 Table of details of software and system used软件或系统名称度下降算法更新权重,直到迭代次数超过既定最大次数为止. 注意在本实验中,为了保证模型在检测阶段的有效性,同时减 少模型的训练时间,模型训练阶段权值调整方式为每条训练 数据仅对模型权重进行一次调整,即cur_iter初始化的值与 max_iter相等.当聚类模块得到的所有正常样例都已执行过 版本配置10.0.3备注用作构建虚拟化实验VMware-workstationkali-linux操作系统环境的工具 2017.3,分配内存依托VMware,充当攻击机训练过程,自编码器的训练结束.4.3异常检测windows 7操作系统1G旗舰版,分配内存1G旗舰版,内存4G,依托VMware,充当靶机为虔拟机分配资源,自编码器用于异常检测的基本原理如3. 2节末所述.本 文中异常检测由完成训练的自编码器来执行.待检测数据根 据训练阶段最后的norm_max和norm_min参数值,按照训练 windows 7物理机i3,主频 2.50GHzWireshark2.4. 1运行实验代码的物理阶段类似的归一化方式进行归一化,之后输入到已完成训练 的自编码器模型进行重构.采用均方根误差(RMSE)来度量机在虚拟机中抓取靶机数据包,在物理机中 Adobe ReaderAdobe Reader 9解析数据包的工具利用其本身存在的漏实例输入与输出的重构误差,即RMSE (;,彳)=,其中"是x和y向量的维度.最后,记录此均p2p终结者待检测样例向量表示待检测样例洞,完成后门文件控 制靶机的实验 P2P终结者4. 35用作完成由第3方工具发起arp攻击实验重构误差 重大于阈值 构/误差的工具pycharmpycharm-communi- 归一化ty-2019.2.3 训练完成 的自编码器重构误差 小于阈值判定 为正常pythonpython-3.7.1为了说明EKM-AE中无监督聚类部分的有效性,即尽管 训练数据中含有异常样本,方法也能发现后续发生的入侵行 图5异常检测过程图Fig. 5 Schematic diagram of anomaly detection为,在模型的训练数据中引入了入侵性数据(用kali-linux对 靶机进行了 arp欺骗).同时,因为Kitsune方法需要在模型训 练之前用一段数据得出特征映射矩阵以生成多个自编码器, 方根误差,当该均方根误差大于某一阈值时,则判定该样例有 入侵行为.异常检测的过程如图5所示.所以本文做了如下设定用于这两种方法的对比:假设Kitsune4期柴亚闯等:基于EKM-AE模型的无监督主机入侵检测方法873用于得到特征映射的数据有10000条,用于训练模型的数据 大部分数据集上的tpr值均不高,说明其并没有把足够的异常 有10000条(根据文献[8],此20000条数据需均为正常访问 样本检测出来,K-means方法和GMM方法也是类似的情况.数据),EKM-AE方法用于提取正常样本训练模型的数据共 higher is better10000条(此10000条数据中含有恶意数据,更接近实际的使 用场景),在含有上述5种攻击类型的测试数据上对比实验 效果•此外,还将EKM-AE方法与离线处理的高斯混合模型 (GMM)、孤立森林模型(IsolationForest)、K-means 方法进行 了对比.5.2评价指标一般可以通过真正率(TPR)、真负率(TNR)、假正率 (FPR)、假负率(FNR)和准确率(accuracy)对二分类模型性 能进行评价,分别定义为:图7各种方法在5种数据集上的真正率tprof each method in 5 data setsTPR =TPTNRTNFPFig. 7 True positive rate FN +TP'FP + 77V,FPRTN + FP'FNR图8进一步补充对比了各种方法的性能.可以看岀,KitFN TPTP + FN'accuracy = + TN FN + FP + TP + TN,sune 在 5 种数据集上的 fpr 值均较高, 说明该方法并不适合 于本文基于主机的入侵检测.从上述三种指标的角度综合来 本文采用了 TPR、FPR和accuracy指标来对比各个模型 的性能•此外,本文定义了处理速度指标看,process_rate用以对 EKM-AE能在全过程无监督的情况下较好地区分出局域 比各个方法检测的实时性:网环境中对主机的正常访问流量与常见攻击流量.且对不同 process _rate训练和测遨矚包总数(千条)的攻击类型,方法性能具有相对稳定性.雄在赠集上执彳刊I练和检i所用总时间(秒),即每秒处理的数据包总千条数(kpackets/s).5.3结果及分析图6•图9分别表示5种方法在含有5种不同攻击类型的 数据集上的检测准确率(accuracy).真正率(TPR)、假正率 (FPR)和执行速度(process_rate).其中 K-means 方法、GMM 方法的参数均已通过skleam中工具包GridSearchCV进行了 参数调优,Kitsune异常检测的阈值选择原则是使分类TP值最大,同时FP值最小.图8各种方法在5种数据集上的假正率fprhigheris betterFig. 8 False positive rate of each method in 5 data sets666oooooo L 100图9通过process_rate指标衡量了各种方法对流量处理80的实时性.60B 40200kali_arp p2p_arp winserver dos adobe O K-means Q IsolationForest 0 GMM m Kitsune ■ EKM-AE图6各种方法在5种数据集上的准确率accuracyFig. 6 Accuracy of each method in 5 data setses Kitsune ■ EKM-AE从accuracy可以初步看出,EKM・AE在检测kali_arp、 攻击时表现均不错.Kitsune方法表现不好的原因 图9各种方法在5种数据集上的执行速度process_rate是它主要以数据包的长度计算对应样例的统计量,这样得到 Fig. 9 Execution speed-process_rate of each的特征较难以检测出具有欺骗或攻击性内容的数据包(如 method in 5 data setskali_arp、p2p_arp、winserver 和 adobe 攻击).因为入侵检测数 从图9可以看出,K-means方法和GMM方法也具有较 据集具有异常样例一般远少于正常样例的特点,这种情况下, 快的训练检测速度,但从tpr Jpr和accuracy指标来看,它们 accuracy值较高不一定说明检测出了足够多的异常样本.所 没有较好的检测性能• Kitsune方法检测速度较慢,是因为其 以为了说明方法对异常样本的检测能力,我们还需要对比在 特征提取模块根据源目ip、源目mac和数据包长度进行了较 5种数据集上的真正率(TPR)和假正率(FPR).为复杂的统计特征计算.EKM-AE对5种数据集均具有较快 从图7可以看出,EKM・AE在5种数据集上均具有很好的 的训练检测速度.以最低process_rate =2. 78( kpackets/s)来 效果,IsolationForest虽然从accuracy指标看表现很好,但其在看,每秒处理2780条数据包已基本满足实际使用时的一般情874小型微型计算机系统2021 年况.因此综合来看,EKM-AE在具有稳定较好的检测性能的 puter Research and Development, 2015,52 (10) : 2239-2246.同时,也具有较好的检测实时性.[8 ] Yisroel M, Tomer D, Yuval E, et al. Kitsune: an ensemble of au在无监督聚类模块,笔者用集成DBSCAN聚类代替本文 toencoders for online network intrusion detection [ C ] //NDSS 中集成K-means聚类的实验中发现,为了得到合适的聚类数, 2018 : The Network and Distributed System Security Symposium, arXiv preprint arXiv: 方法需要不断调整eps和min_samples参数值,且 [9 ] Yang Hong-yu, Wang Feng-yan. Network intrusion detection model 在每次由不同特征列选出训练数据的“子部分”后都需要类 based on improved convolutional neural network [J]. Journal of 似调整,而在实验中一次调参就耗费了较多的时间(71.82 Computer Applications,2019,39(9) :2604-2610.秒),说明在训练之前的聚类部分,相对于集成K-means,集成 [10 ] Jiang Jie, Gao Jia, Chen Tie-ming. Network intrusion detection DBSCAN不适合本文环境下的使用.method based on AE-BNDNN model [ J ]. Journal of Chinese Com因此上述实验结果表明,本文EKM-AE方法以在线训练、 puter Systems,2019,40(8): 1713-1717.[11] Guo Qi ,Li Xiao-hong, Xu Guang-quan, et al. MP-MID: multi-pro在线检测的方式,在全过程无监督的条件下,对实际使用场景 tocol oriented middleware-level intrusion detection method for 中发生的攻击具有较好的检测性能,同时具有检测实时性.wireless sensor networks [ J ]. Future Generation Computer Systems,2016,70(5) :4247.6总结与展望[12] Shen Shi-gen,Hu Ke-Ii,Huang Long-jun,et al. Quantal response equilibrium-based strategies for intrusion detection in WSNs[J], Mobile 本文提出了一种结合集成K-means和自编码器的无监督 Information Systems,https ://doi. org/10.1155/2015/179839.在线主机实时入侵检测方法EKM-AE.利用网络流量中正常 [13] Fronimos D, Magkos E, Chrissikopoulos V. Evaluating low interac访问数据多于异常访问数据的一般规律,通过集成K-means tion honeypots and on their use against advanced persistent threats 方法和自编码器模型,实现对网络入侵的无监督实时在线检 [C ]//Proceedings of the 18th Panhellenic Conference on Infor- 测.通过局域网中基于主机的攻击检测实验表明,ACM,2014:-AE具 matics(PCri4) [14] Pawlick J,Farhang S,Zhu Q. Flip the cloud:cyber-physical signa有一定的有效性•在网络攻击日益复杂、新颖的挑战下,这种 ling games in the presence of advanced persistent threats [ C ]// 在线训练、在线检测的方法会比传统离线学习模型发挥更大 Proc of the 6th Int Conf on Decision and Game Theory for Securi的优势.ty ,Springer ,2015:289 -308.对比其它相关方法可以发现,机器学习用于网络入侵检 [15] Zhang Lei,Cui Yong,Liu Jing,et al. Application of machine learn测,应注意提取的特征要具有全面性和实时性.全面性即特征 ing in cyberspace security research [J]. Chinese Journal of Comput- 应全面反应网络环境特点,实时性即特征要能代表当前网络 ers,2018,41 (9) :1943-1975.[16] Prabavathy S, Sundarakantham K, Mercy S S. Design of cognitive 环境特点.传统离线学习模型在实际应用中性能大打折扣就 fog computing for intrusion detection in internet of thingsf J]. Jour是由于其训练数据的特征不能或不全面反应实际使用时网络 nal of Communications and Networks, 2018,20 (3) : 291-298.环境的流量特点,因此以后的研究中应更注重特征的全面性 [17] Anand S J V,Pranav I,Neetish M,et al. Network intrusion detec与实时性.另外,EKM-AE可以考虑更多的特征,并按特征所 tion using improved genetic K-means algorithm] C]// International 属协议种类进行分组,以实现更加准确、更多种类的入侵检测.Conference on Advances in Computing, Communications and Informatics ,IEEE ,2018:2441 -nces:[18] Zhang Yu-qing,Dong Ying,Liu Cai-yun,et al. Situation,trends and [1 ] Xu Meng-fan, Li Xing-hua, Liu Hai, et al. An intrusion detection prospects of deep learning applied to cyberspace security [ J ]. Journal scheme bases on semi-supervised learning and information gain ra- of Computer Research and Development,2018,55 (6) :[ J]. Journal of Computer Research and Development,2017,54(10) :2255-2267.附中文参考文献:[2 ] Yang An, Sun Li-min, Wang Xiao-shan, et al. Intrusion detection [1 ]许劭珞,李兴华,刘 海,等•基于半监督学习和信息增益率的入 techniques for industrial control systems [J]. Journal of Computer 侵检测方案[〕]•计算机研究与发展,2017,54(10):ch and Development, 2016,53 (9) : 2039-2054.[2] 杨 安,孙利民,王小山,等•工业控制系统入侵检测技术综述 [3 ] Kang Jian,Wang Jie,Li Zheng-xu,et al. A model for anomaly in[J] •计算机研究与发展,2016,53(9) :n detection with different feature extraction strategies in IoT [3] 康 健,王 杰,李正旭,等•物联网中一种基于多种特征提取策 [o Security,2019,19(9) :21-25.略的入侵检测模型[J].信息网络安全,2019,19(9):21-25.[4 ] Li Hong-biao, Qin Su-juan. Optimization and implementation of in[5]黄伟庆,丁 昶,崔 越,等•基于恶意读写器发现的RFID空口 dustrial control system network intrusion detection by telemetry a- 入侵检测技术[J] •软件学报,2018,29(7)=s[ C]//3rd IEEE International Conference on Computer and [7]汪 波,聂晓伟•基于多目标数学规划的网络入侵检测方法 Communications, IEEE ,2017 :1251-1254.[J].计算机研究与发展,2015,52(10):2239-2246.[5 ] Huang Wei-qing, Ding Chang, Cui Yue, et al. RFID air interface [9 ]杨宏宇,王峰岩.基于改进卷积神经网络的网络入侵检测模型 intrusion detection technology based on malicious reader discovery [J].计算机应用,2019,39(9) :2604-2610.[J]. Journal of Software,2018,29(7) :1922-1936.[10]江 颉,高 甲,陈铁明•基于AE-BNDNN模型的入侵检测方 [6 ] Firkhan A B H A, Yee Y L. Development of host based intrusion 法[J].小型微型计算机系统,2019,40(8):ion system for log files] C]//IEEE Symposium on Business, [15]张 蕾,崔 勇,刘 静,等.机器学习在网络空间安全研究中的 Engineering and Industrial Applications, IEEE ,2011 :281 -285.应用[J].计算机学报,2018,41(9):1943-1975.[7 ] Wang Bo, Nie Xiao-wei. Multi-criteria mathematical programming [18]张玉清,董 颖,柳彩云,等•深度学习应用于网络空间安全的现 based method on network intrusion detection [J]. Journal of Com状、趋势与展望[〕]•计算机研究与发展,2018,55(6):3-28.
发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1688820718a173169.html
评论列表(0条)