恶意软件作者识别方法、设备、存储介质及装置与流程

文档序号:20919001发布日期:2020-05-29 13:53阅读:246来源:国知局
恶意软件作者识别方法、设备、存储介质及装置与流程

本发明涉及自动化技术领域,尤其涉及一种恶意软件作者识别方法、设备、存储介质及装置。



背景技术:

目前,对于恶意软件及恶意软件作者的识别,基于样本进行识别,比如,900万样本/天,匹配恶意软件符合的静态规则,从而根据匹配情况,识别出恶意软件作者(也可称为黑客)、灰客和白客,所述灰客是怀疑对象,可能是恶意软件作者,也可能不是,需要进一步判断,再获取行为规则,根据行为规则判断是普通木马、高级木马还是正常程序。将基于静态规则的分析结果结合基于行为规则的分析结果,进行人工关联分析,再获取历史版本的恶意软件作者信息,进行特征提取,分析语言、工作时间和回传控制网际协议(internetprotocol,简写ip),再进一步识别是国内黑客还是境外组织。但是,基于大量样本的识别过程复杂,导致恶意软件作者的识别效率低。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供一种恶意软件作者识别方法、设备、存储介质及装置,旨在解决现有技术中恶意软件作者的识别效率低的技术问题。

为实现上述目的,本发明提供一种恶意软件作者识别方法,所述恶意软件作者识别方法包括以下步骤:

获取待识别用户的用户终端的运行信息;

根据所述运行信息获取所述待识别用户的目标运行特征;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

优选地,所述目标运行特征包括:静态运行特征和动态运行特征。

优选地,所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项。

优选地,所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取新测试样本;

判断所述新测试样本是否为恶意软件;

在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取ip地址;

判断所述ip地址是否为境外ip地址;

在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

优选地,所述根据所述运行信息获取ip地址,具体包括:

根据所述运行信息获取所述用户终端的mac地址;

根据所述mac地址查找对应的ip地址。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取可执行文件;

获取所述可执行文件在所述用户终端的存储位置;

判断所述存储位置是否为预设位置;

在所述存储位置是所述预设位置时,将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

对所述运行信息进行分词处理,获得所述运行信息对应的词语;

获取预设恶意关键词集合,将所述预设恶意关键词集合中的恶意关键词与所述词语分别进行匹配;

若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息,获取所述用户终端的系统语言;

判断所述系统语言是否为预设系统语言;

在所述系统语言是预设系统语言时,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;

若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;

若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

优选地,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息,判断是否存在多次执行的同名可执行文件;

若存在多次执行的同名可执行文件,则从cookie中获取所述同名可执行文件的文件内容;

计算所述文件内容的变换频率;

判断所述变换频率是否超过预设变换阈值;

在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

优选地,所述将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,具体包括:

获取所述目标运行特征对应的特征权重;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;

根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

优选地,所述获取所述目标运行特征对应的特征权重,具体包括:

获取样本恶意软件作者的样本运行特征;

根据样本运行特征统计所述目标运行特征的出现频率;

根据所述出现频率设置所述目标运行特征对应的特征权重。

此外,为实现上述目的,本发明还提出一种恶意软件作者识别设备,所述恶意软件作者识别设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的恶意软件作者识别程序,所述恶意软件作者识别程序配置为实现如上文所述的恶意软件作者识别方法的步骤。

此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有恶意软件作者识别程序,所述恶意软件作者识别程序被处理器执行时实现如上文所述的恶意软件作者识别方法的步骤。

此外,为实现上述目的,本发明还提出一种恶意软件作者识别装置,所述恶意软件作者识别装置包括:

获取模块,用于获取待识别用户的用户终端的运行信息;

所述获取模块,还用于根据所述运行信息获取所述待识别用户的目标运行特征;

匹配模块,用于将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

识别模块,用于在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

优选地,所述获取模块,还用于根据所述运行信息获取新测试样本;判断所述新测试样本是否为恶意软件;在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

优选地,所述获取模块,还用于根据所述运行信息获取ip地址;判断所述ip地址是否为境外ip地址;在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

