CN101866403A - 基于改进obs-nmf算法的入侵检测方法 - Google Patents

基于改进obs-nmf算法的入侵检测方法 Download PDF

Info

Publication number
CN101866403A
CN101866403A CN201010199102A CN201010199102A CN101866403A CN 101866403 A CN101866403 A CN 101866403A CN 201010199102 A CN201010199102 A CN 201010199102A CN 201010199102 A CN201010199102 A CN 201010199102A CN 101866403 A CN101866403 A CN 101866403A
Authority
CN
China
Prior art keywords
centerdot
matrix
vector
system call
algorithm
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.)
Granted
Application number
CN201010199102A
Other languages
English (en)
Other versions
CN101866403B (zh
Inventor
马文萍
焦李成
赵富家
公茂果
刘芳
王爽
尚荣华
马晶晶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Discovery Turing Technology Xi'an Co ltd
Original Assignee
Xidian University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN2010101991022A priority Critical patent/CN101866403B/zh
Publication of CN101866403A publication Critical patent/CN101866403A/zh
Application granted granted Critical
Publication of CN101866403B publication Critical patent/CN101866403B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于改进OBS-NMF算法的入侵检测方法,主要解决已有技术存在的处理高维数据能力低,鲁棒性不强,阈值选取范围小,检测结果不理想的问题。其实现步骤为:(1)收集进程***调用;(2)构造并简化训练矩阵;(3)对训练矩阵进行降维分解;(4)判断是否满足收敛条件,若满足,则执行步骤(5),否则返回步骤(3)继续迭代,直到达到最大迭代次数;(5)构造测试矩阵U;(6)利用基矩阵W求解U的特征系数向量hu;(7)求解U中进程向量的异常度;(8)设定阈值λ,输出检测结果。本发明具有实现简单,稳定性好,检测精度高,阈值选取范围大和实时性强的优点,可用于基于主机***调用的实时入侵检测。

Description

基于改进OBS-NMF算法的入侵检测方法
技术领域
本发明属于计算机安全技术领域,特别涉及一种计算机安全入侵检测方法,该方法可用于解决计算机进程行为的异常检测。
背景技术
计算机安全从上个世纪70年代早期就有人开始研究,但是他们的研究成果一度被忽略,直到1980年4月James P.Anderson为美国空军做的一份技术报告才被公认为是入侵检测的开山之作,这份题为《Computer Security Threat Monitoring and Surverillance》的技术报告第一次详细的阐述了计算机***中入侵检测的概念,还提出了利用审计跟踪数据监视入侵活动的思想。随着人们对计算机网络的依赖性不断增强,传统的网络安全技术不能提供有效的防护,作为传统技术的一种补充,入侵检测成为网络安全发展的一个新方向,它是一种主动的计算机和网络安全的防卫手段。
异常检测能够检测未知的攻击,因此,近年来异常入侵检测成为了研究的热点。目前,已经由很多方法成功的应用于异常检测中,例如统计分析,机器学习,神经网络,数据挖掘等。入侵检测的相关研究工作根据数据源的不同有很多分类方法,包括审计事件与命令序列,***调用,网络数据包,击健特性,文件***访问。对于异常检测***来说,可以从计算机或者网络的各个不同层面对***行为进行建模并检测入侵,其中一个关键的问题就是如何选择用户,***或者网络的行为特征,以便根据这些特征更好地区分入侵行为和正常行为。
在Unix/Linux及其兼容的操作***中,***调用是用户空间与内核空间中资源调用的借口。单个程序在执行过程中,可能会产生多个进程,一个进程产生的***调用被归为一个“执行迹”。通过分析“执行迹”产生的***调用,就有可能发现程序的异常运行状态,进而判断出该***是否受到攻击。相对于其它数据源来说,***调用的种类非常有限,即内核为2.7.10的Linux***调用不足221种,常用的不过80多种。此外,黑客入侵也不可避免的会在***内核层的***调用中留下入侵痕迹。因此,基于***调用的入侵检测建模方法简单而且高效,近年来已经成为异常检测中主机行为建模的主要研究对象。
1996年,Forrest等人首先提出以进程正常运行产生的一定长度的***调用段序列作为研究对象来刻画进程的运行状态。Lee等人继Forrest的工作后,应用Ripper软件包,从***调用序列中挖掘正常和异常模式,以规则的形式来描述***的运行状态,建立了一个简洁有效的***正常模型。Warrender等人则利用HMM算法对***调用的隐含状态进行建模,也取得了较好的检测结果。Wespi等人扩展了Forrest等人的思想,使用变长短序列的方法对***调用进行建模。Asaka等人使用了优化分类面的方法检测***入侵。Liao和Hu分别采用最近邻KNN和支撑矢量机SVM对程序行为进行建模。其它一些方法,如一步马尔可夫模型,神经网络和软计算等方法也都成功应用于基于***调用的程序异常检测中。
但当前入侵检测IDS中也存在一些问题,如检测效果差,漏报、误报率高的状况。数据处理性能不高,处理高维海量数据的能力不强。而现在计算机领域的数据量呈***性增长,UNM在收集Sendmail守护进程产生的***调用实验中,仅112条邮件信息就产生了超过150万条的***调用,因此一个有效的入侵检测方法必须在攻击还未给***造成破坏之前就能够被实时地检测出来。再有,实时性差,自适应性不好。对资源的占用大,不具有可扩展性等。
近年来非负矩阵分解理论NMF被引入入侵检测,其高效的数据降维能力使其得到广泛的重视,它具有实现的简便性,分解理论的可解释性,以及占用资源少等优点。目前已成功的应用于人脸识别,文本分类,语音处理等领域。Wang在其多信息源的实时入侵检测方法研究一文中采用NMF算法建立入侵检测模型,采用***调用作为分析数据,将高维向量数据进行分解,在低维空间检测入侵行为,精简了数据,降低了资源占用率,具有较高的检测精度和实时性。但该异常检测模型的算法稳定性不高,收敛性不能得到保证,同时阈值的选择较为困难,影响到了检测效果。
发明内容
本发明的目的在于克服上述已有技术的不足,提出一种基于改进OBS-NMF算法的入侵检测方法,以保证OBS-NMF算法的收敛性,扩展阈值的选取范围,有效地提高检测的精度和稳定性。
实现本发明目的的技术方案是:将基于主机***调用的入侵检测问题看作分类问题,将对原始数据进行预处理,转化成适合处理的向量矩阵形式,利用非负矩阵分解在特征提取和降维方面快速有效的特性对矩阵进行分解处理,利用OBS策略能较好收敛的特性改进原NMF算法的迭代机制,利用向量角度能够减少数据的重构误差和很好的反映向量数据差异性的特性,分别采用余弦距离和正弦距离作为本发明的收敛条件和判别函数处理入侵问题。具体实现步骤包括如下:
(1)运行客户端计算机,利用服务器对其进行入侵攻击,监视***运行中产生的正常进程和异常进程,收集进程执行过程中产生的***调用;
(2)将收集到的每一个正常进程按照***调用号从小到大构造一个进程向量,将***调用出现的次数作为向量的元素;设定训练矩阵规模,将每一个向量依次输入作为训练矩阵的一列,得到训练矩阵V*表示如下:
V * n × m = 1 1 0 · · · 3 0 2 2 · · · 0 · · · · · · · · · · · · · · · 0 0 1 · · · 0 = [ v * 1 , v * 2 , · · · , v i * , · · · v * m ]
n是最大***调用号,m是进程数,v是***调用次数;
(3)删除训练矩阵中0元素比例大于95%的行,并标记被删除的行,计算训练矩阵中各***调用在相应进程中的使用概率,将V*简化成矩阵V;
(4)使用OBS-NMF算法对简化后的训练矩阵V进行降维分解,使得V≈WH,W表示V的权值矩阵,其大小为n×r,H表示V的系数矩阵,其大小为r×m,r表示分解因子,W和H的初始值取随机值;
(5)利用以下迭代公式求得权值矩阵W和系数矩阵H:
W+←((H·HT)-1·H·VT)T
W=W++ΔW+
H+←(W·(WT·W)-1)T·V
H=H++ΔH+
其中W+和H+分别是W和H的过渡变量,
Figure BSA00000158300900041
Figure BSA00000158300900042
分别表示调整W+和H+后引起的均方误差增量,j=1,2,…,n,ej第j列的单位矩阵,矩阵Wj=W+ej,Hj=H+ej,5<r<20;
(6)选择最大迭代次数max iter=1000,判断V与WH的迭代误差是否满足收敛条件Conv>γ,其中,0.8<γ<1,若满足,则执行步骤(6),否则返回步骤(5)继续迭代,直到达到最大迭代次数max iter,迭代误差式表示为:
Conv = min i ( v i T ( Wh i ) | | v i | | 2 | | Wh i | | 2 ) , i = 1,2 , · · · m
其中,hi表示H矩阵的列向量;
(7)取全部正常进程和异常进程作为测试样本,对该测试样本执行步骤(2),并删除步骤(3)中标记的行,得到测试矩阵U,使用如下公式,求解U中每个列向量u的特征系数向量hu
h u = ( W T · W ) - 1 · W T · u ;
(8)比较hu与H中每个向量hi的正弦距离,将最小的正弦距离作为U中每个进程向量u的异常度e:
e = 1 - max i ( h u T h i | | h u | | 2 | | h i | | 2 ) , i = 1,2 · · · m ;
(9)设定门限阈值0<λ<0.1,如果满足判别函数e>λ,则表明该进程存在异常,提示***进行处理,否则提示进程安全。
本发明与现有技术相比具有如下优点:
1.鲁棒性强
由于原始的NMF算法的迭代机制约束性不强,因此,检测性能受到W、H和训练样本随机选取的影响很大,相比原NMF算法,本发明的算法引入OBS思想,对迭代机制进行了改进,提高了迭代方向的约束性,检测结果显示,本方法受W、H和训练样本随机选取的影响很小,比NMF算法具有更好的鲁棒性。
2.实时性
本方法通过OBS-NMF算法对高维海量数据进行分解降维,映射到低维空间进行检测,减小了数据量,有效地降低了算法的复杂度,相比其它入侵检测的方法花费时间更少;同时由于本发明采用***调用的频率特性作为分析数据,相比使用其它特性的数据,具有更好的实时性。
3.阈值选取范围大,检测性能优越
由于采用了基于向量角度的收敛条件和判别函数,相比采用基于欧式距离的收敛条件和判别函数,前者更加符合实验数据的结构特性,能够更好地反映正常样本和异常样本的差异度,能够明显提高检测的精度。实验结果显示,本发明的方法,扩展了阈值的选取范围,有效地提高了算法的检测性能。
4.算法收敛性较好
传统的NMF算法一直受到收敛性的困扰,本发明改进了NMF算法的迭代机制,在最小均方误差的基础上,进一步优化得出迭代增量,加强了迭代方向的约束性。同时,采样余弦角度的收敛条件,相比采用欧式距离的收敛条件对误差的要求更为严格。需要更多的迭代次数,才能满足收敛条件。因此,本算法在收敛性上得到了很大地改善。
附图说明:
图1是本发明的流程图;
图2是原NMF算法对CERTsendmail数据和UNMsendmail.log数据的检测结果图;
图3是本发明改进迭代机制的OBS-NMF算法对CERTsendmail数据和UNMsendmail.log数据的检测结果图;
图4是本发明迭代机制的OBS-NMF算法对CERTsendmail数据和UNMsendmail.log数据的检测率随阈值变化的曲线图;
图5是本发明改进判别函数的OBS-NMFⅠ算法对CERTsendmail数据和UNMsendmail.log数据的检测率随阈值变化的曲线图;
图6是本发明改进收敛条件的OBS-NMFⅡ算法对CERTsendmail数据和UNMsendmail.log数据的检测率随阈值变化的曲线图;
图7是本发明检测率随分解因子r变化的曲线图。
具体实施方式
参照图1,参照图1本发明的具体实现步骤如下;
步骤1,数据采集。
运行客户端计算机,在***正常运行的情况下,单个程序在执行过程中,会产生多个进程,进程通过中断指令0x80,跳转到称为system_call的内核位置,进入***调用处理程序,调用相关的内核函数,执行结束,返回到用户空间,其中进程产生的***调用序列通过内核打补丁或者***中的应用程序,如Strace方法截取得到。
步骤2,构造进程向量。
对于采集到的原始数据,首先,要进行分组,***调用数据按照进程进行分组,相同进程下的***调用归为一组;其次,按照***调用号从小到大构造一个进程向量,统计每组数据中每种***调用出现的频率,统计结果形成一个列向量,这样进程行为就可以用它发出的***调用序列来描述,入侵检测的问题也就转化成判断这些向量是否正常的问题,使数据得到约简,问题也得到简化。
步骤3,构建训练矩阵。
用构建的进程向量组成适合本发明方法的矩阵数据,选择30%的进程向量作为训练矩阵的规模,将构造的每个进程向量,依次作为一个列向量加入训练矩阵,直到满足定义的规模大小,这样原始数据就可以表示成一个n×m的训练矩阵V*,记为
V * n × m = v * 11 v * 12 · · · v * 1 m v * 21 v * 22 · · · v * 2 m · · · · · · · · · · · · v * n 1 v * n 2 · · · v * nm = [ v * 1 , v * 2 , · · · , v * m ]
其中,n是使用到的最大***调用号,m是进程数,V*中的每个列向量代表与其对应的每组数据中不同类型的元素出现的次数。
步骤4,简化训练矩阵。
在构建矩阵V*的时候,矩阵的行数即是相应的***调用号,而每个进程的***调用在执行的过程中,并不是连续出现的,而是按照其出现的先后顺序,并且只有一部分会被使用到,因此需要对构造好的V*矩阵删除0元素多的行,以初步减少数据的维数。具体方法是:统计每行中0的个数,如果超过一定的比例,本发明限定其每一行0元素超过95%的,则删除该行,即不使用该***调用作为行为的特征表示,这样就可以删除大量未被用到和很少用到的特征,矩阵得到了简单的约简;最后,将矩阵中的***调用次数转变成其在相应向量中出现的概率,其它审计数据也可以按照该方式进行处理,保证了入侵检测的自适应性和扩展性。
步骤5,求解权值矩阵W和系数矩阵H。
原始的NMF算法的思想是要寻找两个矩阵W和H,使得Vij≈WH,即
V iu ≈ ( WH ) iu = Σ a = 1 r W ia H au
分解之后的矩阵W和H的维数分别为n×r和r×m,且H中的每一列h可以看成是与其对应的每组数据所保留的特征向量。本发明基于OBS策略提出了如下迭代公式:
W+←((H·HT)-1·H·VT)T
W=W++ΔW+
H+←(W·(WT·W)-1)T·V
H=H++ΔH+
其中W+和H+分别是W和H的过渡变量,
Figure BSA00000158300900082
分别表示调整W+和H+后引起的均方误差增量,j=1,2,…,n,ej第j列的单位矩阵,矩阵Wj=W+ej,Hj=H+ej,r(5<r<20)是分解因子,表示降维后的权值矩阵维数,在矩阵分解时,选择r<<n。
根据如上的迭代公式,随机选取非负的初始矩阵W和H,在计算过程中,需要对每个权值都进行调整,在实际的求解过程中往往利用迭代的方法交替求得W和H,使得重构误差‖V-WH‖最小。
步骤6,判断终止条件。
选择最大迭代次数max iter=1000,分解因子r=8,对于实验中的训练样本V=[v1,v2,…vm],由于训练数据是以向量为基本的研究对象,为此本发明采用余弦角度作为收敛条件,也就是取V和(WH)对应的每一个列向量的余弦距离最小值作为收敛条件:
Conv = min i ( v i T ( Wh i ) | | v i | | 2 | | Wh i | | 2 ) , i = 1,2 , · · · m
其中,hi表示H矩阵的列向量;
对于给定值0.8<γ<1,在Conv≥γ时,则迭代截止,否则继续迭代,直到最大迭代次数。
步骤7,构建并简化测试矩阵。
将全部正常进程和异常进程作为测试样本,首先,对该测试样本同样先进行矩阵的构建,方法与步骤3中构建正常的训练矩阵相同;然后,对其进行如步骤4的简化操作。由于为了用相同的***调用表示训练样本和测试样本,并且保证简化后的测试矩阵与训练矩阵的维数一致,删除的行与训练矩阵删除的行必须相同,以达到用最少的维数较精确地表示样本的目的;最后,得到测试矩阵U。
步骤8,将测试矩阵U的每一个列向量u作为测试对象,为了减少计算的复杂度,基于训练学习到的矩阵W,本发明提出如下公式,求解测试数据的系数向量hu
hu=(WT·W)-1·WT·u。
步骤9,比较系数向量hu与H中每个向量hi的正弦距离,将最小的正弦距离作为U中每个进程向量u的异常度e:
e = 1 - max i ( h u T h i | | h u | | 2 | | h i | | 2 ) , i = 1,2 L m .
将该式作为识别异常的判决函数。
步骤10,设定门限阈值0<λ<0.1,如果e>λ,则表明该进程存在异常,提示***进行处理,否则提示进程安全。
本发明的优点可通过以下仿真进一步说明:
1)仿真条件
仿真实验均采用美国新墨西哥大学的公开数据:CERTsendmail数据和UNMsendmail.Log数据。以上两种数据均包含147条的正常进程,其中,CERTsendmail数据包含36个异常进程,本仿真仅使用其中的四种syslog攻击数据local、local2、remote1、remote2;UNMsendmail.Log数据中包含了两个异常进程UNMfwdloops和UNMsendmailsm。为了更有效地检验本发明方法的性能,我们将syslog攻击数据加入作为入侵样本。分解因子r选择8,最大迭代次数为1000次,随机选取CERTSendmail和UNMsendmail.log数据中30%的正常进程作为训练进程,选择所有进程进行测试。本发明的OBS-NMF算法采用欧式距离的收敛条件和判决函数,本发明改进的OBS-NMFⅠ算法采用欧式距离的收敛条件和正弦距离的判决函数,本发明改进的OBS-NMFⅡ算法采用余弦角度的收敛条件和正弦距离的判决函数。NCD表示正常样本的检测率,ACD表示异常样本的检测率。
2)仿真内容
为了验证本发明改进的入侵算法在改进策略上的优势,将OBS-NMF算法与传统的NMF算法,以及本发明改进的OBS-NMFⅠ和OBS-NMFⅡ算法的进行了比较仿真实验。
2a)本发明采用的迭代机制与传统NMF算法的比较
为了说明改进迭代机制对算法稳定性的影响,将本发明改进的OBS-NMF算法在与传统NMF算法使用相同的判别函数和收敛条件的情况下,分别对CERT Sendmail数据和UNMsendmail.log数据进行了仿真实验。星号表示正常样本,其它符号表示不同的入侵,横坐标表示测试进程,纵坐标表示异常度。原NMF算法对两种数据的检测结果如图2所示,其中,图2a表示对CERT Sendmail数据的测试结果,图2b表示对UNMsendmail.log数据的测试结果。本发明改进的OBS-NMF算法对两种数据的测试结果如图3所示,其中,图3a表示对CERTSendmail数据的测试结果,图3b表示对UNMsendmail.log数据的测试结果。
2b)本发明改进判决函数与未改进的OBS-NMF算法的比较
为了说明改进判决函数对检测性能的提高,本发明改进的OBS-NMFⅠ算法在与OBS-NMF算法使用相同的迭代机制和收敛条件的情况下,分别对CERT Sendmail数据和UNMsendmail.log数据进行了仿真实验。实线表示正常样本的检测率,虚线表示异常样本的检测率,横坐标表示阈值,纵坐标表示检测率。本发明改进的OBS-NMF算法对CERT Sendmail数据和UNMsendmail.log数据的检测率随阈值变化的结果如图4所示,其中,图4a表示CERT Sendmail数据的检测率变化结果,图4b表示CERT Sendmail数据的检测率变化结果;本发明改进的OBS-NMFⅠ算法对CERT Sendmail数据和UNMsendmail.log数据的检测率随阈值变化的结果如图5所示,其中,图5a表示CERTSendmail数据的检测率变化结果,图5b表示UNMsendmail.log数据的检测率变化结果。
2c)本发明改进收敛条件与未改进的OBS-NMFⅠ算法的比较
为了说明改进收敛条件对检测性能的提高,将本发明改进的OBS-NMFⅡ算法在与OBS-NMFⅠ算法使用相同的迭代机制和判别函数的情况下,分别对CERT Sendmail数据和UNMsendmail.log数据进行了仿真实验。实线表示正常样本的检测率,虚线表示异常样本的检测率,横坐标表示阈值,纵坐标表示检测率。本发明改进的OBS-NMFⅡ算法对CERT Sendmail数据和UNMsendmail.log数据的检测率随阈值变化的结果如图6所示,其中,图6a表示CERT Sendmail数据的检测率变化结果,图6b表示UNMsendmail.log数据的检测率变化结果。
3)仿真实验结果分析
从图2可以看出,原始的NMF算法正常样本的异常度变化较大,鲁棒性不强,不能很好的收敛。这主要是因为原始的算法在分解的过程中,W和H都是随机选择的非负矩阵,迭代公式也不能保证迭代的收敛性,因此,影响到对正常样本的检测。同时,随机选取不同训练样本也会使得正常样本的异常度变化明显,NMF算法的稳定性受正常样本的随机选取影响较大。从图3可以看出,本发明改进的OBS-NMF算法检测结果中正常样本异常度明显降低,并且具有集中稳定的特性,大大缩小了检测结果的异常度范围,便于选择合适的阈值进行识别。即使仍然随机选择测试样本和W、H的初始值,仍然能够达到比较理想的收敛效果,能更好的分析入侵行为,也大大的提高了算法的鲁棒性。
从图4和图5可以看出,判别函数的选择对异常行为识别的影响较大,在采用相同迭代法则的情况下,本发明改进的OBS-NMFⅠ算法相比本发明改进的OBS-NMF算法的检测性能明显提高,说明引入的正弦距离判别方法优于使用欧式距离的判别方法。同时,判断入侵最重要的是定义阈值,阈值的选择是否合适,直接影响到算法的检测精度,因此,阈值范围的大小体现了算法的优劣性。本发明改进的OBS-NMFⅠ算法在保证较高检测率的情况下,阈值范围明显得到扩展。说明基于正弦距离的判别方法能最大程度的反映出正常样本和异常样本的差异性,可以有效地提高入侵检测的精度。
由图5和图6可以看出,改进的余弦角度收敛条件可以进一步提高算法的检测性能,本发明改进的OBS-NMFⅡ算法相比OBS-NMFⅠ算法异常样本的异常度得到进一步提高,说明引入余弦角度作为收敛条件的方法优于使用欧式距离的收敛条件。这主要是因为选择欧氏距离作为收敛条件,会产生积累误差,而采用向量点积的余弦角作为收敛条件不仅符合训练数据的特点,同时也与判别函数的思想一致。图6a中,本发明改进的OBS-NMFⅡ算法在检测率首次降低到95.65%的情况下,阈值范围由图5a中的0.094扩展到0.146。图6b中本发明改进的OBS-NMFⅡ算法和图5b中本发明改进的OBS-NMFⅠ算法相比,在保持检测率大于83.33%的情况下,阈值范围也进一步得到了扩大。因此,采用余弦角度作为收敛条件,能最大程度的反映出正常样本和异常样本的差异性。仿真结果显示,在保持较高检测率的情况下,本发明改进的OBS-NMFⅡ算法很好的扩展了阈值的选取范围。
总之,本发明的入侵检测方法在对正常进程和异常进程的分析中都达到了较高检测精度,比传统的NMF入侵检测方法具有更好的鲁棒性,自适应性和检测精度,在处理海量高维数据中,具有更明显的优势,具有很强的实时性,适合实时的入侵检测。
4)算法参数影响分析
本发明用于入侵检测的OBS-NMF算法的检测性能主要受到分解因子r的影响,分解因子关系到重构后的矩阵与原矩阵的误差大小,即基向量的个数。
分解后的基矩阵中,r越小,则数据压缩的程度也就越大,结果也越不精确,反之,r越大,基向量的个数就越多,则重构的矩阵越能精确表示原矩阵,当r达到一定大值时,检测效果的改变不会太明显。同时,r的增加也提高了收敛速度,降低了迭代次数。由于入侵检测不仅需要考虑算法的检测精度,同时要兼顾实时处理海量高维数据的能力,因此,r的选择要综合考虑精度和压缩度,既要满足一定精度要求,同时能高效实时的处理入侵,r的值要在一个合理的范围内,它与检测率的关系曲线如图7所示。从图7可以看出,随着r的增加,异常样本的检测率也随之升高,当r>18,检测率接近100%。

