当前位置: 首页 > 专利查询>四川大学专利>正文

一种基于系统调用序列的主机入侵检测方法技术方案

技术编号:37051469 阅读:10 留言:0更新日期:2023-03-29 19:29
本发明专利技术公开了一种基于系统调用序列的主机入侵检测方法,涉及计算机安全技术领域,步骤为:S1:捕获系统调用信息,将其分割成若干个系统调用序列;S2:定义异常序列所代表的异常活动轨迹;S3:存储不同粒度的特征之间的映射关系;S4:将关系映射图转换为抽象行为树;S5:对抽象行为树进行剪枝;S6:将捕获的系统调用序列转换为叶子节点序列,从新的叶子节点序列进行特征提取;S7:将提取的特征向量进行特征降维;S8:将降维后的特征向量作为机器学习模型的输入,将相应的叶子节点序列分为异常和正常两种。本发明专利技术解决了现在技术在特征抽取过程中所生成的向量维度过高且耗时过长的问题,可以降低部署主机所需的硬件成本。以降低部署主机所需的硬件成本。以降低部署主机所需的硬件成本。

【技术实现步骤摘要】
一种基于系统调用序列的主机入侵检测方法


[0001]本专利技术涉及计算机安全
,尤其涉及一种基于系统调用序列的主机入侵检测方法。

技术介绍

[0002]现有的入侵检测系统(Intrusion detection systems,简称 :IDS)可分类基于网络的入侵检测系统(Network

based Intrusion detection systems,简称 :NIDS)和基于主机的入侵检测系统(Host

based Intrusion detection systems,简称 :HIDS)。其中NIDS一般部署在主干网络节点通过检测网络流量识别网络入侵事件,而HIDS被部署在主机上监测各种主机数据,如日志、目录、文件和注册表,以检测和防止恶意活动。与NIDS相比,HIDS有能力检测内部攻击和高级持续性威胁(AdvancedPersistent Threat,简称 :APT),它可以被视为保护网络资产安全的最后一道防线。
[0003]目前,在主机入侵检测系统方面,基于机器学习/深度学习的入侵检测系统是目前性能最好以及应用最广泛的入侵检测系统,为了构建良好的特征用于检测,系统调用信息作为操作系统最原始和最细粒度的信息,因此系统调用序列也成为了HIDS使用最广泛、最频繁的特性用于构建入侵检测引擎。
[0004]特征提取是入侵检测系统的一项关键任务,但是由于这种操作本身非常耗时,而一些攻击可能在特征选择/提取任务完成之前就已经进行了。目前,在构建基于系统调用的入侵检测引擎中典型的特征提取方法有N

gram滑动窗口、TF

IDF(Term Frequency

Inverse Document)以及窗频法(将N

gram与TF

IDF结合),其中N

gram扫描整个系统调用,从中提取n个连续的系统调用序列,保留了系统调用执行过程中的顺序信息,但是没有考虑所提取的不同特征对于区分入侵的重要性。相反,TF

IDF方法可用于区分不同特征的重要性,但是不能保留系统的顺序信息。相较于N

gram和TF

IDF方法,窗频法结合了两者的优势,弥补了N

gram和TF

IDF各自的不足。
[0005]窗频法流程如图2所示,其具体步骤如下:A.从系统日志捕获系统调用信息,并划分为不同长度的系统调用序列S1,S2以及Si,以便于后续的数据处理。
[0006]B.将系统调用序列S1,S2以及Si打上正常或者异常系统调用序列标签,便于后续机器学习入侵检测引擎的构建C.利用窗频法从上述系统调用进行特征提取,将系统调用序列转换为特征向量,以适用于机器学习入侵检测引擎的输入,其中,利用N

gram从系统调用序列中取固定长度为 n 的特征片段(例如取固定长度为3,则S1的特征片段为[4 168 42, 168 42 102 ,..., 168 168 4, 168 4 240]),然后使用TF

IDF方法为提取的特征片段赋予权值(例如
ꢀ“
4 168 42”权值为“0.01045553”),通过上述方法,可将不同的系统调用序列转化为适用入侵检测引擎的向量表示。
[0007]D.将系统调用序列向量表示以及对应的分类标签送入机器学习模型中训练,通过
大量的系统调用序列数据的训练,可构建一个用于入侵检测的机器学习引擎。
[0008]然而,现有的窗频法直接从原始系统调用序列中提取相关特征,且为了满足检测引擎对不同长度特征片段的需要,需要设置不同的固定长度捕获相关特征片段,这导致了相关的特征片段数量呈指数增长,进而造成所提取的特征向量维度过高以及特征提取时间过长,且由此构建的入侵检测检测引擎需要消耗大量的存储资源和计算资源。

技术实现思路