优选地,所述获取模块,还用于根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

本发明中,通过获取待识别用户的用户终端的运行信息,根据所述运行信息获取所述待识别用户的目标运行特征,基于运行特征能够快速识别恶意软件作者,无需进行大量恶意软件的样本分析;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者,提高恶意软件作者的识别效率。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的恶意软件作者识别设备的结构示意图;

图2为本发明恶意软件作者识别方法第一实施例的流程示意图;

图3为本发明恶意软件作者识别方法第二实施例的流程示意图;

图4为本发明恶意软件作者识别方法第三实施例的流程示意图;

图5为本发明恶意软件作者识别装置第一实施例的结构框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1,图1为本发明实施例方案涉及的硬件运行环境的恶意软件作者识别设备结构示意图。

如图1所示,该恶意软件作者识别设备可以包括:处理器1001,例如中央处理器(centralprocessingunit,cpu),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display),可选用户接口1003还可以包括标准的有线接口、无线接口,对于用户接口1003的有线接口在本发明中可为usb接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(wireless-fidelity,wi-fi)接口)。存储器1005可以是高速的随机存取存储器(randomaccessmemory,ram)存储器,也可以是稳定的存储器(non-volatilememory,nvm),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的结构并不构成对恶意软件作者识别设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及恶意软件作者识别程序。

在图1所示的恶意软件作者识别设备中,网络接口1004主要用于连接后台服务器,与所述后台服务器进行数据通信;用户接口1003主要用于连接用户设备;所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,并执行本发明实施例提供的恶意软件作者识别方法。

所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,并执行以下操作:

获取待识别用户的用户终端的运行信息;

根据所述运行信息获取所述待识别用户的目标运行特征;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息获取新测试样本;

判断所述新测试样本是否为恶意软件;

在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息获取ip地址;

判断所述ip地址是否为境外ip地址;

在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息获取所述用户终端的mac地址;

根据所述mac地址查找对应的ip地址。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息获取可执行文件;

获取所述可执行文件在所述用户终端的存储位置;

判断所述存储位置是否为预设位置;

在所述存储位置是所述预设位置时,将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

对所述运行信息进行分词处理,获得所述运行信息对应的词语;

获取预设恶意关键词集合,将所述预设恶意关键词集合中的恶意关键词与所述词语分别进行匹配;

若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息,获取所述用户终端的系统语言;

判断所述系统语言是否为预设系统语言;

在所述系统语言是预设系统语言时,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;

若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;

若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

根据所述运行信息,判断是否存在多次执行的同名可执行文件;

若存在多次执行的同名可执行文件,则从cookie中获取所述同名可执行文件的文件内容;

计算所述文件内容的变换频率;

判断所述变换频率是否超过预设变换阈值;

在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

获取所述目标运行特征对应的特征权重;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;

根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

进一步地,所述恶意软件作者识别设备通过处理器1001调用存储器1005中存储的恶意软件作者识别程序,还执行以下操作:

获取样本恶意软件作者的样本运行特征;

根据样本运行特征统计所述目标运行特征的出现频率;

根据所述出现频率设置所述目标运行特征对应的特征权重。

本实施例中,通过获取待识别用户的用户终端的运行信息,根据所述运行信息获取所述待识别用户的目标运行特征,基于运行特征能够快速识别恶意软件作者,无需进行大量恶意软件的样本分析;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者,提高恶意软件作者的识别效率。

基于上述硬件结构,提出本发明恶意软件作者识别方法的实施例。

参照图2,图2为本发明恶意软件作者识别方法第一实施例的流程示意图,提出本发明恶意软件作者识别方法第一实施例。

在第一实施例中,所述恶意软件作者识别方法包括以下步骤:

步骤s10:获取待识别用户的用户终端的运行信息。

应理解的是,本实施例的执行主体是所述恶意软件作者识别设备,所述恶意软件作者识别设备可以是个人计算机或服务器等电子设备,本实施例对此不加以限制。可通过获取待识别用户的用户终端的运行日志,从所述运行日志中提取用户终端的运行信息,具体地,还可获取所述用户终端在预设时间段内的运行信息。所述预设时间段可以是半个月或者一个月,本实施例对此不加以限制。