Claims (3)

1.一种基于改进OBS-NMF算法的入侵检测方法,包括如下步骤:
(1)运行客户端计算机,利用服务器对其进行入侵攻击,监视***运行中产生的正常进程和异常进程,收集进程执行过程中产生的***调用;
(2)将收集到的每一个正常进程按照***调用号从小到大构造一个进程向量,将***调用出现的次数作为向量的元素,设定训练矩阵规模,将每一个向量依次输入作为训练矩阵的一列,构建出训练矩阵V*表示如下:
V * n × m = 1 1 0 · · · 3 0 2 2 · · · 0 · · · · · · · · · · · · · · · 0 0 1 · · · 0 = [ v * 1 , v * 2 , · · · , v i * , · · · v * m ]
n是最大***调用号,m是进程数,v是***调用次数;
(3)删除训练矩阵中0元素比例大于95%的行,并标记被删除的行,计算训练矩阵中各***调用在相应进程中的使用概率,将V*简化成矩阵V;
(4)使用OBS-NMF算法对简化后的训练矩阵V进行降维分解,使得V≈WH,W表示V的权值矩阵,其大小为n×r,H表示V的系数矩阵,其大小为r×m,r表示分解因子,W和H的初始值取随机值;
(5)利用以下迭代公式求得权值矩阵W和系数矩阵H:
W+←((H·HT)-1·H·VT)T
W=W++ΔW+
H+←(W·(WT·W)-1)T·V
H=H++ΔH+
其中W+和H+分别是W和H的过渡变量,
Figure FSA00000158300800012
Figure FSA00000158300800021
分别表示调整W+和H+后引起的均方误差增量,j=1,2,…,n,ej第j列的单位矩阵,矩阵Wj=W+ej,Hj=H+ej,5<r<20;
(6)选择最大迭代次数maxiter=1000,判断V与WH的迭代误差是否满足收敛条件Conv>γ,其中,0.8<γ<1,若满足,则执行步骤(7),否则返回步骤(5)继续迭代,直到达到最大迭代次数maxiter,迭代误差式表示为:
Conv = min i ( v i T ( Wh i ) | | v i | | 2 | | Wh i | | 2 ) , i = 1,2 , · · · m
其中,hi表示H矩阵的列向量;
(7)取全部正常进程和异常进程作为测试样本,对该测试样本执行步骤(2),并删除步骤(3)中标记的行,得到测试矩阵U,使用如下公式,求解U中每个列向量u的特征系数向量hu
hu=(WT·W)-1·WT·u;
(8)比较hu与H中每个向量hi的正弦距离,将最小的正弦距离作为U中每个进程向量u的异常度e:
e = 1 - max i ( h u T h i | | h u | | 2 | | h i | | 2 ) , i = 1,2 · · · m ;
(9)设定门限阈值0<λ<0.1,如果e>λ,则表明该进程存在异常,提示***进行处理,否则提示进程安全。
2.根据权利要求1所述的入侵检测方法,其中步骤(2)所述的设定矩阵规模,是根据收集到的进程数,选择30%的进程作为训练矩阵的向量。
3.根据权利要求1所述的入侵检测方法,其中步骤(3)所述的计算训练矩阵中各***调用在相应进程中的使用概率,是先对进程向量中的元素进行求和,再将每个元素值与该求和值进行相除,得出每个元素的使用概率。
CN2010101991022A 2010-06-11 2010-06-11 基于改进obs-nmf算法的入侵检测方法 Expired - Fee Related CN101866403B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010101991022A CN101866403B (zh) 2010-06-11 2010-06-11 基于改进obs-nmf算法的入侵检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101991022A CN101866403B (zh) 2010-06-11 2010-06-11 基于改进obs-nmf算法的入侵检测方法

