发明内容
鉴于以上内容,本发明提供一种恶意软件的识别方法、装置、设备及存储介质,其目的在于解决现有技术中识别恶意软件的准确性不高的技术问题。
为实现上述目的,本发明提供一种恶意软件的识别方法,该方法包括:
从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
优选的,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:
利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;
统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;
利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
优选的,所述分别提取各所述目标时间序列数据的特征信息,包括:
基于离散小波滤波器组对各所述目标时间序列数据的时域信息进行频域分解,得到多个不同频段的时序子带信号;
对每个时序子带信号进行特征提取,得到各所述目标时间序列数据的特征信息。
优选的,所述第一识别模型及所述第二识别模型的训练过程,包括:
将所述样本集按照预设比例分成训练集及验证集;
利用所述训练集中的各特性信息及各预设标签对卷积神经网络模型进行训练,每隔预设周期利用所述验证集中各特性信息及各预设标签,对卷积神经网络模型及循环神经网络模型的准确率进行验证;及
当验所述准确率大于预设阈值时结束训练,得到所述第一识别模型及所述第二识别模型。
优选的,所述基于所述样本集训练预设的神经网络模型得到第三识别模型,包括:
将所述样本集中的目标时间序列数据及预设标签输入至长短期记忆神经网络;
根据长短期记忆神经网络的输入层对目标时间序列数据进行预处理;
根据长短期记忆神经网络的隐藏层构建预处理后的目标时间序列数据与预设标签之间的映射关系,并保存该映射关系;
将保存有所述映射关系的长短期记忆神经网络作为所述第三识别模型。
优选的,所述基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果包括:
当第一识别结果、第二识别结果及第三识别结果中任意两个识别结果为第一类型软件,则将第一类型软件作为所述目标识别结果;
当第一识别结果、第二识别结果及第三识别结果中仅有一个或者无识别结果为第一类型软件,则判断所述待识别软件为第二类型软件;
当判断所述待识别软件为第二类型软件,且第一识别结果、第二识别结果及第三识别结果均不相同时,判断所述待识别软件为第三类型软件,其中,所述第三类型软件属于所述第二类型软件。
优选的,所述方法还包括:
将所述目标识别结果反馈至所述待识别软件对应的终端,并向所述终端发送预设的提示信息。
为实现上述目的,本发明还提供一种恶意软件的识别装置,该恶意软件的识别装置包括:
获取模块:用于从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
拼接模块:用于根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
训练模块:用于分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
识别模块:用于将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
为实现上述目的,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的程序,所述程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的恶意软件的识别方法的任意步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有恶意软件的识别程序,所述恶意软件的识别程序被处理器执行时,实现如上所述恶意软件的识别方法的任意步骤。
本发明提出的恶意软件的识别方法、装置、设备及存储介质,通过对各种类型的软件的行为属性数据作为时间序列样本数据,训练得到三个不同的识别模型,通过三个识别模型对软件的行为信息进行识别,并根据各识别模型的识别结果综合判断软件是否为恶意软件,可以避免因恶意软件进行二次开发或加壳后被误识别为正常软件的情况,从而提高识别恶意软件的准确性。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种恶意软件的识别方法。参照图1所示,为本发明恶意软件的识别方法的实施例的方法流程示意图。该方法可以由一个电子设备执行,该电子设备可以由软件和/或硬件实现。恶意软件的识别方法包括:
步骤S10:从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签。
在本实施例中,预先确定的数据源可以是本地数据库或第三方数据库存储的多种类型软件的日志文件,日志文件记录了多种类型软件的行为属性数据,软件的行为属性数据包括但不限于:网络传输信息、注册表信息、进程信息、调用操作系统的接口信息、调用的动态链接库及文件读写信息。其中,网络传输信息包括tls、udp、tcp、http、https、smtp、dns、domain中的目标IP,注册表信息包含读取和打开的注册表条目,调用操作系统的接口信息包括调用的接口名称和调用接口的时间,进程信息包括进程ID及对应的父进程ID。
软件的类型包括正常软件、挖矿软件、蠕虫软件、木马软件、勒索软件、广告软件、间谍软件,获取多种类型软件的行为属性数据之后,根据软件的类型为该类型的软件标注对应的标签。
步骤S20:根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据。
在本实施例中,获取到多种类型软件的行为属性数据之后,根据时间先后顺序将行为属性数据拼接成初始时间序列数据,由于行为数属性数据可能存在无效数据或重复的数据,在一个实施例中,在拼接成初始时间序列数据之前还可以对行为属性数据进行清洗。
之后,对初始时间序列数据执行相关的预处理操作,额外增加相关的行为数据,以提高后续模型识别的准确性。预处理可以是对拼接成的初始时间序列数据执行分隔、统计及正则替换操作得到目标时间序列数据。
在一个实施例中,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:
A、利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;
具体地,可以根据过滤驱动、hook等方式提取初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息,例如,通过sysmon或procmon等软件提取,将提取到的网络传输信息、注册表信息、进程信息、动态链接库信息整合到一个文本文件,并以特殊符号分隔(\01),在转换为特征的前以\01进行分词,用于处理带空格的文件或程序名,因为完整的路径才有实际的意义。
B、统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;
由于预定数据源获取的软件的行为属性数据中还包括每种行为的发生次数,因此可以直接统计初始时间序列数据中各行为的发生次数,例如,统计以下行为的发生次数:网络请求数、请求目标地址黑名单IP数、黑名单IP占比、注册表打开数和访问数、白名单注册表访问数和打开数、以及白名单注册表访问占比和打开占比。将发生次数也作为模型的输入,将行为与行为的发生次数进行关联,提高后续模型识别的准确性。
C、利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
删除行为程序中十六进制的表达,并将相关的地址表达从初始时间序列数据中移除,十六进制的表达基本都是地址,与行为无明显关联性。预设的正则表达式可以包括:“0x[a-f0-9]{8}”、“0x[a-f0-9]{16}”。
步骤S30:分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型。
在本实施例中,提取特征信息可以是根据n-gram算法提取目标时间序列数据中的特征信息,或者根据卡方检验算法对目标时间序列数据进行筛选,以过滤目标时间序列数据中没有关联关系的特征向量,之后,根据目标时间序列数据的特性信息及预设标签生成训练模型的样本集,其中,预设的神经网络模型集包括卷积神经网络、循环神经网络及长短期记忆神经网络,第一识别模型可以是根据卷积神经网络训练得到的,第二识别模型可以是根据循环神经网络训练得到的,第三识别模型可以是根据长短期记忆神经网络训练得到的。卷积神经网络没有时序性的概念,其是将样本中的时序特征作为一个整体,进行识别。循环神经网络具有时序性的概念,其能将时序数据中每种行为关联起来进行识别,但时序数据如果较长的话,循环神经网络的识别效果并不理想,而长短期记忆神经网络识别较长有的时序数据时也有较好的识别效果。因此,本方案利用三个模型对待识别软件进行识别。
在一个实施例中,所述分别提取各所述目标时间序列数据的特征信息,包括:
基于离散小波滤波器组对各所述目标时间序列数据的时域信息进行频域分解,得到多个不同频段的时序子带信号;
对每个时序子带信号进行特征提取,得到各所述目标时间序列数据的特征信息。
由于每个时序子带信号对应不同的频段,通过对每个频段的时序子带信号进行特征提取,可以提取目标时间序列数据在不同细分频段的特征,从而获得时间序列数据的更多特征,提高后续模型预测的准确性。
在一个实施例中,所述基于所述样本集训练预设的神经网络模型得到第一识别模型,包括:
将所述样本集按照预设比例(例如,4:1)分成训练集及验证集;
利用所述训练集中的各特性信息及各预设标签对卷积神经网络模型进行训练,每隔预设周期(例如:每进行1000次迭代)利用所述验证集中各所述变量及各所述因变量对卷积神经网络模型的准确率进行验证;及
当验所述准确率大于预设阈值(例如,90%)时结束训练,得到所述第一识别模型。
第二识别模型的训练过程与第一识别模型的训练过程大致相同,在此不在赘述。
在一个实施例中,所述基于所述样本集训练预设的神经网络模型得到第三识别模型,包括:
将所述样本集中的目标时间序列数据及预设标签输入至长短期记忆神经网络;
根据长短期记忆神经网络的输入层对目标时间序列数据进行预处理;
根据长短期记忆神经网络的隐藏层构建预处理后的目标时间序列数据与预设标签之间的映射关系,并保存该映射关系;
将保存有所述映射关系的长短期记忆神经网络作为所述第三识别模型。
长短期记忆神经网络模型是通过在普通多层前馈神经网络基础上,增加了隐藏层各单元间的横向联系,通过权重矩阵,将上一个时间序列的神经单元的值传递至当前的神经单元,从而使神经网络具备了记忆功能,此外在隐藏层各神经单元中增加记忆单元,从而使时间序列上的记忆信息可控,每次在隐藏层各单元间传递时通过几个可控门(遗忘门、输入门、输出门),可以控制之前信息和当前信息的记忆和遗忘程度,从而使网络具备了长期记忆功能。
步骤S40:将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
在本实施例中,当接收到用户发出识别软件是否为恶意软件的识别请求时,获取待识别软件的行为属性数据,请求中可以包括待识别软件的行为属性数据,也可以包括待识别软件的行为属性数据的存储路径及标识。也就是说,待识别软件的行为属性数据可以是用户在提交请求时一并录入的,也可以是在用户提交识别软件是否为恶意软件的请求之后,从请求中指定的地址中获取的。
之后,根据时间先后顺序分别将待识别软件的行为属性数据拼接成初始时间序列数据,对该初始时间序列数据执行分隔、统计及正则替换操作得到待识别软件的目标时间序列数据,提取出待识别软件的目标时间序列数据的特征信息,将该特征信息分别输入第一、第二及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,根据三个识别结果及预设判断规则得到待识别软件的目标识别结果,例如,将相同的两个识别结果作为目标识别结果,当三个识别结果均不相同时,选取第三识别结果作为目标识别结果。
在一个实施例中,所述基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果包括:
当第一识别结果、第二识别结果及第三识别结果中任意两个识别结果为第一类型软件,则将第一类型软件作为所述目标识别结果;
当第一识别结果、第二识别结果及第三识别结果中仅有一个或者无识别结果为第一类型软件,则判断所述待识别软件为第二类型软件;
当判断所述待识别软件为第二类型软件,且第一识别结果、第二识别结果及第三识别结果均不相同时,判断所述待识别软件为第三类型软件,其中,所述第三类型软件属于所述第二类型软件。
第一类型软件为正常软件,第二类型软件为恶意软件,第三类型软件为混合型恶意软件,当第一、第二及第三识别结果中任意两个识别结果为正常软件时,则判断待识别软件为正常软件,当第一、第二及第三识别结果中仅有一个或者无识别结果为正常软件时,则判断待识别软件为恶意软件,当判断待识别软件为恶意软件,且三个识别结果均不相同时,则判断待识别软件为混合型恶意软件。
在一个实施例中,所述方法还包括:
将所述目标识别结果反馈至所述待识别软件对应的终端,并向所述终端发送预设的提示信息。
将待识别软件的识别结果反馈至预设终端以提示用户待识别软件的软件类型,例如,提示信息可以是“该软件可能是恶意软件”。
参照图2所示,为本发明恶意软件的识别装置100的功能模块示意图。
本发明所述恶意软件的识别装置100可以安装于电子设备中。根据实现的功能,所述恶意软件的识别装置100可以包括获取模块110、拼接模块120、训练模块130及识别模块140。本发所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
获取模块110,用于从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签。
拼接模块120,用于根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据。
训练模块130:用于分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型。
识别模块140,用于将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
在一个实施例中,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:
利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;
统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;
利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
在一个实施例中,所述分别提取各所述目标时间序列数据的特征信息,包括:
基于离散小波滤波器组对各所述目标时间序列数据的时域信息进行频域分解,得到多个不同频段的时序子带信号;
对每个时序子带信号进行特征提取,得到各所述目标时间序列数据的特征信息。
在一个实施例中,所述第一识别模型及所述第二识别模型的训练过程,包括:
将所述样本集按照预设比例分成训练集及验证集;
利用所述训练集中的各特性信息及各预设标签对卷积神经网络模型进行训练,每隔预设周期利用所述验证集中各特性信息及各预设标签,对卷积神经网络模型及循环神经网络模型的准确率进行验证;及
当验所述准确率大于预设阈值时结束训练,得到所述第一识别模型及所述第二识别模型。
在一个实施例中,所述基于所述样本集训练预设的神经网络模型得到第三识别模型,包括:
将所述样本集中的目标时间序列数据及预设标签输入至长短期记忆神经网络;
根据长短期记忆神经网络的输入层对目标时间序列数据进行预处理;
根据长短期记忆神经网络的隐藏层构建预处理后的目标时间序列数据与预设标签之间的映射关系,并保存该映射关系;
将保存有所述映射关系的长短期记忆神经网络作为所述第三识别模型。
在一个实施例中,所述基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果包括:
当第一识别结果、第二识别结果及第三识别结果中任意两个识别结果为第一类型软件,则将第一类型软件作为所述目标识别结果;
当第一识别结果、第二识别结果及第三识别结果中仅有一个或者无识别结果为第一类型软件,则判断所述待识别软件为第二类型软件;
当判断所述待识别软件为第二类型软件,且第一识别结果、第二识别结果及第三识别结果均不相同时,判断所述待识别软件为第三类型软件,其中,所述第三类型软件属于所述第二类型软件。
在一个实施例中,所述识别模块140还用于:
将所述目标识别结果反馈至所述待识别软件对应的终端,并向所述终端发送预设的提示信息。
参照图3所示,为本发明电子设备1较佳实施例的示意图。
该电子设备1包括但不限于:存储器11、处理器12、显示器13及网络接口14。所述电子设备1通过网络接口14连接网络,获取原始数据。其中,所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobilecommunication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述电子设备1的内部存储单元,例如该电子设备1的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述电子设备1的外部存储设备,例如该电子设备1配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述电子设备1的内部存储单元也包括其外部存储设备。本实施例中,存储器11通常用于存储安装于所述电子设备1的操作系统和各类应用软件,例如恶意软件的识别程序10的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子设备1的总体操作,例如执行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行恶意软件的识别程序10的程序代码等。
显示器13可以称为显示屏或显示单元。在一些实施例中显示器13可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-EmittingDiode,OLED)触摸器等。显示器13用于显示在电子设备1中处理的信息以及用于显示可视化的工作界面,例如显示数据统计的结果。
网络接口14可选地可以包括标准的有线接口、无线接口(如WI-FI接口),该网络接口14通常用于在所述电子设备1与其它电子设备之间建立通信连接。
图3仅示出了具有组件11-14以及恶意软件的识别程序10的电子设备1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
可选地,所述电子设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
该电子设备1还可以包括射频(Radio Frequency,RF)电路、传感器和音频电路等等,在此不再赘述。
在上述实施例中,处理器12执行存储器11中存储的恶意软件的识别程序10时可以实现如下步骤:
从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
所述存储设备可以为电子设备1的存储器11,也可以为与电子设备1通讯连接的其它存储设备。
关于上述步骤的详细介绍,请参照上述图2关于恶意软件的识别装置100实施例的功能模块图以及图1关于恶意软件的识别方法实施例的流程图的说明。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性的,也可以是易失性的。该计算机可读存储介质可以是硬盘、多媒体卡、SD卡、闪存卡、SMC、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器等等中的任意一种或者几种的任意组合。所述计算机可读存储介质中包括存储数据区和存储程序区,存储数据区存储根据区块链节点的使用所创建的数据,存储程序区存储有恶意软件的识别程序10,所述恶意软件的识别程序10被处理器执行时实现如下操作:
从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
本发明之计算机可读存储介质的具体实施方式与上述恶意软件的识别方法的具体实施方式大致相同,在此不再赘述。
在另一个实施例中,本发明所提供的恶意软件的识别方法,为进一步保证上述所有出现的数据的私密和安全性,上述所有数据还可以存储于一区块链的节点中。例如行为属性数据及特征信息等,这些数据均可存储在区块链节点中。
需要说明的是,本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,电子装置,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。