步骤s20:根据所述运行信息获取所述待识别用户的目标运行特征。

可理解的是,恶意软件作者通常具有一定的共性,即具有预设恶意特征,则从所述运行信息获取所述待识别用户的目标运行特征,将所述目标运行特征与所述预设恶意特征进行匹配。所述目标运行特征包括:静态运行特征和动态运行特征。所述静态运行特征通常可从所述运行信息中直接获取,或根据所述运行信息而直接获取;所述动态运行特征通常需要对从运行信息中提取的信息进行分析,从而识别出运行动态特征是否存在。所述目标运行特征包括:静态运行特征和动态运行特征。所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项;所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值。

步骤s30:将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度。

在具体实现中,将各目标运行特征与各预设恶意特征分别进行匹配,获得各目标运行特征对应的目标匹配度,并获取各目标运行特征对应的特征权重,将各目标运行特征的目标匹配度与对应的权重进行相乘并累加,获得所述目标运行特征与所述预设恶意特征之间的特征匹配度。

需要说明的是,为了提高识别效率,从所述目标运行特征中提取静态运行特征,从所述预设恶意特征中提取预设静态恶意特征,将所述静态运行特征与所述预设静态恶意特征进行匹配,获得静态特征匹配度,判断所述静态特征匹配度是否超过静态匹配度阈值,在所述静态特征匹配度超过所述静态匹配度阈值时,从所述目标运行特征中提取动态运行特征,从所述预设恶意特征中提取预设动态恶意特征,将所述动态运行特征与所述预设动态恶意特征进行匹配,获得动态特征匹配度,将所述静态特征匹配度和所述动态特征匹配度作为所述目标运行特征与预设恶意特征之间的特征匹配度。

步骤s40:在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

应理解的是,所述预设匹配度阈值可根据经验值进行设置,还可基于大数据分析获得,具体地,获取大量恶意软件作者的运行特征,计算恶意软件作者的运行特征与所述预设恶意特征之间的恶意匹配度,根据所述恶意匹配度设置所述预设匹配度阈值。在所述待识别用户的所述特征匹配度超过预设匹配度阈值时,说明所述待识别用户的目标运行特征与恶意软件作者的运行特征的相似度较高,可认定所述待识别用户为恶意软件作者。在本实施例中,所述步骤s40,包括:获取所述目标运行特征对应的特征权重;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

进一步地,在本实施例中,所述获取所述目标运行特征对应的特征权重,具体包括:

获取样本恶意软件作者的样本运行特征;根据样本运行特征统计所述目标运行特征的出现频率;根据所述出现频率设置所述目标运行特征对应的特征权重。

可理解的是,为了提高匹配的准确度,可基于大数据统计各目标运行特征对应的特征权重,可获取大量的恶意软件作者的样本运行特征,所述样本运行特征包括:用户终端中存在新测试样本,ip地址是境外ip地址,用户终端中存在处于预设位置的可执行文件,运行信息中存在恶意关键词,系统语言包括预设系统语言,在虚拟机中运行新测试样本,和同名可执行文件的变换频率超过预设变换阈值。

需要说明的是,计算各样本运行特征的出现频率,出现频率越高,设置越高的权重,比如,所述样本运行特征只包括存在新测试样本、ip地址是境外ip地址和在虚拟机中运行新测试样本,分别对应的出现频率为80%、40%和80%,则可设置对应的特征权重为0.4、0.2和0.4。

本实施例中,通过获取待识别用户的用户终端的运行信息,根据所述运行信息获取所述待识别用户的目标运行特征,基于运行特征能够快速识别恶意软件作者,无需进行大量恶意软件的样本分析;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者,提高恶意软件作者的识别效率。

参照图3,图3为本发明恶意软件作者识别方法第二实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明恶意软件作者识别方法的第二实施例。

在第二实施例中,所述目标运行特征包括:静态运行特征和动态运行特征。

