CN113312619A - 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 - Google Patents
基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113312619A CN113312619A CN202110605867.XA CN202110605867A CN113312619A CN 113312619 A CN113312619 A CN 113312619A CN 202110605867 A CN202110605867 A CN 202110605867A CN 113312619 A CN113312619 A CN 113312619A
- Authority
- CN
- China
- Prior art keywords
- behavior
- malicious
- original sample
- sample
- learning
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于小样本学习的恶意进程检测方法、装置、电子设备、及存储介质,该方法获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签;对各个原始样本进行特征选取以去除冗余特征;对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;利用恶意进程的行为特征和学习得到的原型网络对待检测的样本进行恶意行为进程检测。本发明的检测方法在现有恶意行为样本数据量少且分布不平衡的情况下,检出率高。
Description
技术领域
本申请涉及信息安全技术领域,特别是涉及一种基于小样本学习的恶意进程检测方法、装置、计电子设备及存储介质。
背景技术
随着互联网技术的不断发展,网络上恶意程序的数目也在不断激增,远程访问木马(RAT,remote access Trojan)便是其中一种数目不断持续增长的恶意程序,入侵者可以利用RAT来在受感染的计算机上进行绝大部分的恶意操作,如监视用户行为、激活系统的摄像头和录音录像、传播病毒和其他恶意软件、访问机密信息和密码等,危害十分巨大。
当前,已经有一些工作来对RAT恶意程序的行为进行识别。
对RAT病毒而言,传统的检测方法主要是基于规则来对其进行入侵检测,但这种基于特征的检测技术,恶意软件可以通过混淆、变形来规避检测,利用规则和特征库来进行检测,只能检测出目前已知的RAT病毒行为,而对于未知的RAT或者利用混淆来做过处理的已知RAT,基于规则的方法都对此无能为力,无法将其检测出来。
近年来,基于网络流量的分析技术显示出高效性和低占用率,机器学习的算法在其中发挥着重要的作用。然而,针对RAT木马网络行为识别这一应用,目前的研究较少考虑进程执行记录的时间顺序,且RAT恶意行为样本本身数据量较少,且分布不平衡,对现有的机器学习检测器的分类效果有很大的影响,导致目前的研究对于木马的识别率较低。
机器学习的一般机制是使用在先前准备的训练样本上学习的统计模型对未来数据进行预测。在大多数情况下,模型的泛化能力是由足够数量的训练样本来保证的。然而,在许多实际应用中,人们可能只被允许访问很少的新类别的训练数据,在有限的范围内,每个新类别只有极少数样本。因此,如何从很少的训练数据中学习到一个相对高检出率的模型就成为了一个很大的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种基于小样本学习的恶意进程检测方法。
一种基于小样本学习的恶意进程检测方法,其特征在于,所述方法包括:
获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程行为包括恶意进程行为和非恶意进程行为;
对各个原始样本进行特征选取以去除冗余特征;
对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;
利用恶意进程的行为特征和学习得到的原型网络对待检测进程的行为特征向量进行恶意行为进程检测,以检测所述待检测行为进程是否为恶意进程。
作为优选,所述对各个原始样本进行特征选取以去除冗余特征包括:
采用压缩循环重复序列服务端对原始样本进行特征选取。
作为优选,所述对各个原始样本进行特征选取以去除冗余特征包括:
采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取。
进一步优选,所述服务端对各个原始样本进行特征选取以去除冗余特征包括:
计算原始样本中各个进程的API或系统调用的恶意行为关联指数,其中API或系统调用a的恶意行为关联指数采用如下公式计算:
MBIa=log(W/Wa+1)
其中,W为原始样本中的进程总数,Wa为原始样本中所有进程中包含API或系统调用a的个数;
删除原始样本中将恶意行为关联指数小于预定阈值的API或系统调用。
作为优选,所述对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量包括:
利用n-gram模型对经过特征提取的原始样本进行序列话处理得到行为特征向量。
作为优选,所述利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络包括:以episode为循环进行小样本学习,每个episode循环中,从所述非恶意进程行为的行为特征向量中选择特征向量分别构建支持集和查询集作为episode集合进行小样本,其中,支持集包括M类非恶意进程行为,每个类别中包括N个原始样本;支持集为包括R类非恶意进程行为,每个类别包括T个原始样本,M和N分别为原始样本中恶意进程行为的类别总数和每个类别中原始样本的个数;R类非恶意进程行为的类别总数,M<R,N<T。
本发明还提供了一种基于小样本学习的恶意进程检测装置,包括:
第一模块,用于获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程行为包括恶意进程行为和非恶意进程行为;
第二模块,用于对各个原始样本进行特征选取以去除冗余特征;
第三模块,用于对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
第四模块,用于利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;
第五模块,利用恶意进程的行为特征和学习得到的原型网络对待检测的样本进行恶意行为进程检测。
作为优选,所述第二模块采用压缩循环重复序列服务端对原始样本进行特征选取;或,
采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取。
本发明还提供了一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求上述的恶意进程检测方法。
本发明一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的恶意进程检测方法。
本发明通过文档向量化技术,融合了序列的时序特征,实现了基于小样本学习原型网络模型的恶意RAT进程(即恶意进程)识别系统,在现有恶意行为样本数据量少且分布不平衡的情况下,检测率比传统的基于规则的方法以及基于机器学习的方法性能更好,检出率更高。此外,能够实现对全量API数据进行学习和挑选,较之使用hook等方式的数据采集装置,收集的API执行信息更为全面,也有利于提高检出率。
附图说明
图1为本发明的基于小样本学习的恶意进程检测系统的结构示意图。
图2为本发明的基于小样本学习的恶意进程检测方法的流程图。
图3为本发明一实施例中利用非恶意行为的行为特征向量进行小样本学习得到训练好的原型网络的流程示意图。
图4为本发明的一实施例中利用训练好的原型网络进行恶意进程检测的流程示意图。
图5为本发明的本发明的一实施例中基于小样本学习的恶意进程检测装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。
需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是未作特殊说明,其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
本申请中先进行如下定义:
RAT:远程访问木马(RAT,remote access Trojan)是一种恶意程序,入侵后能对受感染电脑能进行管理控制
API:应用程序接口(Application Programming Interface),是一种计算接口,定义多个软件中介之间的交互,以及可以进行的调用(call)或请求(request)的种类,如何进行调用或发出请求,应使用的数据格式,应遵循的惯例等规范。
本申请提供的恶意进程检测方法适用于具有检测设备和待检测设备的系统中。在一个实施环境中,检测设备和待检测设备可以为同一设备。在另外一个实施环境中,检测设备和待检测设备为不同设备,且一个检测设备可以同时检测多台待检测设备。
通常,检测设备为服务端,待检测设备为客户端。在此情况下,该检测方法可以应用于如图1所示的应用环境中。其中,客户端102通过网络与服务端104通过网络进行通信。其中,客户端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑,服务端104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
客户端102为恶意进程可能侵入的主机,客户端上运行进程日志收集器和简单的日志清洗和处理程序,将清洗好的数据发送给服务器进行检测器的训练。也可直接从服务器上下载固定的模型参数,在本地进行检测。
服务器104用于接收客户端发来的进程日志序列数据,并完成数据去冗余和特征提取。在完成进程行为特征的学习,并将进程日志序列转换为进程行为特征向量后,利用小样本学习技术进行检测,输出结果并将结果返回给客户端102。服务器104也可存储好相应的模型参数,供客户端下载并在本地使用。
本发明恶意进程检测方法首先在各客户端主机上运行数据收集器收集该主机上运行的进程及进程在运行过程中的调用栈和系统调用日志作为原始数据集。将日志进行简单处理之后发送给服务器端。服务端首先对于原始数据集进行特征选择以进行去冗余处理,移除与恶意进程检测无关的日志记录,并重点提取与恶意进程检测相关的进程日志事件。完成特征选择之后,服务端利用基于深度神经网络的进程行为分析模型,将各个进程的日志序列转化为能够体现进程行为特征的数学向量。最后,采用了小样本学习技术,对于进程行为特征向量进行检测,利用较少的训练样本,准确识别出具有恶意行为的进程。
图2是本发明提供的一种基于小样本学习的恶意进程检测方法,本实施例可适用于根据各参与方的本地聚类信息高效、可靠地进行联邦数据聚类处理的情况,该方法可以由联邦数据聚类装置来执行,该装置可以由软件和/或硬件的方式来实现,并一般可集成在计算机设备中,与其他参与方设备配合使用。相应的,如图2所示,该方法包括如下操作:
S201,获取反映客户端的进程行为的序列化日志作为原始样本,并根据进程的功能分类为各个原始样本添加的标签,进程的功能分类以人工统计作为主要获取来源,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程包括至少1个类别的恶意进程和至少2个类别的非恶意的进程;
所述标签用来表示进程的类别。总体来说进程类别包括恶意进程和非恶意进程两大类。其中恶意RAT包括远程桌面访问、键盘记录、下载并执行等;非恶意进程的种类较多,包括网络与安全、文字处理、音乐播放、视频播放、网络存储下载、游戏、系统进程、邮件应用等。
本实施例中标签在训练阶段由研究人员手动添加。
在客户端上安装并运行进程日志收集器,客户端收集到日志数据后,从数据中提取反映客户端的进程行为的序列化的日志作为原始样本。每一进程的序列化日志作为一个原始样本。
本实施例中,以客户端运行的进程在每个时刻所调用的win32API调用栈和系统调用反应客户端的进程行为的序列化的日志,每个时刻所调用的win32API调用栈和系统调用按照时间顺序排列,即可得到进程执行的事件序列。
在另一优选实施例中,还包括对获取反映客户端的进程行为的序列化的日志进行预处理以去除一些无关信息(如调用栈地址,动态链接库路径等),并合并一些功能相近的事件,降低后续步骤的分析难度。
S202,服务端对各个原始样本进行特征选取以去除冗余特征;
在一个实施例中,采用压缩循环重复序列服务端对原始样本进行特征选取,其核心思想是如果一段连续序列由完全相同的子序列重复多个周期构成,则只保留一个周期的子序列。如果两个系统调用的调用栈和系统调用完全相同,则这两个系统调用代表了程序循环结构中同一系统调用的两次触发,当循环体被多次执行时,仅保留一次便可以获取该段时间进程的行为信息。该算法主要运用了贪心算法的思想,主要体现在一旦检测到有循环结构出现,就立刻合并检测到的循环结构。作为优选,本实施例中先合并压缩较短的循环体,再合并压缩较长的循环体,直到检测不到循环体存在。这种做法可以有效合并长度不同的具有周期性的子序列。
下面将结合简单示例说明压缩循环体的方法。假设原始样本为AAABBBAAABBB,若先压缩较长的循环体再压缩较短的循环体,压缩较长的循环体后得到AAABBB,然后再压缩较短的循环体得到AB;若先压缩较短的循环体再压缩较长的循环体时,先压缩较短的循环体后得到ABAB,再压缩较长的循环体得到结果为AB。
在另一示例中,原始样本为AAABCCABBBBBBBBBBC,采用前者无法合并,采用后者则可分布合并,最终结果为ABC。
在另一个实施例中,采用一精简与恶意行为无关调用栈的方法对原始样本进行特征选取。本实施例中识别与恶意行为无关的调用栈和系统调用的主要思想是,寻找在不同进程中都广泛出现的调用类型,保留仅在某些恶意RAT进程中出现频率较高的调用类型。
本实施例中精简与恶意行为无关调用栈的方法对原始样本进行特征选取具体包括如下步骤:
步骤S31,计算原始样本中各个进程的API或系统调用的恶意行为关联指数,其中API或系统调用a的恶意行为关联指数采用如下公式计算:
MBIa=log(W/Wa+1)
其中,W为原始样本中的进程总数,Wa为原始样本中所有进程中包含API或系统调用a的个数;
步骤S32,删除原始样本中将恶意行为关联指数小于预定阈值的API或系统调用。
本实施例中该预定阈值的取值范围为(0,1],进一步优选为0.1。
从恶意行为关联指数的计算公式可以得出,恶意行为关联指数越高,证明这个API或系统调用在进程中出现的次数越稀有,在特定类别进程中出现的概率越高,即对区分进程的行为特征更有帮助。
需要说明的是,采用压缩循环重复序列服务端对原始样本进行特征选取和精简与恶意行为无关调用栈的方法对原始样本进行特征选取的方法可以配合使用,能够打到更好的特征提取效果。在此基础上,优选先采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取,然后再采用压缩循环重复序列服务端对原始样本进行特征选取。
S203,服务端对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
近年来,有大量工作旨在基于进程日志或事件序列对进程的行为加以分析,其中包括许多深度学习领域的方法,如LSTM和Doc2vec等。
本实施例中由此进行拓展,将自然语言处理中的多种文本分析算法加以改进,用于分析进程日志序列解析进程行为特征。本实施例中服务端将经过特征提取的原始样本进行序列化处理得到进程行为特征向量具体如下:
本实施例中运用深度神经网络将进程日志序列看做长文本,利用n-gram模型对经过特征提取的原始样本进行序列话处理得到代表进程行为特征的向量(及行为特征向量)。
需要说明的是,可以用深度学习模型Doc2vec分析进程日志序列,获取进程的行为特征向量。事实上,此处的序列特征提取模型Doc2vec可以换为其他相关的特征提取模型,如SBERT或Sent2vec等。Doc2vec保证了输出特征向量维度的一致性,使得后续的检测和分类过程更加简便。
S204,利用所述的非恶意行为的行为特征向量进行小样本学习得到训练好的原型网络;
本发明的原型网络包括嵌入函数,嵌入函数输入为行为特征向量,输出为映射空间内的嵌入向量,本发明中嵌入函数为双层神经网络,激活函数为ReLu,所述的原型网络还利用特征向量与不同种类恶意进程的原型之间的距离确定输入的行为特征向量属于对应的种类恶意进程的概率值。
在一实施例例中所述利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络包括:以episode为循环进行小样本学习,每个episode循环中,从所述非恶意进程行为的行为特征向量中选择特征向量分别构建支持集和查询集作为episode集合进行小样本,其中,支持集包括M类非恶意进程行为,每个类别中包括N个原始样本;支持集为包括R类非恶意进程行为,每个类别包括T个原始样本,M和N分别为原始样本中恶意进程行为的类别总数和每个类别中原始样本的个数;R类非恶意进程行为的类别总数,M<R,N<T。
以一示例说明原型网络学习过程:
该示例中恶意进程样本共有5类,每类只有5个样本。非恶意进程样本共有100类,每类有100个样本。学习目标为获取给定5个类别的类原型用于确定未知样本是否属于这5类。
训练阶段如图3所示,训练阶段以非恶意进程样本为主,根据恶意进程的种类数(该例为5类),从非恶意进程样本中抽取数据构成episode进行训练。每一个episode包含支持集和查询集,支持集包括从非恶意进程样本随机抽取的5类,以及从每类中随机选取的5个样本,查询集包括包括从非恶意进程样本针对100个类,每类中随机选取的20个样本。
将这25个非恶意进程样本(即支持集)经过嵌入函数映射后再进行平均,得到5个类别的类原型,再将查询集的样本经过嵌入函数映射,通过比较距离验证嵌入函数的效果,根据验证集的标签计算损失函数。若损失函数小于事先设定的值,则停止训练,若仍大于停止条件,则基于损失函数的计算结果,采用反向传递法计算并更新映射函数的参数,并选取一个新的episode进行新一轮迭代,直至达到预设的停止条件(通常为最大迭代次数),即得到训练好的原型网络。
S205,利用学习得到的原型网络对待检测进程的行为特征向量进行恶意行为进程检测。
如图4所示,检测阶段使用训练好的嵌入函数,并将恶意进程的25个样本通过嵌入函数进行映射,得到5个恶意样本类的类原型。再将测试集样本用嵌入函数进行映射,通过比较与5个类原型的距离,确实该测试样本是否属于5类恶意进程中的一类。若是,则判断为恶意进程;反之则为非恶意进程。
与其他小样本学习方法相比,原型网络提供了一种更简单的学习方式,并取得了很好的效果。
需要说明,本发明的待检测进程的行为特征向量与原始样本的行为特征向量的格式一种,可通过执行S201~203的方法获取。
本发明的主要改进在于,对原型网络所规定的映射步骤由传统的针对于图像的卷积神经网络换为了更适合对进程日志进行学习和建模的Doc2vec、LSTM等网络,从而使得这一经典的小样本学习网络可以处理小样本训练集下的恶意行为进行检测的问题。
本申请利用了深度学习中的小样本学习(Few-shot learning,FSL)算法,来设计并实现了原型网络模型,大大降低传统方法训练检测器所需要的数据量,使其在少量的样本数据中仍然可以取得与传统方法使用大量样本相近的结果,使得模型能够通过很少的训练数据来完成较高的恶意进程检出率。
此外,本申请通过使用基于windows系统ETW的数据采集装置,能够实现全量API数据进行学习和挑选,较之使用hook等方式的数据采集装置,收集的API执行信息更为全面。通过文档向量化doc2vec技术,融合了序列的时序特征,实现了基于小样本学习原型网络模型的恶意RAT进程识别系统,在现有恶意行为样本数据量少且分布不平衡的情况下,检测率比传统的基于规则的方法以及基于机器学习的方法性能更好,检出率更高。
此外,本发明在本发明公开的示例性实施例中,还公开了一种基于小样本学习的恶意进程检测装置,如图5所示,该装置包括:
第一模块,用于获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程行为包括恶意进程行为和非恶意进程行为;
第二模块,用于对各个原始样本进行特征选取以去除冗余特征;
第三模块,用于对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
第四模块,用于利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;
第五模块,利用恶意进程的行为特征和学习得到的原型网络对待检测进程的行为特征向量进行恶意行为进程检测。
其中,所述第二模块采用压缩循环重复序列服务端对原始样本进行特征选取;或,
采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取。
本实施例的恶意进程检测装置中第一模块主要实现数据采集功能,安装在客户端,其余模块无特殊要求,既可以在客户端也可以在服务器端。
上述中恶意进程检测装置各模块的具体细节已经在对应的联邦贡献度计算方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了恶意进程检测装置的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,在本发明公开的示例性实施例中,还提供了一种能够实现上述恶意进程检测方法的电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现上述的恶意进程检测方法。
此外,在本发明公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的恶意进程检测方法。
应当理解,本实施例的计算机设备包括中央处理单元(CPU),其可以根据存储在只读存储器(ROM)中的程序或者从存储部分加载到随机访问存储器1003中的程序而执行各种适当的动作和处理。在RAM中,还存储有系统1000操作所需的各种程序和数据。CPU、ROM以及RAM通过总线彼此相连。输入/输出(I/O)接口也连接至总线。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被中央处理单元(CPU)执行时,执行本申请的终端中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
以上具体示出和描述了本发明的示例性实施例。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (10)
1.一种基于小样本学习的恶意进程检测方法,其特征在于,所述方法包括:
获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程行为包括恶意进程行为和非恶意进程行为;
对各个原始样本进行特征选取以去除冗余特征;
对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;
利用恶意进程的行为特征和学习得到的原型网络对待检测行为进程的行为特征向量进行恶意行为进程检测,以检测所述待检测行为进程是否为恶意进程。
2.如权利要求1所述的基于小样本学习的恶意进程检测方法,其特征在于,所述对各个原始样本进行特征选取以去除冗余特征包括:
采用压缩循环重复序列服务端对原始样本进行特征选取。
3.如权利要求1所述的基于小样本学习的恶意进程检测方法,其特征在于,所述对各个原始样本进行特征选取以去除冗余特征包括:
采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取。
4.如权利要求3所述的基于小样本学习的恶意进程检测方法,其特征在于,所述服务端对各个原始样本进行特征选取以去除冗余特征包括:
计算原始样本中各个进程的API或系统调用的恶意行为关联指数,其中API或系统调用a的恶意行为关联指数采用如下公式计算:
MBIa=log(W/Wa+1)
其中,W为原始样本中的进程总数,Wa为原始样本中所有进程中包含API或系统调用a的个数;
删除原始样本中将恶意行为关联指数小于预定阈值的API或系统调用。
5.如权利要求3所述的基于小样本学习的恶意进程检测方法,其特征在于,所述对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量包括:
利用n-gram模型对经过特征提取的原始样本进行序列话处理得到行为特征向量。
6.如权利要求5所述的基于小样本学习的恶意进程检测方法,其特征在于,所述利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络包括:以episode为循环进行小样本学习,每个episode循环中,从所述非恶意进程行为的行为特征向量中选择特征向量分别构建支持集和查询集作为episode集合进行小样本,其中,支持集包括M类非恶意进程行为,每个类别中包括N个原始样本;支持集为包括R类非恶意进程行为,每个类别包括T个原始样本,M和N分别为原始样本中恶意进程行为的类别总数和每个类别中原始样本的个数;R类非恶意进程行为的类别总数,M<R,N<T。
7.一种基于小样本学习的恶意进程检测装置,其特征在于,包括:
第一模块,用于获取反映客户端的进程行为的序列化日志作为原始样本,并以各个进程行为类型作为原始样本添加的标签,所述反映客户端的进程行为的序列化日志包括该进程运行过程中的API或系统调用的日志;所述进程行为包括恶意进程行为和非恶意进程行为;
第二模块,用于对各个原始样本进行特征选取以去除冗余特征;
第三模块,用于对各个经过特征选取的原始样本进行序列化处理得到相应进程的行为特征向量;
第四模块,用于利用所述非恶意进程行为的行为特征向量进行小样本学习得到原型网络,所述原型网络的嵌入函数输入为行为特征向量;
第五模块,利用恶意进程的行为特征和学习得到的原型网络对待检测的样本进行恶意行为进程检测。
8.如权利要求7所述的基于小样本学习的恶意进程检测装置,其特征在于,所述第二模块采用压缩循环重复序列服务端对原始样本进行特征选取;或,
采用精简与恶意行为无关调用栈的方法对原始样本进行特征选取。
9.一种电子设备,包括:
处理器;以及
存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时实现如权利要求1至7中任一项所述的恶意进程检测方法。
10.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的恶意进程检测方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2021104455720 | 2021-04-23 | ||
CN202110445572 | 2021-04-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113312619A true CN113312619A (zh) | 2021-08-27 |
CN113312619B CN113312619B (zh) | 2023-09-05 |
Family
ID=77376727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110605867.XA Active CN113312619B (zh) | 2021-04-23 | 2021-05-31 | 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113312619B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI797808B (zh) * | 2021-11-02 | 2023-04-01 | 財團法人資訊工業策進會 | 機器學習系統及方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392024A (zh) * | 2017-08-08 | 2017-11-24 | 微梦创科网络科技(中国)有限公司 | 一种恶意程序的识别方法及装置 |
CN109753801A (zh) * | 2019-01-29 | 2019-05-14 | 重庆邮电大学 | 基于系统调用的智能终端恶意软件动态检测方法 |
CN110808945A (zh) * | 2019-09-11 | 2020-02-18 | 浙江大学 | 一种基于元学习的小样本场景下网络入侵检测方法 |
CN111400714A (zh) * | 2020-04-16 | 2020-07-10 | Oppo广东移动通信有限公司 | 病毒检测方法、装置、设备及存储介质 |
CN112101403A (zh) * | 2020-07-24 | 2020-12-18 | 西安电子科技大学 | 基于联邦少样本网络模型的分类方法、系统及电子设备 |
CN112434296A (zh) * | 2020-12-09 | 2021-03-02 | 广东工业大学 | 一种安卓恶意应用的检测方法及装置 |
US10963754B1 (en) * | 2018-09-27 | 2021-03-30 | Amazon Technologies, Inc. | Prototypical network algorithms for few-shot learning |
CN112613036A (zh) * | 2020-12-29 | 2021-04-06 | 北京天融信网络安全技术有限公司 | 恶意样本增强方法、恶意程序检测方法及对应装置 |
-
2021
- 2021-05-31 CN CN202110605867.XA patent/CN113312619B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392024A (zh) * | 2017-08-08 | 2017-11-24 | 微梦创科网络科技(中国)有限公司 | 一种恶意程序的识别方法及装置 |
US10963754B1 (en) * | 2018-09-27 | 2021-03-30 | Amazon Technologies, Inc. | Prototypical network algorithms for few-shot learning |
CN109753801A (zh) * | 2019-01-29 | 2019-05-14 | 重庆邮电大学 | 基于系统调用的智能终端恶意软件动态检测方法 |
CN110808945A (zh) * | 2019-09-11 | 2020-02-18 | 浙江大学 | 一种基于元学习的小样本场景下网络入侵检测方法 |
CN111400714A (zh) * | 2020-04-16 | 2020-07-10 | Oppo广东移动通信有限公司 | 病毒检测方法、装置、设备及存储介质 |
CN112101403A (zh) * | 2020-07-24 | 2020-12-18 | 西安电子科技大学 | 基于联邦少样本网络模型的分类方法、系统及电子设备 |
CN112434296A (zh) * | 2020-12-09 | 2021-03-02 | 广东工业大学 | 一种安卓恶意应用的检测方法及装置 |
CN112613036A (zh) * | 2020-12-29 | 2021-04-06 | 北京天融信网络安全技术有限公司 | 恶意样本增强方法、恶意程序检测方法及对应装置 |
Non-Patent Citations (4)
Title |
---|
CONGYUAN XU: "A Method of Few-Shot Network Intrusion Detection Based on Meta-Learning Framework", 《IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY 》 * |
LAHA ALE: "Few-Shot Learning to Classify Android Malwares", 《2020 IEEE 5TH INTERNATIONAL CONFERENCE ON SIGNAL AND IMAGE PROCESSING (ICSIP)》 * |
王一丰: "小样本下未知内部威胁检测的方法研究", 《信息科技》 * |
石欣然: "一种基于少样本且不均衡的网络攻击流量检测系统", 《信息科技》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI797808B (zh) * | 2021-11-02 | 2023-04-01 | 財團法人資訊工業策進會 | 機器學習系統及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113312619B (zh) | 2023-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241418B (zh) | 基于随机森林的异常用户识别方法及装置、设备、介质 | |
CN111612038B (zh) | 异常用户检测方法及装置、存储介质、电子设备 | |
US11580222B2 (en) | Automated malware analysis that automatically clusters sandbox reports of similar malware samples | |
CN109241223B (zh) | 行为行踪识别方法及系统 | |
CN113886821A (zh) | 基于孪生网络的恶意进程识别方法、装置、电子设备及存储介质 | |
KR20160119295A (ko) | 하둡 기반의 악성코드 탐지 방법과 시스템 | |
CN111062431A (zh) | 图像聚类方法、图像聚类装置、电子设备及存储介质 | |
Bernardi et al. | A fuzzy-based process mining approach for dynamic malware detection | |
CN117240632B (zh) | 一种基于知识图谱的攻击检测方法和系统 | |
CN113312619B (zh) | 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 | |
CN104580109A (zh) | 生成点选验证码的方法及装置 | |
CN113315851A (zh) | 域名检测方法、装置及存储介质 | |
CN110704614B (zh) | 对应用中的用户群类型进行预测的信息处理方法及装置 | |
CN114817925B (zh) | 基于多模态图特征的安卓恶意软件检测方法及系统 | |
CN115567305A (zh) | 基于深度学习的顺序网络攻击预测分析方法 | |
Congyi et al. | Method for detecting Android malware based on ensemble learning | |
CN115809267A (zh) | 一种用于生成审计结果的方法、设备、介质及程序产品 | |
CN114925365A (zh) | 一种文件处理方法、装置、电子设备及存储介质 | |
CN113935032A (zh) | 一种恶意代码的同源分析方法、装置及可读存储介质 | |
CN114969734A (zh) | 一种基于api调用序列的勒索病毒变种检测方法 | |
CN112417007A (zh) | 一种数据分析方法、装置、电子设备及存储介质 | |
CN113627514A (zh) | 知识图谱的数据处理方法、装置、电子设备和存储介质 | |
CN111291186A (zh) | 一种基于聚类算法的上下文挖掘方法、装置和电子设备 | |
CN114338187B (zh) | 基于决策树的终端安全检测方法及装置 | |
CN111191233B (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 |