Publications (2)

Publication Number Publication Date
CN101866403A true CN101866403A (zh) 2010-10-20
CN101866403B CN101866403B (zh) 2012-07-04

Family

ID=42958125

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101991022A Expired - Fee Related CN101866403B (zh) 2010-06-11 2010-06-11 基于改进obs-nmf算法的入侵检测方法

Country Status (1)

Country Link
CN (1) CN101866403B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023927A (zh) * 2013-01-10 2013-04-03 西南大学 一种稀疏表达下的基于非负矩阵分解的入侵检测方法及***
CN106407695A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的焦虑症预测方法和预测***
CN106407693A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的乙肝预测方法和预测***
CN106407694A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的神经衰弱预测方法和预测***
CN106407697A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的慢性疲劳综合症预测方法和预测***
CN106446550A (zh) * 2016-09-28 2017-02-22 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的伤风感冒预测方法和预测***
CN107409064A (zh) * 2015-10-23 2017-11-28 Nec欧洲有限公司 用于支持网络中不规则检测的方法和***
CN109753801A (zh) * 2019-01-29 2019-05-14 重庆邮电大学 基于***调用的智能终端恶意软件动态检测方法
CN111159714A (zh) * 2019-12-23 2020-05-15 北京工业大学 一种访问控制中主体运行时可信验证方法及***
CN113266921A (zh) * 2021-06-08 2021-08-17 深圳市英维克信息技术有限公司 一种空调设备故障检测方法、装置、设备及介质
CN113959476A (zh) * 2021-12-22 2022-01-21 北京为准智能科技有限公司 一种智能化仪器仪表检定***及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101594361A (zh) * 2009-06-02 2009-12-02 浙江大学 基于支持向量机简化算法的网络入侵检测***

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101594361A (zh) * 2009-06-02 2009-12-02 浙江大学 基于支持向量机简化算法的网络入侵检测***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《中国优秀硕士论文数据库》 20081231 孙伟 网络入侵检测***的安全性分析及相关技术研究 全文 1-3 , 2 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023927B (zh) * 2013-01-10 2016-03-16 西南大学 一种稀疏表达下的基于非负矩阵分解的入侵检测方法及***
CN103023927A (zh) * 2013-01-10 2013-04-03 西南大学 一种稀疏表达下的基于非负矩阵分解的入侵检测方法及***
CN107409064B (zh) * 2015-10-23 2020-06-05 Nec实验室欧洲有限公司 用于支持网络中不规则检测的方法和***
CN107409064A (zh) * 2015-10-23 2017-11-28 Nec欧洲有限公司 用于支持网络中不规则检测的方法和***
CN106407695A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的焦虑症预测方法和预测***
CN106407693A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的乙肝预测方法和预测***
CN106407694A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的神经衰弱预测方法和预测***
CN106407697A (zh) * 2016-09-28 2017-02-15 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的慢性疲劳综合症预测方法和预测***
CN106446550A (zh) * 2016-09-28 2017-02-22 湖南老码信息科技有限责任公司 一种基于增量式神经网络模型的伤风感冒预测方法和预测***
CN109753801A (zh) * 2019-01-29 2019-05-14 重庆邮电大学 基于***调用的智能终端恶意软件动态检测方法
CN109753801B (zh) * 2019-01-29 2022-04-22 重庆邮电大学 基于***调用的智能终端恶意软件动态检测方法
CN111159714A (zh) * 2019-12-23 2020-05-15 北京工业大学 一种访问控制中主体运行时可信验证方法及***
CN111159714B (zh) * 2019-12-23 2022-03-11 北京工业大学 一种访问控制中主体运行时可信验证方法及***
CN113266921A (zh) * 2021-06-08 2021-08-17 深圳市英维克信息技术有限公司 一种空调设备故障检测方法、装置、设备及介质
CN113959476A (zh) * 2021-12-22 2022-01-21 北京为准智能科技有限公司 一种智能化仪器仪表检定***及方法
CN113959476B (zh) * 2021-12-22 2022-02-25 北京为准智能科技有限公司 一种智能化仪器仪表检定***及方法