应理解的是,所述静态运行特征通常可从所述运行信息中直接获取,或根据所述运行信息而直接获取;所述动态运行特征通常需要对从运行信息中提取的信息进行分析,从而识别出运行动态特征是否存在。

需要说明的是,为了提高识别效率,在所述步骤s30之前,可从所述目标运行特征中提取静态运行特征,从所述预设恶意特征中提取预设静态恶意特征,将所述静态运行特征与所述预设静态恶意特征进行匹配,获得静态特征匹配度,判断所述静态特征匹配度是否超过静态匹配度阈值,在所述静态特征匹配度超过所述静态匹配度阈值时,执行所述步骤s30。在所述静态特征匹配度未超过所述静态匹配度阈值时,可直接将所述待识别用户认定为不是恶意软件作者。所述静态匹配度阈值可根据经验值进行设置,还可基于大数据分析获得,具体地,获取大量恶意软件作者的静态运行特征,计算恶意软件作者的静态运行特征与所述预设静态恶意特征之间的静态恶意匹配度,根据所述静态恶意匹配度设置所述静态匹配度阈值。

进一步地,所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项。

进一步地,所述步骤s20,包括:

步骤s201:根据所述运行信息获取新测试样本。

可理解的是,所述测试样本的数量可以是多个,所述新测试样本是指用于测试的样本程序,通常普通互联网用户的用户终端中不会存储测试程序,若根据所述运行信息获取所述用户终端中存储的多个所述测试样本,则所述待识别用户可能是程序员或测试人员或恶意软件作者,则需对所述新测试样本进一步分析,以确定所述待识别用户的身份。

步骤s202:判断所述新测试样本是否为恶意软件。

可理解的是,可将所述新测试样本在虚拟机中进行运行,以判断所述新测试样本是否为恶意软件;还可将所述新测试样本进行特征提取,获得样本特征,基于大数据获取恶意软件对应的恶意特征,将所述样本特征与所述恶意特征进行匹配,若匹配度超过预设恶意匹配度阈值,则将所述新测试样本程序认定为恶意软件。

步骤s203:在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

需要说明的是,普通程序员或者测试人员通常不会在所述用户终端中存储恶意软件,因此,在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

进一步地,所述步骤s20,包括:

根据所述运行信息获取ip地址;判断所述ip地址是否为境外ip地址;在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

在具体实现中,所述用户终端的运行信息中通常包括mac地址,mac地址和ip地址之间存在映射关系,则可从所述运行信息中提取所述用户终端的mac地址,基于所述mac地址,查找对应的ip地址。本实施例中,所述根据所述运行信息获取ip地址,具体包括:根据所述运行信息获取所述用户终端的mac地址;根据所述mac地址查找对应的ip地址。

应理解的是,恶意软件作者为了隐藏,通常会经常变换外网ip地址,为了避免追踪,通常采用境外ip地址。而对于普通互联网用户通常不会采用境外ip地址。可获取境内ip地址特征,将所述ip地址与所述境内ip地址特征进行匹配,若匹配成功,则所述ip地址是境内ip地址,若匹配识别,则所述ip地址是境外ip地址。还可获取境外ip地址特征,将所述ip地址与境外ip地址特征进行匹配,若匹配成功,则所述ip地址是境外ip地址。则将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

进一步地,所述步骤s20,包括:

根据所述运行信息获取可执行文件;获取所述可执行文件在所述用户终端的存储位置;判断所述存储位置是否为预设位置;在所述存储位置是所述预设位置时,将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

可理解的是,所述预设位置是指所述用户设备的桌面。通常只有需要随时取用的文件会存放在桌面,以便于使用。对于普通互联网用户,通常不会将可执行文件放在桌面。而对于恶意软件作者,需要经常进行恶意软件的编写和测试,需要在桌面放置可执行文件,以便于随时使用,对可执行文件进行随时修改等操作。则根据所述运行信息获取可执行文件,获取所述可执行文件在所述用户终端的存储位置,若所述存储位置是在桌面,则可将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

进一步地,所述步骤s20,包括:

对所述运行信息进行分词处理,获得所述运行信息对应的词语;获取预设恶意关键词集合,将所述预设恶意关键词集合中的恶意关键词与所述词语分别进行匹配;若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

需要说明的是,恶意软件作者通常需在所述用户终端中进行恶意软件的编写和测试,则所述用户终端的运行信息中通常包括恶意关键词。对所述运行信息进行分词处理,获得所述运行信息对应的所有词语。基于大数据采集恶意软件运行时产生的关键词,采集的关键词构成所述预设恶意关键词集合。将所述词语与所述预设恶意关键词集合中的恶意关键词分别进行匹配,若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

进一步地,所述步骤s20,包括:

根据所述运行信息,获取所述用户终端的系统语言;判断所述系统语言是否为预设系统语言;在所述系统语言是预设系统语言时,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

在具体实现中,有些恶意软件需采用特定的系统语言,基于大数据采集需使用特定系统语言的恶意软件,并将所述特定系统语言作为所述预设系统语言。可通过locale类获取所述用户终端的系统语言,架构所述用户终端的系统语言与所述预设系统语言进行匹配,若匹配成功,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

在本实施例中,所述目标运行特征包括:静态运行特征和动态运行特征,所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项,通过判断所述待识别用户的用户终端中是否存在上述运行特征,从而识别出恶意软件作者。

参照图4,图4为本发明恶意软件作者识别方法第三实施例的流程示意图,基于上述图2所示的第一实施例,提出本发明恶意软件作者识别方法的第三实施例。

在第三实施例中,所述目标运行特征包括:静态运行特征和动态运行特征。

进一步地,所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值。

在本实施例中,所述步骤s20,包括:

步骤s204:根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机。

应理解的是,所述测试样本的数量可以是多个,所述新测试样本是指用于测试的样本程序,恶意软件作者通常会编写新测试样本,或者是对现有的恶意软件进行改编获得新测试样本,并将所述新测试样本通过虚拟机进行运行测试,以测试所述新测试样本是否能够实现入侵程序或其他恶意操作。若根据所述运行信息获取所述用户终端中存储的多个所述测试样本,则所述待识别用户可能是程序员或测试人员或恶意软件作者,则需进一步判断所述用户终端是否启用虚拟机,虚拟机是通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统,通过虚拟机,可以在一台物理计算机上模拟出一台或多台虚拟的计算机,可通过检测命令检测是否启用虚拟机,比如,根据cmd使用命令,如果systemmodel返回信息内,后面含有virutal就是虚拟机,其他都是物理机。

步骤s205:若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中。

可理解的是,若所述用户终端有启用虚拟机,则进一步判断所述用户终端是否将所述测试样本运行在虚拟机中。可通过环境检测程序检测所述新测试样本是否运行在虚拟机中。

步骤s206:若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

需要说明的是,通常普通互联网用户的用户终端中不会存储测试程序,也不会将测试程序放在虚拟机中运行。若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

进一步地,在本实施例中,所述步骤s20,包括:

根据所述运行信息,判断是否存在多次执行的同名可执行文件;若存在多次执行的同名可执行文件,则从cookie中获取所述同名可执行文件的文件内容;计算所述文件内容的变换频率;判断所述变换频率是否超过预设变换阈值;在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

在具体实现中,恶意软件作者在对同名可执行文件进行测试,若所述同名可执行文件不能实现恶意操作,则需要对其进行修改,通常为了实现特定的恶意入侵目的,恶意软件作者会对一个可执行文件进行多次修改,反复测试使用。然而,普通互联网用户不会对同名可执行文件进行多次的内容变更。因此,可从所述运行信息中获取同名可执行文件,并从储存在用户本地终端上的数据(cookie)中获取所述同名可执行文件的文件内容,统计所述同名可执行文件的文件内容变化的次数和时间,根据变化的次数和时间,计算所述文件内容的变换频率。基于大数据统计恶意软件作者对同名可执行文件修改的频率,根据统计的同名可执行文件修改的频率设置所述预设变换阈值,将所述变换频率与所述预设变换阈值进行比较,在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