[0009]本专利技术的目的在于解决现在技术在特征抽取过程中所生成的向量维度过高且耗时过长的问题,并且可以降低部署主机所需的硬件成本,针对上述问题,提出一种用基于系统调用序列的主机入侵检测方法及装置解决上述问题。
[0010]第一方面,本专利技术提供一种基于系统调用的入侵检测的方法,包括系统调用特征抽取阶段以及叶子节点序列检测阶段,其中系统调用特征抽取阶段包括:S1,捕获系统调用信息,将捕获到的所述系统调用信息分割成若干个系统调用序列,并且打上对应的序列标签;S2,通过不同粒度特征表征方式去定义异常序列所代表的异常活动轨迹;S3,使用关系映射图来存储所述的不同粒度的特征之间的映射关系;S4,将关系映射图转换为抽象行为树;S5,对抽象行为树进行剪枝,保存剪枝后的抽象行为树结构;叶子节点序列检测阶段包括:S6,通过抽象行为树进行叶子节点映射,将捕获的系统调用序列转换为叶子节点序列,使用窗频法从新的叶子节点序列进行特征提取;S7,将提取的特征向量进行特征降维;S8,将降维后的特征向量作为机器学习模型的输入,将相应的叶子节点序列分为异常和正常两种。
[0011]可选地,步骤S2,粒度特征表征方式包括:原始的系统调用序列特征表示方式、系统行为特征表示方式以及系统内核模块特征表示方式;其特征粒度分别为细粒度表征、低水平粗粒度表征以及高水平粗粒度表征。
[0012]可选地,步骤S3,使用关系映射图来存储所述的不同粒度的特征之间的映射关系包括:原始系统调用与系统行为的映射关系为多对一,系统行为与系统内核模块的映射关系为多对一,通过关系映射图来存储所述的不同粒度的特征之间的映射关系;可选地,步骤S4,将关系映射图转换为抽象行为树包括:将关系映射图的图形存储方式转换为树形存储方式,用抽象树形结构存储关系映射图。
[0013]可选地,步骤S5,对抽象行为树进行剪枝,保存剪枝后的抽象行为树结构包括:每次选择剪掉不同的叶子节点,通过模型的准确率衡量剪枝的效果,当准确率达到预先设定的某一阈值时,认为当前的抽象行为树符合特征抽取要求,并保存当前的抽象行为树结构。
[0014]可选地,步骤S7,将上述提取的特征向量进行特征降维包括:将提取的特征向量通过奇异值分解进行特征降维。
[0015]可选地,步骤S8,将降维后的特征向量作为机器学习模型的输入,将相应的叶子节点序列分为异常和正常两种,包括:将降维后的特征向量以及分类标签分为训练集、测试集以及验证集,训练集用于用于训练模型以及确定参数,测试集用于确定网络结构以及调整模型的超参数,验证集用于检验模型的泛化能力,选择不同的机器学习算法模型,进行参数选择,使用交叉验证评估模型效果。
[0016]第二方面,本专利技术提供一种基于系统调用的入侵检测的装置,包括系统调用特征抽取单元以及叶子节点序列检测单元,其中系统调用特征抽取单元包括:捕获单元,用于捕获系统调用信息,将捕获到的所述系统调用信息分割成若干个系统调用序列,并且打上本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于系统调用的入侵检测的方法,其特征在于,包括以下步骤,1)系统调用特征抽取阶段;S1:捕获系统调用信息,将捕获到的所述系统调用信息分割成若干个系统调用序列,并且打上对应的序列标签;S2:通过不同粒度特征表征方式去定义异常序列所代表的异常活动轨迹;S3:使用关系映射图来存储所述的不同粒度的特征之间的映射关系;S4:将关系映射图转换为抽象行为树;S5:对抽象行为树进行剪枝,保存剪枝后的抽象行为树结构;2)叶子节点序列检测阶段;S6:通过抽象行为树进行叶子节点映射,将捕获的系统调用序列转换为叶子节点序列,使用窗频法从新的叶子节点序列进行特征提取;S7:将提取的特征向量进行特征降维;S8:将降维后的特征向量作为机器学习模型的输入,将相应的叶子节点序列分为异常和正常两种。2.根据权利要求1所述的一种基于系统调用的入侵检测的方法,其特征在于,步骤S2:粒度特征表征方式,包括:原始的系统调用序列特征表示方式、系统行为特征表示方式以及系统内核模块特征表示方式;其特征粒度分别为细粒度表征、低水平粗粒度表征以及高水平粗粒度表征。3.根据权利要求2所述的一种基于系统调用的入侵检测的方法,其特征在于,步骤S3:使用关系映射图来存储所述的不同粒度的特征之间的映射关系,包括:原始系统调用与系统行为的映射关系为多对一,系统行为与系统内核模块的映射关系...

【专利技术属性】
技术研发人员:李涛唐聪何俊江兰小龙方文波陈姿妤
申请(专利权)人:四川大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1