CN110430183A - 基于会话特征相似性的mh-lstm异常检测方法 - Google Patents
基于会话特征相似性的mh-lstm异常检测方法 Download PDFInfo
- Publication number
- CN110430183A CN110430183A CN201910698522.6A CN201910698522A CN110430183A CN 110430183 A CN110430183 A CN 110430183A CN 201910698522 A CN201910698522 A CN 201910698522A CN 110430183 A CN110430183 A CN 110430183A
- Authority
- CN
- China
- Prior art keywords
- data
- lstm
- layer
- session
- user
- 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.)
- Pending
Links
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/1425—Traffic logging, e.g. anomaly detection
-
- 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/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开基于会话特征相似性的MH‑LSTM异常检测方法,通过设立滑动窗口以收集用户的Web访问数据,利用Min‑Hash对Web访问数据进行处理提取序列特征;然后利用LSTM的时间序列分类算法进行检测模型的训练;最后利用训练好的检测模型对抓取的Web会话流数据进行异常用户的检测和定位。本发明不仅能够有效适应流数据环境下的挑战,且能够保持较高的检测率和召回率。
Description
技术领域
本发明涉及WEB流数据的异常检测领域,尤其涉及基于会话特征相似性的MH-LSTM异常检测方法。
背景技术
伴随着人们对Web应用的依赖加剧,Web服务在为人们带来便利的同时,其安全问题成为了所有人类的共同威胁,如何抵御Web的各种攻击已经成为全球领域的最大挑战之一。一般来说,安全问题的起初征兆都表现为异常信息,通过异常检测尽早的发现异常信息有助于及时止损。如何及时从Web流数据中检测和定位异常是当下的一个研究热点。
一般来说,目前的国内外异常检测研究主要包含以下三个方面的内容:(1)基于统计分析的异常检测算法,在面对数据分布复杂的大数据集时,由于数据分布轮廓描绘困难,其检测能力明显下降,且检测阈值的设定一直是影响检测性能的一大要素;(2)基于规则的异常检测算法,能够很好的保证异常检测的准确性,但是如何及时更新规则是该方法存在的一个问题;(3)基于数据挖掘的异常检测算法,通常需要大量带标签的数据用于模型训练,但是实际情况中各领域带标签的数据往往难以获得,且属于无监督学习领域,模型的准确率相比于其他方法较弱。
发明内容
本发明的目的在于提供基于会话特征相似性的MH-LSTM异常检测方法。
本发明采用的技术方案是:
基于会话特征相似性的MH-LSTM异常检测方法,通过设立滑动窗口以收集用户的Web访问数据,利用Min-Hash对Web访问数据进行处理提取序列特征;然后利用LSTM的时间序列分类算法进行检测模型的训练;最后利用训练好的检测模型对抓取的Web会话流数据进行异常用户的检测和定位。
进一步地,检测方法包括离线训练阶段和在线检测阶段,具体步骤如下:
离线训练阶段:
步骤1-1,获取训练用的Web访问数据,并采用Min-Hash对Web访问数据进行预处理,提取序列特征,得到训练样本,
步骤1-2,将训练样本提取的序列特征输入LSTM网络进行离线训练,
步骤1-3,采用多层网格搜索和交叉验证的方法获取LSTM网络的最优参数,得训练好的检测模型;
在线检测阶段:
步骤2-1,建立滑动窗口从流数据中截取滑动窗口内的Web访问数据,
步骤2-2,采用Min-Hash对截取的滑动窗口内的Web访问数据进行预处理,提取序列特征,得到检测样本,
步骤2-3,将检测样本输入训练好的检测模型;
步骤2-4,训练好的检测模型检测和定位异常数据并输出结果。
进一步地,步骤1-1或步骤2-2中的数据预处理分为数据清理、用户识别和会话识别,数据清理将访问数据只保留html和htm的访问记录,用户识别将同一个IP地址视为同一个用户,基于时间阈值的启发式方法将用户停留页面时间超过设定时间阈值的访问记录视为新会话。
会话识别是用户访问行为分析的基础和关键工作,会话识别准确度对于识别和发现用户的信息需求具有决定性的影响。会话是指用户在一次访问过程中所访问的页面序列,它代表了用户对服务器的一次有效访问。目前的会话识别方法都是启发式的。大致可以分为基于时间阈值的启发式方法和基于引用的启发式方法这两类。
进一步地,步骤1-1或步骤2-2中的数据预处理后的数据格式如下:
{useri:session1,session2,…sessionk|1≤i≤m,1≤k≤n}
其中,useri为第i个用户i,m为用户数,n为单个用户最多会话数,sessionk为第k个会话。
进一步地,步骤1-1或步骤2-2中采用Min-Hash生成签名信息的方式将访问数据进行转换,数据处理完成后格式如下:
{user1:session_MinHash,user2:session_MinHash,…,useri:session_MinHash,…,use rm:session_MinHash|1≤i≤m}
其中,useri为第i个用户i,m为用户数。采用Min-Hash不仅保留了数据的相似性特征,而且将数据的维度进行了一定程度上的降低,提高了计算效率。假设存在m个用户。
进一步地,步骤1-2中LSTM网络包括嵌入层、LSTM模型和全连接层,LSTM模型包括输入层、隐藏层和输出层,嵌入层将单个长的序列转变为多个固定的短序列,输入层从嵌入层接收数据并传输至隐藏层,LSTM模型具有多个隐藏层,每个隐藏层为一个特征表示层,当前隐藏层为下个隐藏层的输入,迭代训练使得隐藏层权重不断调整直至网络收敛,输出层将LSTM模型的预测值输出,全连接层为两个,且两个全连接层之间加入Dropout层,全连接层将LSTM模型输出层的输出转换为label标签,用以表示输入的序列是否异常序列。
本发明采用以上技术方案,首先采取滑动窗口的方式截取Web流数据中的会话数据;然后通过Min-Hash算法提取长短不一的会话序列数据中的特征,充分保有了数据的相似性特征,使得会话序列数据成为了长短一致且能够被LSTM网络处理的数据;最后将数据输入构建好的LSTM网络进行训练,使用训练好的LSTM网络来区分异常数据和正常数据,LSTM网络能够更好的提取会话序列数据的前后相关特性。本发明不仅能够有效适应流数据环境下的挑战,且能够保持较高的检测率和召回率。
附图说明
以下结合附图和具体实施方式对本发明做进一步详细说明;
图1为本发明的MH-LSTM架构示意图;
图2为本发明的LSTM架构示意图;
图3为本发的在线检测阶段示意图;
图4为本发明算法在不同会话数量下的检测性能示意图;
图5为本发明算法在不同会话数量下的用时示意图。
具体实施方式
本发明的MH-LSTM异常检测方法主要涉及两个相关技术。(1)采用Min-Hash算法提取会话序列数据中的特征。(2)构建LSTM网络用于异常数据的检测和定位。
(1)Web会话序列数据中的特征提取:Min-Hash算法是Broder提出的最小独立置换(Min-wise Independent Permutation)概念的简单实现,是局部敏感哈希(Locality-Sensitive Hashing,LSH)的一种。LSH原本的作用是用来高效处理海量数据高维数据的最近邻问题。LSH通过一个特殊的哈希函数将两个相似度很高的数据以较高的概率映射成同一个哈希值,两个相似度低的数据以极低的概率映射成同一个哈希值。
Min-Hash的具体描述为,给定一个随机哈希函数h(x),Min-Hash函数被定义为mh(υ)=argmin{h(υ[i]|υ∈V)},V是向量集,υ[i]是υ的第i个元素并且υ[i]=1,0≤i≤|υ|-1。那么对于集合A和集合B的二进制向量υ1,υ2则有如式(1)所示:
传统的Min-Hash主要应用在二进制向量的场景中,例如某个用户对某个资源有过访问行为,则用1表示,否则用0。Min-Hash的结果为所有项随机排列后,最先出现1所在的值的所在行值。通过Min-Hash的方式,本发明为每一个用户访问行为序列生成了用户访问签名信息作为用户访问特征。如果原始的用户访问信息具有很高的相似度,那么生成的签名信息会以较大的概率被映射成同一个哈希值。所以本发明采用Min-Hash的方式提取Web会话序列访问特征,相较于其他处理方式,不仅降低了维度且很好的保留了用户的访问行为特征。
(2)LSTM网络模型介绍:长短时记忆网络(Long Short-Term Memory,LSTM)是循环神经网络(Recurrent Neural Networks,RNN)的一种改进型。RNN网络与传统的BP神经网络的区别在于:其每个神经元的训练都会依赖上一个时间节点的神经元的信息,因此RNN网络非常适合用于处理时间序列的问题。但是RNN往往只能拥有短期记忆,时间间隔较大的节点信息会被RNN忽略遗忘。这是因为神经元的输出采用Sigmoid函数,随着时间序列的不断深入,在较为深层的神经网络中,输入的更新对输出的影响会变的很小,小数的累乘会导致梯度不断的逼近于0,产生“梯度消失”的现象。梯度的消失意味着那一层隐含层的参数再也不会更新,那么那一层隐含层就只是单纯的简单映射,变得毫无意义。相比之下,LSTM更适合处理和预测时间序列问题。
一个典型的LSTM网络主要由输入层,隐含层,输出层构成。LSTM的核心在记忆单元的设计,LSTM设计了三个门来解决长期依赖的问题。
1、遗忘门:第一步遗忘门决定的是本发明会从细胞状态中选择之前存储的信息中丢弃什么信息。遗忘门采用sigmoid函数计算输入信息和上层的信息,0表示完全丢弃,1代表完全保留。如式(2)所示:
ft=σ(Wf·[ht-1,xt]+bf) (2)
2、输入门:输入门决定让多少新的信息加入到细胞状态中用于学习。这主要包含两个部分,第一步sigmoid层决定是什么值本发明要更新,然后一个tanh层创建一个新的候选值向量会被加入到状态中,第二步本发明将合并这两个信息来产生对状态的更新。简单的来说sigmoid函数选择更新的内容,tanh函数创建候选的更新。具体如式(3),(4),(5)所示:
it=σ(Wi·[ht-1,xt]+bi) (3)
3、输出门:最后输出门决定输出的值,它将输出本发明的细胞状态。首先用sigmoid函数确定细胞状态的那个部分将被输出,然后通过tanh函数将输出信息进行映射得到一个在-1到1之间的值并将它和sigmoid门的输出相乘,最终将本发明确定的部分进行输出。具体如式(6),(7)所示:
ot=σ(Wo·[ht-1,xt]+bo) (6)
ht=ot*tanh(Ct) (7)
基于LSTM网络的设计,使得其在能够更好地识别前后序列紧密相关的Web会话访问序列。所以本发明首先采用Min-Hash算法提取Web会话访问序列的特征,使得长短不一Web会话访问序列能够成为LSTM网络的输入,利用构建好的LSTM网络来完成异常的检测和定位。
如图1-5之一所示,本发明公开了基于会话特征相似性的MH-LSTM异常检测方法,通过设立滑动窗口以收集用户的Web访问数据,利用Min-Hash对Web访问数据进行处理提取序列特征;然后利用LSTM的时间序列分类算法进行检测模型的训练;最后利用训练好的检测模型对抓取的Web会话流数据进行异常用户的检测和定位。如图1所示,检测方法包括离线训练阶段和在线检测阶段,具体步骤如下:
离线训练阶段:
步骤1-1,获取训练用的Web访问数据,并采用Min-Hash对Web访问数据进行预处理,提取序列特征,得到训练样本,
步骤1-2,将训练样本提取的序列特征输入LSTM网络进行离线训练,
步骤1-3,采用多层网格搜索和交叉验证的方法获取LSTM网络的最优参数,得训练好的检测模型;
在线检测阶段:如图3所示,最后,针对检测数据本身的数据流动性,本发明建立滑动窗口对检测数据进行截取,对窗口内完成用户访问操作的用户进行异常检测。MH-LSTM算法作用于滑动窗口分割的流数据,检测和定位异常数据并输出结果;具体的流程步骤如下:
步骤2-1,建立滑动窗口从流数据中截取滑动窗口内的Web访问数据,
步骤2-2,采用Min-Hash对截取的滑动窗口内的Web访问数据进行预处理,提取序列特征,得到检测样本,
步骤2-3,将检测样本输入训练好的检测模型;
步骤2-4,训练好的检测模型检测和定位异常数据并输出结果。
进一步地,步骤1-1或步骤2-2中的数据预处理分为数据清理、用户识别和会话识别,数据清理将访问数据只保留html和htm的访问记录,用户识别将同一个IP地址视为同一个用户。会话识别是用户访问行为分析的基础和关键工作,会话识别准确度对于识别和发现用户的信息需求具有决定性的影响。会话是指用户在一次访问过程中所访问的页面序列,它代表了用户对服务器的一次有效访问。目前的会话识别方法都是启发式的。大致可以分为基于时间阈值的启发式方法和基于引用的启发式方法这两类。本发明基于时间阈值的启发式方法将用户停留页面时间超过设定时间阈值的访问记录视为新会话。假定单个用户某个页面上的停留时间不超过10min,如果超过则将该记录划分成为新的会话。假设存在m个用户,单个用户会话数最多为n个。具体地,步骤1-1或步骤2-2中的数据预处理后的数据格式如下:
{useri:session1,session2,…sessionk|1≤i≤m,1≤k≤n}
其中,useri为第i个用户i,m为用户数,n为单个用户最多会话数,sessionk为第k个会话。
进一步地,原始数据集序列长短不一的特性使得其无法作为LSTM网络的合法输入。为了解决这一问题,有人采取“One-Hot”模型对原始数据进行转化,即建立网页矩阵,用户有访问行为则标记为1,没有则标记为0,使得用户访问序列成为一个等长的0-1序列。但是一个Web访问序列通常有上千个不同的网页,用户访问的网页却只占其中的一小部分,通过这种方法建立的网页矩阵会是一个极大的稀疏矩阵,且访问序列本身的前后关联遭到了破坏。
本发明的步骤1-1或步骤2-2中采用Min-Hash生成签名信息的方式将访问数据进行转换,不仅保留了数据的相似性特征,而且将数据的维度进行了一定程度上的降低,提高了计算效率;则假设存在m个用户,数据处理完成后格式如下:
{user1:session_MinHash,user2:session_MinHash,…,useri:session_MinHash,…,use rm:session_MinHash|1≤i≤m},其中,useri为第i个用户i,m为用户数。
进一步地,如图2所示,步骤1-2中的LSTM网络分为离线训练部分和在线监测部分,LSTM网络包括嵌入层、LSTM模型和全连接层,LSTM模型包括输入层、隐藏层和输出层,
嵌入层将单个长的序列转变为多个固定的短序列,使得较为相似的序列在向量空间上也较为接近。输入层从嵌入层接收数据并传输至隐藏层,LSTM模型具有多个隐藏层,每个隐藏层为一个特征表示层,当前隐藏层为下个隐藏层的输入,迭代训练使得隐藏层权重不断调整直至网络收敛,输出层将LSTM模型的预测值输出。全连接层为两个,且两个全连接层之间加入Dropout层防止过拟合而且一定程度上降低了运算量,全连接层将LSTM模型输出层的输出转换为label标签,用以表示输入的序列是否异常序列。
本发明使用Kingma等人提出的Adam算法,其结果在实验中均优于其他自适应算法,以克服以往在训练神经网络时通常使用梯度下降算法难以确定学习速率,容易陷入局部最优解的问题。
效果验证实验:为了验证方法的可行性,采用Python语言在Windows10操作系统上实现了本发明方法,实验运行环境实验机为联想台式电脑,处理器为Intel Core(i5),CPU为3.30GHz,内存为8GB,开发工具是PyCharm。
实验内容共包含两个阶段内容,分别为模型训练过程和在线测试阶段,实验将在NASA数据集上展开工作。模型训练阶段主要任务在于调整模型参数使模型在检测过程中能达到最优性能。MH-LSTM模型参数众多,调参工作量大且面临着容易过拟合的问题。本发明拟采用网格搜索的方式综合考虑多个参数的改动对模型的影响,并使用交叉验证的方式避免模型过拟合的问题。模型测试阶段主要验证模型的检测性能。首先验证模型在不同数量级别上的稳定性和运行时间;然后引出滑动窗口的时间间隔设定方式;最后与其他实验方法作对比,从检测率、误检率、召回率三个指标上验证模型的性能。
数据集描述:使用的数据集为NASA数据集和MSNBC数据集。NASA(NationalAeronautics and Space Administration,美国航空航天局)数据集包含用户在1995年7月-8月之间访问NASA官网产生的共1568898条日志数据。经过数据清洗,用户识别,会话识别之后生成会话数据集用于实验。MSNBC数据集来自于msnbc.com网站的数据集anonymousweb data。这个数据集记录了用户在1999年9月28号访问msnbc.com的访问记录。访问记录按照不同的URL类别和访问时间进行记录,其中URL类别为17类。异常数据与正常数据相比通常数量较少,假定生成的会话数据集为正常Web会话数据。异常数据按照一定的比例,采用模拟仿真的方式进行注入。使用应用层DDOS攻击仿真方式,共模拟Random-URLFlood,Single-URL Flood,Multi-URL Flood三种URL Flood和Session Flood攻击。以上三种攻击的模拟方法都属于将任意新页面与当前页面组合构成随机会话,统称为URL Flood。
实验分析:在异常检测中使用检测率(detection rate,DR),误报率(false alarmrate,FAR)以及召回率(recall rate,R)这三个性能指标去评估所有测试用户的异常检测结果。检测率是表示正确检测出的测试用户(TP+TN)占所有测试用户(P+N)的比例,误报率是表示误检的测试用户(FP+FN)占所有测试用户(P+N)的比例,召回率是指正确检测出的异常数据(TP)占总异常数据(TP+FN)的比例。的实验指标为检测率和误检率,具体定义如式(8),(9),(10)所示:
MH-LSTM模型训练阶段:MH-LSTM模型需要通过训练不断调整参数以达到最佳模型性能。MH-LSTM模型参数如表1所示:
表1实验参数
从表1可以看出,模型参数众多,如果采用单一调整的方式将耗费大量的时间且可能无法达到模型的最佳性能。这是因为MH-LSTM模型的某些参数处于互相关联的状态下,例如训练批尺寸和训练次数。单个参数的最优值并不一定能过使得模型整体达到最优值。为了简化调整参数过程,减少训练工作量,采用网格搜索的方式确认最优的参数组合方式。为了进一步减少初始数据集划分带来的影响,加入了交叉验证的方式来减少偶然性,提高模型性能。最终算法的参数内容设置如表2所示:
表2实验参数设置
为了在测试集上能够取得较好的结果,训练集异常数据中异常率需要谨慎设定。异常率过高时,容易造成过拟合结果,而过低则导致异常特征提取不全,异常检测性能较弱。现实环境中的异常数据往往远小于正常数据,故设定测试集中的异常数据的比例在5%左右。为了尽可能获取异常数据特征而且尽量避免过拟合的情况出现,分别设定训练集中不同的异常率,以训练集实验结果为指标。设计了如下实验,分别设计训练集中的异常率为0.05,0.1,0.2,0.3。为了减小误差和偶然性,每个实验的最终结果为5次实验的平均值,具体结果如表3所示。
表3实验结果
从表3可以看出,随着训练集异常率的增加,模型在测试集上的检测率不断下降,误检率和召回率不断上升。这是因为随着异常数据的增加,模型提取了更多的异常数据特征,对异常的检测更加敏感,但是正常数据被误认为异常数据的风险也不断增加。当训练集异常率到达0.2时,模型的召回率达到了89.1%,与异常率为0.1的训练集相比召回率提升明显,当训练集异常率达到0.3时,测试集的召回率提升幅度大幅度减小,且检测率低至96.5%。综合考虑异常的检测率和误检率及召回率综合指标,设定的训练集数据异常率为0.2,在训练集上使得模型的检测率处于97.3%左右,误检率在2.7%左右,召回率在89.1%左右。
MH-LSTM模型在线测试阶段:为了验证模型在不同数据量级下的稳定性,实验从不同的用户会话数量出发设计了5个实验,具体实验设置如下表4所示:
表4实验数据设置
具体实验结果如图4所示,实验结果为5次实验结果的平均值。从图4来看,模型在不同会话数量数据下的性能基本保持稳定,召回率在90%左右,检测率在97%左右,误检率在3%左右。
如图5所示为本发明模型的运行时间,算法的检测时间和待检测的会话数量的拟合关系基本呈线性相关,每增加1万的会话数量,算法的检测时间增加幅度在0.6秒左右,当会话数量达到了10万级别的时候,模型的检测时间接近于6秒。为了能够更好的满足在线环境下的检测效率,需要根据实际服务器的访问频率来设置滑动窗口的大小。设服务器访问速率为R(sessions/s),即每秒内产生的会话个数为R,设检测时长为T,即需要在T秒内完成数据检测,设检测效率为M(sessions/s),即没秒内算法可以检测的会话个数,则会话窗口的时间间隔为WT(S)可由式得出:
另外,为了验证算法性能,本发明与会话异常度模型Session SuspicionProbability和在线频繁模式挖掘异常检测模型FP-Miner进行了实验对比,具体结果如表5所示:
表5实验数据设置
从表5来看,在NASA数据集上MH-LSTM算法检测率和误检率上与其他模型相差不大,但是在召回率上有明显的提升,这表明相对于其他模型,MH-LSTM方法能够识别更多的异常数据。另外,在MSNBC数据集上,本发明算法则明显优于其他两个算法。这是因为MSNBC数据集将网页分类为17个类别,相对于NASA数据集网页类别更加简化。Session模型在数据预处理时考虑了html和非html页面,使得模型考虑了更多的特征,但在MSNBC数据集上无法获得非html页面,使得模型性能下降。FP-Miner模型在MSNBC数据集上挖掘出的频繁序列相对更加集中,正常序列和异常序列的差异减小,使得模型性能有所下降。从实验结果来看,MH-LSTM算法保持了更加优秀的稳定性,能够适应不同数据集的异常检测挑战。总的来说,MH-LSTM模型在不同数据量级上都能保持较高的异常检测率和较低的误检率,在召回率上也有较好的表现,模型运转稳定,检测效率高,能够较好的应对在线环境下的异常检测需求。
从时间消耗上来看,Session模型由于同时考虑了html页面和非html页面,在无形中加大了模型在检测过程中的资源和时间消耗。本发明为了考虑模型在在线环境下的检测效率,在数据预处理时仅考虑主要的Web访问主要内容页。FP-Miner模型由于要将待检测序列与频繁序列规则库作对比,频繁序列规则库的大小则成为了时间消耗的主要制约点,当挖掘出的规则过多时,模型检测效率明显下降。总的来说,MH-LSTM模型在不同数据量级上都能保持较高的异常检测率和较低的误检率,在召回率上也有较好的表现,模型运转稳定,检测效率高,能够较好的应对在线环境下的异常检测需求。
本发明采用以上技术方案,首先采取滑动窗口的方式截取Web流数据中的会话数据;然后通过Min-Hash算法提取长短不一的会话序列数据中的特征,充分保有了数据的相似性特征,使得会话序列数据成为了长短一致且能够被LSTM网络处理的数据;最后将数据输入构建好的LSTM网络进行训练,使用训练好的LSTM网络来区分异常数据和正常数据,LSTM网络能够更好的提取会话序列数据的前后相关特性。本发明就Web会话流数据的特性,提出MH-LSTM算法。采用Min-Hash算法提取Web会话访问序列特征,避免了原始序列长短不一难以处理的问题,解决了采用One-Hot处理数据导致的数据矩阵过于稀疏的问题。通过设计LSTM网络加入嵌入层和DropOut层,进一步降低了过拟合的可能。在模型训练阶段,采用网格搜索和交叉验证的方法减少了参数调整的工作量。本发明不仅能够有效适应流数据环境下的挑战,且能够保持较高的检测率和召回率。
Claims (6)
1.基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:方法为通过设立滑动窗口以收集用户的Web访问数据,利用Min-Hash对Web访问数据进行处理提取序列特征;然后利用LSTM的时间序列分类算法进行检测模型的训练;最后利用训练好的检测模型对抓取的Web会话流数据进行异常用户的检测和定位。
2.根据权利要求1所述的基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:检测方法包括离线训练阶段和在线检测阶段,具体步骤如下:
离线训练阶段:
步骤1-1,获取训练用的Web访问数据,并采用Min-Hash对Web访问数据进行预处理,提取序列特征,得到训练样本,
步骤1-2,将训练样本提取的序列特征输入LSTM网络进行离线训练,
步骤1-3,采用多层网格搜索和交叉验证的方法获取LSTM网络的最优参数,得训练好的检测模型;
在线检测阶段:
步骤2-1,建立滑动窗口从Web会话流数据中截取滑动窗口内的Web访问数据,
步骤2-2,采用Min-Hash对截取的滑动窗口内的Web访问数据进行预处理,提取序列特征,得到检测样本,
步骤2-3,将检测样本输入训练好的检测模型;
步骤2-4,训练好的检测模型检测和定位异常数据并输出结果。
3.根据权利要求2所述的基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:步骤1-1或步骤2-2中的数据预处理分为数据清理、用户识别和会话识别,数据清理将访问数据只保留html和htm的访问记录,用户识别将同一个IP地址视为同一个用户,基于时间阈值的启发式方法将用户停留页面时间超过设定时间阈值的访问记录视为新会话。
4. 根据权利要求3所述的基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:步骤1-1或步骤2-2中的数据预处理后的数据格式如下:
{useri:session1,session2,…sessionk|1≤i≤m,1≤k≤n}
其中,useri为第i个用户i,m为用户数,n为单个用户最多会话数,sessionk为第k个会话。
5. 根据权利要求4所述的基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:步骤1-1或步骤2-2中采用Min-Hash生成签名信息的方式将访问数据进行转换,数据处理完成后格式如下:
{user1:session_MinHash,user2:session_MinHash,…,useri:session_MinHash,…,userm:session_MinHash|1≤i≤m }
其中,useri为第i个用户i,m为用户数。
6.根据权利要求1所述的基于会话特征相似性的MH-LSTM异常检测方法,其特征在于:步骤1-2中LSTM网络包括嵌入层、LSTM模型和全连接层,LSTM模型包括输入层、隐藏层和输出层,嵌入层将单个长的序列转变为多个固定的短序列,输入层从嵌入层接收数据并传输至隐藏层,LSTM模型具有多个隐藏层,每个隐藏层为一个特征表示层,当前隐藏层为下个隐藏层的输入,迭代训练使得隐藏层权重不断调整直至网络收敛,输出层将LSTM模型的预测值输出,全连接层为两个,且两个全连接层之间加入Dropout层,全连接层将LSTM模型输出层的输出转换为label标签,用以表示输入的序列是否异常序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910698522.6A CN110430183A (zh) | 2019-07-31 | 2019-07-31 | 基于会话特征相似性的mh-lstm异常检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910698522.6A CN110430183A (zh) | 2019-07-31 | 2019-07-31 | 基于会话特征相似性的mh-lstm异常检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110430183A true CN110430183A (zh) | 2019-11-08 |
Family
ID=68411567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910698522.6A Pending CN110430183A (zh) | 2019-07-31 | 2019-07-31 | 基于会话特征相似性的mh-lstm异常检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110430183A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111107096A (zh) * | 2019-12-27 | 2020-05-05 | 杭州迪普科技股份有限公司 | 一种Web站点安全防护方法及装置 |
CN111756719A (zh) * | 2020-06-17 | 2020-10-09 | 哈尔滨工业大学 | SDN网络架构下一种结合SVM和优化LSTM模型的DDoS攻击检测方法 |
CN113127705A (zh) * | 2021-04-02 | 2021-07-16 | 西华大学 | 一种异构双向生成对抗网络模型及时间序列异常检测方法 |
CN113505857A (zh) * | 2021-08-06 | 2021-10-15 | 红云红河烟草(集团)有限责任公司 | 用于卷烟实时数采的数据异常检测方法 |
CN116070106A (zh) * | 2023-03-31 | 2023-05-05 | 国网智能电网研究院有限公司 | 基于行为序列的数据交互异常检测特征抽取方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815639A (zh) * | 2016-12-27 | 2017-06-09 | 东软集团股份有限公司 | 流数据的异常点检测方法及装置 |
CN108595655A (zh) * | 2018-04-27 | 2018-09-28 | 福建师范大学 | 一种基于会话特征相似性模糊聚类的异常用户检测方法 |
US20190095301A1 (en) * | 2017-09-22 | 2019-03-28 | Penta Security Systems Inc. | Method for detecting abnormal session |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
-
2019
- 2019-07-31 CN CN201910698522.6A patent/CN110430183A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106815639A (zh) * | 2016-12-27 | 2017-06-09 | 东软集团股份有限公司 | 流数据的异常点检测方法及装置 |
US20190095301A1 (en) * | 2017-09-22 | 2019-03-28 | Penta Security Systems Inc. | Method for detecting abnormal session |
CN108595655A (zh) * | 2018-04-27 | 2018-09-28 | 福建师范大学 | 一种基于会话特征相似性模糊聚类的异常用户检测方法 |
CN110071913A (zh) * | 2019-03-26 | 2019-07-30 | 同济大学 | 一种基于无监督学习的时间序列异常检测方法 |
Non-Patent Citations (1)
Title |
---|
张荣葳: ""基于SimHash与神经网络的网络异常检测方法研究"", 《电脑知识与技术》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111107096A (zh) * | 2019-12-27 | 2020-05-05 | 杭州迪普科技股份有限公司 | 一种Web站点安全防护方法及装置 |
CN111756719A (zh) * | 2020-06-17 | 2020-10-09 | 哈尔滨工业大学 | SDN网络架构下一种结合SVM和优化LSTM模型的DDoS攻击检测方法 |
CN113127705A (zh) * | 2021-04-02 | 2021-07-16 | 西华大学 | 一种异构双向生成对抗网络模型及时间序列异常检测方法 |
CN113505857A (zh) * | 2021-08-06 | 2021-10-15 | 红云红河烟草(集团)有限责任公司 | 用于卷烟实时数采的数据异常检测方法 |
CN113505857B (zh) * | 2021-08-06 | 2023-06-27 | 红云红河烟草(集团)有限责任公司 | 用于卷烟实时数采的数据异常检测方法 |
CN116070106A (zh) * | 2023-03-31 | 2023-05-05 | 国网智能电网研究院有限公司 | 基于行为序列的数据交互异常检测特征抽取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110430183A (zh) | 基于会话特征相似性的mh-lstm异常检测方法 | |
Yang et al. | Detecting malicious URLs via a keyword-based convolutional gated-recurrent-unit neural network | |
Wang et al. | PDRCNN: Precise phishing detection with recurrent convolutional neural networks | |
Feng et al. | Web2vec: Phishing webpage detection method based on multidimensional features driven by deep learning | |
Vazhayil et al. | Comparative study of the detection of malicious URLs using shallow and deep networks | |
CN109447099B (zh) | 一种基于pca降维的多分类器融合方法 | |
CN113312447B (zh) | 基于概率标签估计的半监督日志异常检测方法 | |
CN108959270A (zh) | 一种基于深度学习的实体链接方法 | |
Mohan et al. | Spoof net: syntactic patterns for identification of ominous online factors | |
CN111881722B (zh) | 一种跨年龄人脸识别方法、系统、装置及存储介质 | |
Shirazi et al. | Improved phishing detection algorithms using adversarial autoencoder synthesized data | |
Jothi et al. | An efficient SQL injection detection system using deep learning | |
Niu et al. | A high-performance web attack detection method based on CNN-GRU model | |
CN112948578A (zh) | 一种dga域名开集分类方法、装置、电子设备及介质 | |
Chen et al. | A New Approach for Mobile Advertising Click‐Through Rate Estimation Based on Deep Belief Nets | |
CN113821587A (zh) | 文本相关性确定方法、模型训练方法、装置及存储介质 | |
CN116776889A (zh) | 一种基于图卷积网络和外部知识嵌入的粤语谣言检测方法 | |
Liu et al. | Network log anomaly detection based on gru and svdd | |
CN113918936A (zh) | Sql注入攻击检测的方法以及装置 | |
Kasim | Automatic detection of phishing pages with event-based request processing, deep-hybrid feature extraction and light gradient boosted machine model | |
Lee et al. | Detecting suicidality with a contextual graph neural network | |
CN110049034A (zh) | 一种基于深度学习的复杂网络实时Sybil攻击检测方法 | |
Chen et al. | Towards a deep learning approach for detecting malicious domains | |
Weller | Compromised account detection based on clickstream data | |
Jesmithaa et al. | Detecting phishing attacks using Convolutional Neural Network and LSTM |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191108 |
|
RJ01 | Rejection of invention patent application after publication |