在本实施例中,所述目标运行特征包括:静态运行特征和动态运行特征,所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值,通过判断所述待识别用户的用户终端中是否存在上述运行特征,从而识别出恶意软件作者。

此外,本发明实施例还提出一种存储介质,所述存储介质上存储有恶意软件作者识别程序,所述恶意软件作者识别程序被处理器执行时实现如下步骤:

获取待识别用户的用户终端的运行信息;

根据所述运行信息获取所述待识别用户的目标运行特征;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息获取新测试样本;

判断所述新测试样本是否为恶意软件;

在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息获取ip地址;

判断所述ip地址是否为境外ip地址;

在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息获取所述用户终端的mac地址;

根据所述mac地址查找对应的ip地址。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息获取可执行文件;

获取所述可执行文件在所述用户终端的存储位置;

判断所述存储位置是否为预设位置;

在所述存储位置是所述预设位置时,将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

对所述运行信息进行分词处理,获得所述运行信息对应的词语;

获取预设恶意关键词集合,将所述预设恶意关键词集合中的恶意关键词与所述词语分别进行匹配;

若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息,获取所述用户终端的系统语言;

判断所述系统语言是否为预设系统语言;

在所述系统语言是预设系统语言时,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;

若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;

若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

根据所述运行信息,判断是否存在多次执行的同名可执行文件;

若存在多次执行的同名可执行文件,则从cookie中获取所述同名可执行文件的文件内容;

计算所述文件内容的变换频率;

判断所述变换频率是否超过预设变换阈值;

在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:

获取所述目标运行特征对应的特征权重;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;

根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

进一步地,所述恶意软件作者识别程序被处理器执行时还实现如下操作:获取样本恶意软件作者的样本运行特征;

根据样本运行特征统计所述目标运行特征的出现频率;

根据所述出现频率设置所述目标运行特征对应的特征权重。

本实施例中,通过获取待识别用户的用户终端的运行信息,根据所述运行信息获取所述待识别用户的目标运行特征,基于运行特征能够快速识别恶意软件作者,无需进行大量恶意软件的样本分析;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者,提高恶意软件作者的识别效率。

此外,参照图5,本发明实施例还提出一种恶意软件作者识别装置,所述恶意软件作者识别装置包括:

获取模块10,用于获取待识别用户的用户终端的运行信息。

应理解的是,可通过获取待识别用户的用户终端的运行日志,从所述运行日志中提取用户终端的运行信息,具体地,还可获取所述用户终端在预设时间段内的运行信息。所述预设时间段可以是半个月或者一个月,本实施例对此不加以限制。

所述获取模块10,还用于根据所述运行信息获取所述待识别用户的目标运行特征。

可理解的是,恶意软件作者通常具有一定的共性,即具有预设恶意特征,则从所述运行信息获取所述待识别用户的目标运行特征,将所述目标运行特征与所述预设恶意特征进行匹配。所述目标运行特征包括:静态运行特征和动态运行特征。所述静态运行特征通常可从所述运行信息中直接获取,或根据所述运行信息而直接获取;所述动态运行特征通常需要对从运行信息中提取的信息进行分析,从而识别出运行动态特征是否存在。所述目标运行特征包括:静态运行特征和动态运行特征。所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项;所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值。

匹配模块20,用于将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度。

在具体实现中,将各目标运行特征与各预设恶意特征分别进行匹配,获得各目标运行特征对应的目标匹配度,并获取各目标运行特征对应的特征权重,将各目标运行特征的目标匹配度与对应的权重进行相乘并累加,获得所述目标运行特征与所述预设恶意特征之间的特征匹配度。

需要说明的是,为了提高识别效率,从所述目标运行特征中提取静态运行特征,从所述预设恶意特征中提取预设静态恶意特征,将所述静态运行特征与所述预设静态恶意特征进行匹配,获得静态特征匹配度,判断所述静态特征匹配度是否超过静态匹配度阈值,在所述静态特征匹配度超过所述静态匹配度阈值时,从所述目标运行特征中提取动态运行特征,从所述预设恶意特征中提取预设动态恶意特征,将所述动态运行特征与所述预设动态恶意特征进行匹配,获得动态特征匹配度,将所述静态特征匹配度和所述动态特征匹配度作为所述目标运行特征与预设恶意特征之间的特征匹配度。