Also Published As

Publication number Publication date
CN101866403B (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN101866403B (zh) 基于改进obs-nmf算法的入侵检测方法
Dong et al. Comparison deep learning method to traditional methods using for network intrusion detection
CN112784881B (zh) 网络异常流量检测方法、模型及***
Ye et al. SBMDS: an interpretable string based malware detection system using SVM ensemble with bagging
Hoang et al. An efficient hidden Markov model training scheme for anomaly intrusion detection of server applications based on system calls
Murtaza et al. A host-based anomaly detection approach by representing system calls as states of kernel modules
Santos et al. Opcode-sequence-based semi-supervised unknown malware detection
US20140041032A1 (en) System and Method for Detecting Network Intrusions Using Statistical Models and a Generalized Likelihood Ratio Test
CN107577942A (zh) 一种用于Android恶意软件检测的混合特征筛选方法
CN102291392A (zh) 一种基于Bagging算法的复合式入侵检测方法
CN112333194A (zh) 基于gru-cnn的综合能源网络安全攻击检测方法
CN102324007A (zh) 基于数据挖掘的异常检测方法
CN114581694A (zh) 一种基于改进的支持向量机的网络安全态势评估方法
CN115051864A (zh) 基于pca-mf-wnn的网络安全态势要素提取方法及***
Wang et al. Profiling program and user behaviors for anomaly intrusion detection based on non-negative matrix factorization
CN116541698A (zh) 一种基于XGBoost的网络异常入侵检测方法和***
Soudi et al. An anomaly detection system based on ensemble of detectors with effective pruning techniques
CN114884755B (zh) 一种网络安全防护方法、装置、电子设备及存储介质
KR102548321B1 (ko) 효율적인 악성 위협 탐지를 위한 valuable alert 선별 방법
Xinguang et al. Intrusion detection based on system calls and homogeneous Markov chains
El Kamali et al. A New Intrusion Detection System Based on Convolutional Neural Network
Wu Protocol-based classification for intrusion detection
Yin et al. A new intrusion detection method based on behavioral model
CN111310177A (zh) 一种基于内存行为特征的视频监控设备攻击检测***
Fatahnaie et al. Ensemble model based on an improved convolutional neural network with a domain-agnostic data augmentation technique

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210402

Address after: 710076 room 104, block B2, software new town phase II, tianguba Road, Yuhua Street office, high tech Zone, Xi'an City, Shaanxi Province

Patentee after: Discovery Turing Technology (Xi'an) Co.,Ltd.

Address before: 710071 No. 2 Taibai South Road, Shaanxi, Xi'an

Patentee before: XIDIAN University

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

CF01 Termination of patent right due to non-payment of annual fee