CN112163217A - 恶意软件变种识别方法、装置、设备及计算机存储介质 - Google Patents
恶意软件变种识别方法、装置、设备及计算机存储介质 Download PDFInfo
- Publication number
- CN112163217A CN112163217A CN202011029067.XA CN202011029067A CN112163217A CN 112163217 A CN112163217 A CN 112163217A CN 202011029067 A CN202011029067 A CN 202011029067A CN 112163217 A CN112163217 A CN 112163217A
- Authority
- CN
- China
- Prior art keywords
- software
- variant
- sequence
- identified
- time sequence
- 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/561—Virus type analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
Abstract
本申请提供一种恶意软件变种识别方法、装置、设备及计算机存储介质,其中,恶意软件变种识别方法包括:获取若干个恶意软件的属性数据的特征时间序列;根据预设时间步长对所述特征时间序列进行位移,得到预测目标特征序列;将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;获取待识别软件的属性数据;根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型。本申请能够实现对未知的恶意软件变种进行预测,以提高恶意软件变种的检测准确性。
Description
技术领域
本申请涉及网络安全领域,具体而言,涉及一种恶意软件变种识别方法、装置、设备及计算机存储介质。
背景技术
恶意软件分为病毒(Viruses)和蠕虫(Worms)、特洛伊木马(Trojans)、可疑包(Suspicious Packers)和恶意工具(Malicious Tools)等不同的类型,每一种类型又可以根据具体行为、不同的作者等分成多个族群。近年来,恶意软件的数量呈现快速增长的趋势,各种类型的变种也层数不穷。如Hawkeye Keylogger,自出现以来已经有了多个变种,作者不断地在新版本中使用更加高级的攻击功能。基于分类算法的恶意软件检测模型,对训练数据具有依赖性,往往只能检测训练数据中包含的或者特征具有相似性的恶意软件而对未知的恶意软件变种检测准确性低。
发明内容
本申请实施例的目的在于提供一种恶意软件变种识别方法、装置、设备及计算机存储介质,用以实现对未知的恶意软件变种进行准确检测。
为此,本申请第一方面提供一种恶意软件变种识别方法,所述方法包括:
获取若干个恶意软件的属性数据的特征时间序列;
根据预设时间步长对所述特征时间序列进行位移,得到预测目标特征序列;
将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
获取待识别软件的属性数据;
根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型。
本申请第一方面的方法通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,能够得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
本申请实施例中,作为一种可选的实施方式,所述获取若干个恶意软件的属性数据的特征时间序列,包括:
获取若干个样本数据,所述样本数据包括至少一个族群内的所述若干个恶意软件的属性数据;
根据所述若干个恶意软件的属性数据的时间先后顺序将所述若干个恶意软件的所述数据组成样本时间序列;
提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
在本可选的实施方式中,通过根据所述若干个恶意软件的属性数据的时间先后顺序将所述若干个恶意软件的所述数据组成样本时间序列,进而能够提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
在本申请第一方面中,作为一种可选的实施方式中,所述根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型,包括:
根据所述待识别软件的属性数据提取生成所述待识别软件的特征序列;
将所述待识别软件的特征序列输入到所述变种检测模型中,以使得所述变种检测模型输出预测变种特征;
根据所述预测变种特征确定所述待识别软件变种后的所属恶意软件类型。
在本可选的实施方式中,通过根据所述待识别软件的属性数据能够提取生成所述待识别软件的特征序列,进而能够将所述待识别软件的特征序列输入到所述变种检测模型中,以使得所述变种检测模型输出预测变种特征,从而能够根据所述预测变种特征确定所述待识别软件变种后的所属恶意软件类型。
在本申请第一方面中,作为一种可选的实施方式,所述混合态特征包括软件的可执行文件大小、导入动态链接库的数量、汇编指令数量、每个section的大小、section内容的熵值、二进制字节的直方图、图案的压缩向量、可打印字符串的数量和平均长度以及字符的熵值、导入动态链接库序列、调用函数序列、字符串序列以及汇编指令序列中的至少一项。
在本申请第一方面中,作为一种可选的实施方式,所述提取所述样本时间序列中的混合态特征,并得到所述特征时间序列,包括:
使用n-gram算法提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
在本可选的实施方式中,通过n-gram算法能够提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
在本申请第一方面中,作为一种可选的实施方式,所述提取所述样本时间序列中的混合态特征,并得到所述特征时间序列,还包括:
根据卡方检验算法或移除低方差方法对所述特征时间序列进行筛选,以过滤所述特征时间序列中不存在关联关系的两个特征向量。
在本可选的实施方式中,通过卡方检验算法或移除低方差方法可对所述特征时间序列进行筛选,以过滤所述特征时间序列中不存在关联关系的两个特征向量。
在本申请第一方面中,作为一种可选的实施方式,所述预设神经网络为长短期记忆网络;以及,所述将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,包括:
将所述特征时间序列、所述预测目标特征序列输入至所述长短期记忆网络;
根据所述长短期记忆网络的输入层对所述特征时间序列进行预处理;
根据所述长短期记忆网络的隐藏层构建预处理后的所述特征时间序列与所述预测目标特征序列之间的映射关系并保存所述映射关系;
将保存有所述映射关系的所述长短期记忆网络作为所述变种检测模型。
在本可选的实施方式中,通过根据所述长短期记忆网络的输入层对所述特征时间序列进行预处理,可根据所述长短期记忆网络的隐藏层构建预处理后的所述特征时间序列与所述预测目标特征序列之间的映射关系并保存所述映射关系,进而能够将保存有所述映射关系的所述预设神经网络作为所述变种检测模型。
本申请第二方面提供一种恶意软件变种识别装置,所述装置包括:
第一获取模块,用于获取若干个恶意软件的属性数据的特征时间序列;
位移模块,用于根据预设时间步长对所述特征时间序列进行位移,得到预测目标特征序列;
训练模块,用于将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
第二获取模块,用于获取待识别软件的属性数据;
识别模块,用于根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型。
本申请第二方面的装置通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
本申请第三方面提供一种恶意软件变种识别设备,所述设备包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行本申请第一方面的恶意软件变种识别方法。
本申请第三方面的设备通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
本申请第四方面提供一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行本申请第一方面所述的恶意软件变种识别方法。
本申请第四方面的计算机存储介质通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种恶意软件变种识别方法的流程示意图;
图2是本申请实施例提供的一种长短期记忆网络的结构示意图;
图3为本申请实施例提供的一种恶意软件变种识别装置的结构示意图;
图4为本申请实施例提供的一种恶意软件变种识别设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一
请参阅图1,图1是本申请实施例提供的一种恶意软件变种识别方法的流程示意图。如图1所示,本申请实施例的方法包括步骤:
101、获取若干个恶意软件的属性数据的特征时间序列;
102、根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列;
103、将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
104、获取待识别软件的属性数据;
105、根据待识别软件的属性数据和变种检测模型识别待识别软件变种后的所属恶意软件类型。
本申请实施例的方法通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,能够得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
与现有技术相比,本申请实施能够通过时间序列分析预测变种的特征,进而能够训练智能化的变种检测模型,进而能够预测恶意软件可能出现的变种,进而能够预先部署检测恶意软件的变种,从而提高恶意软件变种后的类型检测精确度而遏制恶意软件发展。然而,现有技术中的恶意代码变种检测技术主要有两种,一种是基于特征匹配相似性的恶意代码变种检测方法,该方式是通过计算恶意代码及其变种之间的海明距离和余弦相似度,对恶意代码进行分析,进而将未知类型的恶意代码分析报告文本特征与已知类型的恶意代码分析报告文本特征进行比对,实现待测恶意代码快速归类,从而给出此恶意代码的类别,这种方法需要将未知的恶意代码与已知的多种类型一一匹配计算,进而具有计算量大的缺点,同时,如果已知的多种类型恶意代码中没有未知类型的恶意代码相似的代码,则未知类型的恶意代码的类型无法确定,因此该方式还具有恶意代码变种后的类型检测准确度低的缺点。
另一方面,现有技术中的另一种恶意代码变种检测技术为基于LSTM-CNN的恶意代码检测方法,该方法通过提取API调用序列作为程序行为数据,进而利用Word2vec模型对程序API调用序列进行向量化表征,并基于LSTM和CNN网络分别提取其语义信息及多维局部特征以实现恶意软件的检测。该方法没有考虑恶意软件变种,进而同样具有检测准确度低的缺点。
本申请实施例中,作为一种可选的实施方式,步骤101:获取若干个恶意软件的属性数据的特征时间序列,包括子步骤:
获取若干个样本数据,样本数据包括至少一个族群内的若干个恶意软件的属性数据;
根据若干个恶意软件的属性数据的时间先后顺序将若干个恶意软件的数据组成样本时间序列;
提取样本时间序列中的混合态特征,并得到特征时间序列。
在本可选的实施方式中,通过根据若干个恶意软件的属性数据的时间先后顺序将若干个恶意软件的数据组成样本时间序列,进而能够提取样本时间序列中的混合态特征,并得到特征时间序列。
在本申请实施例中,作为一种可选的实施方式中,步骤105:根据待识别软件的属性数据和变种检测模型识别待识别软件变种后的所属恶意软件类型,包括子步骤:
根据待识别软件的属性数据提取生成待识别软件的特征序列;
将待识别软件的特征序列输入到变种检测模型中,以使得变种检测模型输出预测变种特征;
根据预测变种特征确定待识别软件变种后的所属恶意软件类型。
在本可选的实施方式中,恶意软件可以是电子邮件蠕虫、特洛伊木马、恶意广告、监视工具中的一种软件。
示例性地,用S={s1,s2,...,sT}表示样本时间序列,则通过提取S={s1,s2,...,sT}中的混合态特征,可得到特征时间序列X:{xii∈[1,T]}。
进一步示例,以预设时间步长v为步长,对特征时间序列X进行位移,得到位移时间序列Y:{yjj∈[1,T-v],yj=xj+v}特征时间序列,进而可将位移时间序列Y:{yjj∈[1,T-v],yj=xj+v}作为预测目标特征序列。
在本申请实施例中,预设时间步长可根据样本数据的数量调整,本申请实施例对此不作限定。例如僵尸程序中的Sdbot家族,变种数量达几万个,可以设置v=100。
在本可选的实施方式中,通过根据待识别软件的属性数据能够提取生成待识别软件的特征序列,进而能够将待识别软件的特征序列输入到变种检测模型中,以使得变种检测模型输出预测变种特征,从而能够根据预测变种特征确定待识别软件变种后的所属恶意软件类型。
在本申请实施例中,作为一种可选的实施方式,混合态特征包括软件的可执行文件大小、导入动态链接库的数量、汇编指令数量、每个section的大小、section内容的熵值、二进制字节的直方图、图案的压缩向量、可打印字符串的数量和平均长度以及字符的熵值、导入动态链接库序列、调用函数序列、字符串序列以及汇编指令序列中的至少一项。
在本申请实施例中,作为一种可选的实施方式,步骤:提取样本时间序列中的混合态特征,并得到特征时间序列,包括子步骤:
使用n-gram算法提取样本时间序列中的混合态特征,并得到特征时间序列。
在本可选的实施方式中,通过n-gram算法能够提取样本时间序列中的混合态特征,并得到特征时间序列。
在本申请实施例中,作为一种可选的实施方式,提取样本时间序列中的混合态特征,并得到特征时间序列,还包括子步骤:
根据卡方检验算法或移除低方差方法对特征时间序列进行筛选,以过滤特征时间序列中不存在关联关系的两个特征向量。
在本可选的实施方式中,通过卡方检验算法或移除低方差方法可对特征时间序列进行筛选,以过滤特征时间序列中不存在关联关系的两个特征向量。
在本申请实施例中,作为一种可选的实施方式,预设神经网络为长短期记忆网络。
相应地,步骤103:将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,包括子步骤:
将特征时间序列、预测目标特征序列输入至长短期记忆网络;
根据长短期记忆网络的输入层对特征时间序列进行预处理;
根据长短期记忆网络的隐藏层构建预处理后的特征时间序列与预测目标特征序列之间的映射关系并保存映射关系;
将保存有映射关系的长短期记忆网络作为变种检测模型。
在本申请实施例中,如图2所示,图2是本申请实施例提供的一种长短期记忆网络的结构示意图。如图2所示,该长短期记忆网络包括输出层、隐藏层、输出层,其中,隐藏层由若干个LSTM神经单元构成。另一方面的,输入层和输出层均包括用于对数据进行标准化处理的函数和用于对数据进行归一化处理的函数,例如,本申请实施例中的根据长短期记忆网络的输入层对特征时间序列进行预处理包括根据长短期记忆网络的输入层对特征时间序列进行标准化处理和归一化处理。
在本申请实施例中,长短期记忆网络的隐藏层中的LSTM神经单元的数量可以根据样本数据的数量确定,对此本申请实施例不作限定。
需要说明的是,关于进行标准化处理的函数和进行归一化处理的函数请参阅现有技术,本申请实施例对此不作赘述。
在本可选的实施方式中,通过根据长短期记忆网络的输入层对特征时间序列进行预处理,可根据长短期记忆网络的隐藏层构建预处理后的特征时间序列与预测目标特征序列之间的映射关系并保存映射关系,进而能够将保存有映射关系的预设神经网络作为变种检测模型。
实施例二
请参阅图3,图3是本申请实施例提供的一种恶意软件变种识别装置的结构示意图。如图3所示,本申请实施例的装置包括:
第一获取模块201,用于获取若干个恶意软件的属性数据的特征时间序列;
位移模块202,用于根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列;
训练模块203,用于将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
第二获取模块204,用于获取待识别软件的属性数据;
识别模块205,用于根据待识别软件的属性数据和变种检测模型识别待识别软件变种后的所属恶意软件类型。
本申请实施例的装置通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
本申请实施例中,作为一种可选的实施方式,第一获取模块201执行获取若干个恶意软件的属性数据的特征时间序列的具体方式为:
获取若干个样本数据,样本数据包括至少一个族群内的若干个恶意软件的属性数据;
根据若干个恶意软件的属性数据的时间先后顺序将若干个恶意软件的数据组成样本时间序列;
提取样本时间序列中的混合态特征,并得到特征时间序列。
在本可选的实施方式中,通过根据若干个恶意软件的属性数据的时间先后顺序将若干个恶意软件的数据组成样本时间序列,进而能够提取样本时间序列中的混合态特征,并得到特征时间序列。
在本申请实施例中,作为一种可选的实施方式中,识别模块205执行根据待识别软件的属性数据和变种检测模型识别待识别软件变种后的所属恶意软件类型的具体方式为:
根据待识别软件的属性数据提取生成待识别软件的特征序列;
将待识别软件的特征序列输入到变种检测模型中,以使得变种检测模型输出预测变种特征;
根据预测变种特征确定待识别软件变种后的所属恶意软件类型。
在本可选的实施方式中,恶意软件可以是电子邮件蠕虫、特洛伊木马、恶意广告、监视工具中的一种软件。
示例性地,用S={s1,s2,...,sT}表示样本时间序列,则通过提取S={s1,s2,...,sT}中的混合态特征,可得到特征时间序列X:{xi|i∈[1,T]}。
进一步示例,以预设时间步长v为步长,对特征时间序列X进行位移,得到位移时间序列Y:{yjj∈[1,T-v],yj=xj+v}特征时间序列,进而可将位移时间序列Y:{yjj∈[1,T-v],yj=xj+v}作为预测目标特征序列。
在本申请实施例中,预设时间步长可根据样本数据的数量调整,本申请实施例对此不作限定。例如僵尸程序中的Sdbot家族,变种数量达几万个,可以设置v=100。
在本可选的实施方式中,通过根据待识别软件的属性数据能够提取生成待识别软件的特征序列,进而能够将待识别软件的特征序列输入到变种检测模型中,以使得变种检测模型输出预测变种特征,从而能够根据预测变种特征确定待识别软件变种后的所属恶意软件类型。
在本申请实施例中,作为一种可选的实施方式,混合态特征包括软件的可执行文件大小、导入动态链接库的数量、汇编指令数量、每个section的大小、section内容的熵值、二进制字节的直方图、图案的压缩向量、可打印字符串的数量和平均长度以及字符的熵值、导入动态链接库序列、调用函数序列、字符串序列以及汇编指令序列中的至少一项。
在本申请实施例中,作为一种可选的实施方式,提取样本时间序列中的混合态特征,并得到特征时间序列,包括子步骤:
使用n-gram算法提取样本时间序列中的混合态特征,并得到特征时间序列。
在本可选的实施方式中,通过n-gram算法能够提取样本时间序列中的混合态特征,并得到特征时间序列。
在本申请实施例中,作为一种可选的实施方式,第一获取模块201执行提取样本时间序列中的混合态特征,并得到特征时间序列的具体方式为:
根据卡方检验算法或移除低方差方法对特征时间序列进行筛选,以过滤特征时间序列中不存在关联关系的两个特征向量。
在本可选的实施方式中,通过卡方检验算法或移除低方差方法可对特征时间序列进行筛选,以过滤特征时间序列中不存在关联关系的两个特征向量。
在本申请实施例中,作为一种可选的实施方式,预设神经网络为长短期记忆网络。
相应地,训练模块203执行将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型的具体方式为:
将特征时间序列、预测目标特征序列输入至长短期记忆网络;
根据长短期记忆网络的输入层对特征时间序列进行预处理;
根据长短期记忆网络的隐藏层构建预处理后的特征时间序列与预测目标特征序列之间的映射关系并保存映射关系;
将保存有映射关系的长短期记忆网络作为变种检测模型。
在本申请实施例中,如图2所示,图2是本申请实施例提供的一种长短期记忆网络的结构示意图。如图2所示,该长短期记忆网络包括输出层、隐藏层、输出层,其中,隐藏层由若干个LSTM神经单元构成。另一方面的,输入层和输出层均包括用于对数据进行标准化处理的函数和用于对数据进行归一化处理的函数,例如,本申请实施例中的根据长短期记忆网络的输入层对特征时间序列进行预处理包括根据长短期记忆网络的输入层对特征时间序列进行标准化处理和归一化处理。
在本申请实施例中,长短期记忆网络的隐藏层中的LSTM神经单元的数量可以根据样本数据的数量确定,对此本申请实施例不作限定。
需要说明的是,关于进行标准化处理的函数和进行归一化处理的函数请参阅现有技术,本申请实施例对此不作赘述。
在本可选的实施方式中,通过根据长短期记忆网络的输入层对特征时间序列进行预处理,可根据长短期记忆网络的隐藏层构建预处理后的特征时间序列与预测目标特征序列之间的映射关系并保存映射关系,进而能够将保存有映射关系的预设神经网络作为变种检测模型。
实施例三
请参阅图4,图4是本申请实施例提供的一种恶意软件变种识别设备的结构示意图。如图4所示,本申请实施例的设备包括:
处理器301;以及
存储器302,配置用于存储机器可读指令,指令在由处理器301执行时,使得处理器301执行本申请实施例一的恶意软件变种识别方法。
本申请实施例的设备通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
实施例四
本申请实施例提供一种计算机存储介质,该计算机存储介质存储有计算机程序,计算机程序被处理器执行本申请实施例一的恶意软件变种识别方法。
本申请实施例的计算机存储介质通过执行恶意软件变种识别方法,能够通过获取若干个恶意软件的属性数据的特征时间序列并根据预设时间步长对特征时间序列进行位移,得到预测目标特征序列,进而将特征时间序列、预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,进而能够根据变种检测模型和待识别软件的属性数据和识别待识别软件变种后的所属恶意软件类型。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种恶意软件变种识别方法,其特征在于,所述方法包括:
获取若干个恶意软件的属性数据的特征时间序列;
根据预设时间步长对所述特征时间序列进行位移,得到预测目标特征序列;
将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
获取待识别软件的属性数据;
根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型。
2.如权利要求1所述的恶意软件变种识别方法,其特征在于,所述获取若干个恶意软件的属性数据的特征时间序列,包括:
获取若干个样本数据,所述样本数据包括至少一个族群内的所述若干个恶意软件的属性数据;
根据所述若干个恶意软件的属性数据的时间先后顺序将所述若干个恶意软件的所述数据组成样本时间序列;
提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
3.如权利要求2所述的恶意软件变种识别方法,其特征在于,所述根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型,包括:
根据所述待识别软件的属性数据提取生成所述待识别软件的特征序列;
将所述待识别软件的特征序列输入到所述变种检测模型中,以使得所述变种检测模型输出预测变种特征;
根据所述预测变种特征确定所述待识别软件变种后的所属恶意软件类型。
4.如权利要求2所述的恶意软件变种识别方法,其特征在于,所述混合态特征包括软件的可执行文件大小、导入动态链接库的数量、汇编指令数量、每个section的大小、section内容的熵值、二进制字节的直方图、图案的压缩向量、可打印字符串的数量和平均长度以及字符的熵值、导入动态链接库序列、调用函数序列、字符串序列以及汇编指令序列中的至少一项。
5.如权利要求4所述的恶意软件变种识别方法,其特征在于,所述提取所述样本时间序列中的混合态特征,并得到所述特征时间序列,包括:
使用n-gram算法提取所述样本时间序列中的混合态特征,并得到所述特征时间序列。
6.如权利要求5所述的恶意软件变种识别方法,其特征在于,所述提取所述样本时间序列中的混合态特征,并得到所述特征时间序列,还包括:
根据卡方检验算法或移除低方差方法对所述特征时间序列进行筛选,以过滤所述特征时间序列中不存在关联关系的两个特征向量。
7.如权利要求1所述的恶意软件变种识别方法,其特征在于,所述预设神经网络为长短期记忆网络;
以及,所述将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型,包括:
将所述特征时间序列、所述预测目标特征序列输入至所述长短期记忆网络;
根据所述长短期记忆网络的输入层对所述特征时间序列进行预处理;
根据所述长短期记忆网络的隐藏层构建预处理后的所述特征时间序列与所述预测目标特征序列之间的映射关系并保存所述映射关系;
将保存有所述映射关系的所述长短期记忆网络作为所述变种检测模型。
8.一种恶意软件变种识别装置,其特征在于,所述装置包括:
第一获取模块,用于获取若干个恶意软件的属性数据的特征时间序列;
位移模块,用于根据预设时间步长对所述特征时间序列进行位移,得到预测目标特征序列;
训练模块,用于将所述特征时间序列、所述预测目标特征序列作为训练样本,以训练预设神经网络并得到变种检测模型;
第二获取模块,用于获取待识别软件的属性数据;
识别模块,用于根据待识别软件的属性数据和所述变种检测模型识别所述待识别软件变种后的所属恶意软件类型。
9.一种恶意软件变种识别设备,其特征在于,所述设备包括:
处理器;以及
存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的恶意软件变种识别方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行如权利要求1-7任一项所述的恶意软件变种识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011029067.XA CN112163217B (zh) | 2020-09-25 | 2020-09-25 | 恶意软件变种识别方法、装置、设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011029067.XA CN112163217B (zh) | 2020-09-25 | 2020-09-25 | 恶意软件变种识别方法、装置、设备及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112163217A true CN112163217A (zh) | 2021-01-01 |
CN112163217B CN112163217B (zh) | 2023-10-13 |
Family
ID=73862985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011029067.XA Active CN112163217B (zh) | 2020-09-25 | 2020-09-25 | 恶意软件变种识别方法、装置、设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112163217B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139187A (zh) * | 2021-04-22 | 2021-07-20 | 北京启明星辰信息安全技术有限公司 | 一种预训练语言模型的生成、检测方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170083703A1 (en) * | 2015-09-22 | 2017-03-23 | Fireeye, Inc. | Leveraging behavior-based rules for malware family classification |
CN108647518A (zh) * | 2018-03-16 | 2018-10-12 | 广东工业大学 | 一种基于深度学习的Android平台恶意软件检测方法 |
CN109886021A (zh) * | 2019-02-19 | 2019-06-14 | 北京工业大学 | 一种基于api全局词向量和分层循环神经网络的恶意代码检测方法 |
CN109992968A (zh) * | 2019-03-25 | 2019-07-09 | 北京理工大学 | 基于二进制动态插桩的Android恶意行为动态检测方法 |
CN111062036A (zh) * | 2019-11-29 | 2020-04-24 | 暨南大学 | 恶意软件识别模型构建、识别方法及介质和设备 |
CN111259397A (zh) * | 2020-02-12 | 2020-06-09 | 四川大学 | 一种基于马尔科夫图和深度学习的恶意软件分类方法 |
CN111523117A (zh) * | 2020-04-10 | 2020-08-11 | 西安电子科技大学 | 一种安卓恶意软件检测和恶意代码定位系统及方法 |
-
2020
- 2020-09-25 CN CN202011029067.XA patent/CN112163217B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170083703A1 (en) * | 2015-09-22 | 2017-03-23 | Fireeye, Inc. | Leveraging behavior-based rules for malware family classification |
CN108647518A (zh) * | 2018-03-16 | 2018-10-12 | 广东工业大学 | 一种基于深度学习的Android平台恶意软件检测方法 |
CN109886021A (zh) * | 2019-02-19 | 2019-06-14 | 北京工业大学 | 一种基于api全局词向量和分层循环神经网络的恶意代码检测方法 |
CN109992968A (zh) * | 2019-03-25 | 2019-07-09 | 北京理工大学 | 基于二进制动态插桩的Android恶意行为动态检测方法 |
CN111062036A (zh) * | 2019-11-29 | 2020-04-24 | 暨南大学 | 恶意软件识别模型构建、识别方法及介质和设备 |
CN111259397A (zh) * | 2020-02-12 | 2020-06-09 | 四川大学 | 一种基于马尔科夫图和深度学习的恶意软件分类方法 |
CN111523117A (zh) * | 2020-04-10 | 2020-08-11 | 西安电子科技大学 | 一种安卓恶意软件检测和恶意代码定位系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139187A (zh) * | 2021-04-22 | 2021-07-20 | 北京启明星辰信息安全技术有限公司 | 一种预训练语言模型的生成、检测方法及装置 |
CN113139187B (zh) * | 2021-04-22 | 2023-12-19 | 北京启明星辰信息安全技术有限公司 | 一种预训练语言模型的生成、检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112163217B (zh) | 2023-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107908963B (zh) | 一种自动化检测恶意代码核心特征的方法 | |
US20210256127A1 (en) | System and method for automated machine-learning, zero-day malware detection | |
CN109784056B (zh) | 一种基于深度学习的恶意软件检测方法 | |
CN111027069B (zh) | 恶意软件家族检测方法、存储介质和计算设备 | |
CN111639337B (zh) | 一种面向海量Windows软件的未知恶意代码检测方法及系统 | |
CN107315956B (zh) | 一种用于快速准确检测零日恶意软件的图论方法 | |
CN105718795B (zh) | Linux下基于特征码的恶意代码取证方法及系统 | |
CN111723371A (zh) | 构建恶意文件的检测模型以及检测恶意文件的方法 | |
WO2022180613A1 (en) | Global iterative clustering algorithm to model entities' behaviors and detect anomalies | |
CN110362995A (zh) | 一种基于逆向与机器学习的恶意软件检测及分析系统 | |
CN115658080A (zh) | 一种软件开源代码成分的识别方法及系统 | |
CN112487422B (zh) | 一种恶意文档检测方法、装置、电子设备及存储介质 | |
CN108229168B (zh) | 一种嵌套类文件的启发式检测方法、系统及存储介质 | |
CN108171057B (zh) | 基于特征匹配的Android平台恶意软件检测方法 | |
CN112163217B (zh) | 恶意软件变种识别方法、装置、设备及计算机存储介质 | |
KR102246405B1 (ko) | Tf-idf 기반 벡터 변환 및 데이터 분석 장치 및 방법 | |
CN112380537A (zh) | 一种检测恶意软件的方法、装置、存储介质和电子设备 | |
CN111797395A (zh) | 恶意代码可视化及变种检测方法、装置、设备及存储介质 | |
CN111353109A (zh) | 一种恶意域名的识别方法及系统 | |
CN113688240B (zh) | 威胁要素提取方法、装置、设备及存储介质 | |
Bakhshinejad et al. | A new compression based method for android malware detection using opcodes | |
CN114491528A (zh) | 恶意软件的检测方法、装置和设备 | |
CN114579965A (zh) | 一种恶意代码的检测方法、装置及计算机可读存储介质 | |
CN112597498A (zh) | 一种webshell的检测方法、系统、装置及可读存储介质 | |
CN114676428A (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 |