识别模块30,用于在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

应理解的是,所述预设匹配度阈值可根据经验值进行设置,还可基于大数据分析获得,具体地,获取大量恶意软件作者的运行特征,计算恶意软件作者的运行特征与所述预设恶意特征之间的恶意匹配度,根据所述恶意匹配度设置所述预设匹配度阈值。在所述待识别用户的所述特征匹配度超过预设匹配度阈值时,说明所述待识别用户的目标运行特征与恶意软件作者的运行特征的相似度较高,可认定所述待识别用户为恶意软件作者。在本实施例中,所述识别模块30,还用于获取所述目标运行特征对应的特征权重;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

进一步地,在本实施例中,所述识别模块30,还用于获取样本恶意软件作者的样本运行特征;根据样本运行特征统计所述目标运行特征的出现频率;根据所述出现频率设置所述目标运行特征对应的特征权重。

可理解的是,为了提高匹配的准确度,可基于大数据统计各目标运行特征对应的特征权重,可获取大量的恶意软件作者的样本运行特征,所述样本运行特征包括:用户终端中存在新测试样本,ip地址是境外ip地址,用户终端中存在处于预设位置的可执行文件,运行信息中存在恶意关键词,系统语言包括预设系统语言,在虚拟机中运行新测试样本,和同名可执行文件的变换频率超过预设变换阈值。

需要说明的是,计算各样本运行特征的出现频率,出现频率越高,设置越高的权重,比如,所述样本运行特征只包括存在新测试样本、ip地址是境外ip地址和在虚拟机中运行新测试样本,分别对应的出现频率为80%、40%和80%,则可设置对应的特征权重为0.4、0.2和0.4。

本实施例中,通过获取待识别用户的用户终端的运行信息,根据所述运行信息获取所述待识别用户的目标运行特征,基于运行特征能够快速识别恶意软件作者,无需进行大量恶意软件的样本分析;将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者,提高恶意软件作者的识别效率。

在一实施例中,所述获取模块10,还用于根据所述运行信息获取新测试样本;判断所述新测试样本是否为恶意软件;在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

在一实施例中,所述获取模块10,还用于根据所述运行信息获取ip地址;判断所述ip地址是否为境外ip地址;在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

在一实施例中,所述获取模块10,还用于根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

本发明所述恶意软件作者识别装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。词语第一、第二、以及第三等的使用不表示任何顺序,可将这些词语解释为标识。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器镜像(readonlymemoryimage,rom)/随机存取存储器(randomaccessmemory,ram)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

本发明公开了a1、一种恶意软件作者识别方法,所述恶意软件作者识别方法包括以下步骤:

获取待识别用户的用户终端的运行信息;

根据所述运行信息获取所述待识别用户的目标运行特征;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

a2、如a1所述的恶意软件作者识别方法,所述目标运行特征包括:静态运行特征和动态运行特征。

a3、如a2所述的恶意软件作者识别方法,所述静态运行特征包括:用户终端中存在新测试样本、ip地址是境外ip地址、用户终端中存在处于预设位置的可执行文件、运行信息中存在恶意关键词和系统语言包括预设系统语言中的至少一项。

a4、如a2所述的恶意软件作者识别方法,所述动态运行特征包括在虚拟机中运行新测试样本,和/或,同名可执行文件的变换频率超过预设变换阈值。

a5、如a1-a3中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取新测试样本;

判断所述新测试样本是否为恶意软件;

在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

a6、如a1-a3中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取ip地址;

判断所述ip地址是否为境外ip地址;

在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

a7、如a6所述的恶意软件作者识别方法,其特征在于,所述根据所述运行信息获取ip地址,具体包括:

根据所述运行信息获取所述用户终端的mac地址;

根据所述mac地址查找对应的ip地址。

a8、如a1-a3中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取可执行文件;

获取所述可执行文件在所述用户终端的存储位置;

判断所述存储位置是否为预设位置;

在所述存储位置是所述预设位置时,将用户终端中存在处于预设位置的可执行文件作为所述待识别用户的目标运行特征。

a9、如a1-a3中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

对所述运行信息进行分词处理,获得所述运行信息对应的词语;

获取预设恶意关键词集合,将所述预设恶意关键词集合中的恶意关键词与所述词语分别进行匹配;

若匹配成功,将运行信息中存在恶意关键词作为所述待识别用户的目标运行特征。

a10、如a1-a3中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息,获取所述用户终端的系统语言;

判断所述系统语言是否为预设系统语言;

在所述系统语言是预设系统语言时,将系统语言包括预设系统语言作为所述待识别用户的目标运行特征。

a11、如a1、a2或a4中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;

若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;

若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

a12、如a1、a2或a4中任一项所述的恶意软件作者识别方法,所述根据所述运行信息获取所述待识别用户的目标运行特征,具体包括:

根据所述运行信息,判断是否存在多次执行的同名可执行文件;

若存在多次执行的同名可执行文件,则从cookie中获取所述同名可执行文件的文件内容;

计算所述文件内容的变换频率;

判断所述变换频率是否超过预设变换阈值;

在所述变换频率超过所述预设变换阈值时,将同名可执行文件的变换频率超过预设变换阈值作为所述待识别用户的目标运行特征。

a13、如a1-a4中任一项所述的恶意软件作者识别方法,所述将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度,具体包括:

获取所述目标运行特征对应的特征权重;

将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征对应的目标匹配度;

根据所述目标匹配度和所述特征权重,计算所述目标运行特征与所述预设恶意特征之间的特征匹配度。

a14、如a13所述的恶意软件作者识别方法,所述获取所述目标运行特征对应的特征权重,具体包括:

获取样本恶意软件作者的样本运行特征;

根据样本运行特征统计所述目标运行特征的出现频率;

根据所述出现频率设置所述目标运行特征对应的特征权重。

本发明还公开了b15、一种恶意软件作者识别设备,所述恶意软件作者识别设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的恶意软件作者识别程序,所述恶意软件作者识别程序被所述处理器执行时实现如a1至a14中任一项所述的恶意软件作者识别方法的步骤。

本发明还公开了c16、一种存储介质,所述存储介质上存储有恶意软件作者识别程序,所述恶意软件作者识别程序被处理器执行时实现如权利要求a1至a14中任一项所述的恶意软件作者识别方法的步骤。

本发明还公开了d17、一种恶意软件作者识别装置,所述恶意软件作者识别装置包括:

获取模块,用于获取待识别用户的用户终端的运行信息;

所述获取模块,还用于根据所述运行信息获取所述待识别用户的目标运行特征;

匹配模块,用于将所述目标运行特征与预设恶意特征进行匹配,获得所述目标运行特征与预设恶意特征之间的特征匹配度;

识别模块,用于在所述特征匹配度超过预设匹配度阈值时,将所述待识别用户作为恶意软件作者。

d18、如d17所述的恶意软件作者识别装置,所述获取模块,还用于根据所述运行信息获取新测试样本;判断所述新测试样本是否为恶意软件;在所述新测试样本为恶意软件时,将用户终端中存在新测试样本作为所述待识别用户的目标运行特征。

d19、如d17所述的恶意软件作者识别装置,所述获取模块,还用于根据所述运行信息获取ip地址;判断所述ip地址是否为境外ip地址;在所述ip地址是境外ip地址时,将所述ip地址是境外ip地址作为所述待识别用户的目标运行特征。

d20、如d17所述的恶意软件作者识别装置,所述获取模块,还用于根据所述运行信息获取新测试样本,并根据所述运行信息判断所述用户终端是否有启用虚拟机;若所述用户终端有启用虚拟机,则判断所述新测试样本是否运行在虚拟机中;若所述新测试样本运行在虚拟机中,则将在虚拟机中运行新测试样本作为所述待识别用户的目标行为特征。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1