CN113486350B - 恶意软件的识别方法、装置、设备及存储介质 - Google Patents

恶意软件的识别方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113486350B
CN113486350B CN202110948754.XA CN202110948754A CN113486350B CN 113486350 B CN113486350 B CN 113486350B CN 202110948754 A CN202110948754 A CN 202110948754A CN 113486350 B CN113486350 B CN 113486350B
Authority
CN
China
Prior art keywords
software
time sequence
identification
sequence data
preset
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.)
Active
Application number
CN202110948754.XA
Other languages
English (en)
Other versions
CN113486350A (zh
Inventor
杨志国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Jingteng Network Technology Co ltd
Shenzhen Lian Intellectual Property Service Center
Original Assignee
Guangzhou Jingteng Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Jingteng Network Technology Co ltd filed Critical Guangzhou Jingteng Network Technology Co ltd
Priority to CN202110948754.XA priority Critical patent/CN113486350B/zh
Publication of CN113486350A publication Critical patent/CN113486350A/zh
Application granted granted Critical
Publication of CN113486350B publication Critical patent/CN113486350B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Virology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及人工智能技术领域,提供了一种恶意软件的识别方法、装置、设备及存储介质。所述方法包括:将各软件的行为属性数据拼接成初始时间序列数据,对初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,提取各目标时间序列数据的特征信息,根据各特性信息及对应的预设标签生成样本集并训练得到第一、第二及第三识别模型,将待识别软件的特征信息分别输入各识别模型得到对应的三个识别结果,基于三个识别结果及预设判断规则得到待识别软件的目标识别结果。本发明可以提高识别恶意软件的准确性。本发明还涉及区块链技术领域,上述行为属性数据可以存储于一区块链的节点中。

Description

恶意软件的识别方法、装置、设备及存储介质
技术领域
本发明涉及人工智能技术领域,尤其涉及一种恶意软件的识别方法、装置、设备及存储介质。
背景技术
恶意软件是指各种形式的恶意或者入侵软件,例如计算机病毒、蠕虫、间谍软件、木马、广告软件等。恶意软件通常以可执行程序、脚本等形式存在。
目前,现有的基于匹配文件内容是否出现特定二进制段的静态扫描的恶意软件识别方案,需要建立大量只有安全专家才能运营维护的规则,这些规则限制多了会有大量误报,限制少了会有大量漏报,且非常容易被二次开发、加壳进行绕过。基于软件的哈希值作为黑名单库的扫描,也会被二次开发的恶意软件轻易绕过。因此,提升识别恶意软件的准确性已成为本领域技术人员亟待解决的技术问题。
发明内容
鉴于以上内容,本发明提供一种恶意软件的识别方法、装置、设备及存储介质,其目的在于解决现有技术中识别恶意软件的准确性不高的技术问题。
为实现上述目的,本发明提供一种恶意软件的识别方法,该方法包括:
从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
优选的,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:
利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;
统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;
利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
优选的,所述分别提取各所述目标时间序列数据的特征信息,包括:
基于离散小波滤波器组对各所述目标时间序列数据的时域信息进行频域分解,得到多个不同频段的时序子带信号;
对每个时序子带信号进行特征提取,得到各所述目标时间序列数据的特征信息。
优选的,所述第一识别模型及所述第二识别模型的训练过程,包括:
将所述样本集按照预设比例分成训练集及验证集;
利用所述训练集中的各特性信息及各预设标签对卷积神经网络模型进行训练,每隔预设周期利用所述验证集中各特性信息及各预设标签,对卷积神经网络模型及循环神经网络模型的准确率进行验证;及
当验所述准确率大于预设阈值时结束训练,得到所述第一识别模型及所述第二识别模型。
优选的,所述基于所述样本集训练预设的神经网络模型得到第三识别模型,包括:
将所述样本集中的目标时间序列数据及预设标签输入至长短期记忆神经网络;
根据长短期记忆神经网络的输入层对目标时间序列数据进行预处理;
根据长短期记忆神经网络的隐藏层构建预处理后的目标时间序列数据与预设标签之间的映射关系,并保存该映射关系;
将保存有所述映射关系的长短期记忆神经网络作为所述第三识别模型。
优选的,所述基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果包括:
当第一识别结果、第二识别结果及第三识别结果中任意两个识别结果为第一类型软件,则将第一类型软件作为所述目标识别结果;
当第一识别结果、第二识别结果及第三识别结果中仅有一个或者无识别结果为第一类型软件,则判断所述待识别软件为第二类型软件;
当判断所述待识别软件为第二类型软件,且第一识别结果、第二识别结果及第三识别结果均不相同时,判断所述待识别软件为第三类型软件,其中,所述第三类型软件属于所述第二类型软件。
优选的,所述方法还包括:
将所述目标识别结果反馈至所述待识别软件对应的终端,并向所述终端发送预设的提示信息。
为实现上述目的,本发明还提供一种恶意软件的识别装置,该恶意软件的识别装置包括:
获取模块:用于从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
拼接模块:用于根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
训练模块:用于分别提取各所述目标时间序列数据的特征信息,根据各所述特性信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
识别模块:用于将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果。
为实现上述目的,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的程序,所述程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的恶意软件的识别方法的任意步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有恶意软件的识别程序,所述恶意软件的识别程序被处理器执行时,实现如上所述恶意软件的识别方法的任意步骤。
本发明提出的恶意软件的识别方法、装置、设备及存储介质,通过对各种类型的软件的行为属性数据作为时间序列样本数据,训练得到三个不同的识别模型,通过三个识别模型对软件的行为信息进行识别,并根据各识别模型的识别结果综合判断软件是否为恶意软件,可以避免因恶意软件进行二次开发或加壳后被误识别为正常软件的情况,从而提高识别恶意软件的准确性。
附图说明
图1为本发明恶意软件的识别方法较佳实施例的流程图示意图;
图2为本发明恶意软件的识别装置较佳实施例的模块示意图;
图3为本发明电子设备较佳实施例的示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种恶意软件的识别方法。参照图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、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,电子装置,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种恶意软件的识别方法,其特征在于,所述方法包括:
从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
分别提取各所述目标时间序列数据的特征信息,根据各所述特征信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果;
其中,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
2.如权利要求1所述的恶意软件的识别方法,其特征在于,所述分别提取各所述目标时间序列数据的特征信息,包括:
基于离散小波滤波器组对各所述目标时间序列数据的时域信息进行频域分解,得到多个不同频段的时序子带信号;
对每个时序子带信号进行特征提取,得到各所述目标时间序列数据的特征信息。
3.如权利要求1所述的恶意软件的识别方法,其特征在于,所述第一识别模型及所述第二识别模型的训练过程,包括:
将所述样本集按照预设比例分成训练集及验证集;
利用所述训练集中的各特征信息及各预设标签对卷积神经网络模型进行训练,每隔预设周期利用所述验证集中各特征信息及各预设标签,对卷积神经网络模型及循环神经网络模型的准确率进行验证;及
当验所述准确率大于预设阈值时结束训练,得到所述第一识别模型及所述第二识别模型。
4.如权利要求1所述的恶意软件的识别方法,其特征在于,所述基于所述样本集训练预设的神经网络模型得到第三识别模型,包括:
将所述样本集中的目标时间序列数据及预设标签输入至长短期记忆神经网络;
根据长短期记忆神经网络的输入层对目标时间序列数据进行预处理;
根据长短期记忆神经网络的隐藏层构建预处理后的目标时间序列数据与预设标签之间的映射关系,并保存该映射关系;
将保存有所述映射关系的长短期记忆神经网络作为所述第三识别模型。
5.如权利要求1所述的恶意软件的识别方法,其特征在于,所述基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果,包括:
当第一识别结果、第二识别结果及第三识别结果中任意两个识别结果为第一类型软件,则将第一类型软件作为所述目标识别结果;
当第一识别结果、第二识别结果及第三识别结果中仅有一个或者无识别结果为第一类型软件,则判断所述待识别软件为第二类型软件;
当判断所述待识别软件为第二类型软件,且第一识别结果、第二识别结果及第三识别结果均不相同时,判断所述待识别软件为第三类型软件,其中,所述第三类型软件属于所述第二类型软件。
6.如权利要求1至5中任意一项所述的恶意软件的识别方法,其特征在于,所述方法还包括:
将所述目标识别结果反馈至所述待识别软件对应的终端,并向所述终端发送预设的提示信息。
7.一种恶意软件的识别装置,其特征在于,所述装置包括:
获取模块:用于从预定数据源获取多种类型软件的行为属性数据,分别为各种类型的软件标注预设标签;
拼接模块:用于根据时间先后顺序分别将各软件的行为属性数据拼接成该软件对应的初始时间序列数据,对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据;
训练模块:用于分别提取各所述目标时间序列数据的特征信息,根据各所述特征信息及对应的预设标签生成样本集,基于所述样本集训练预设的神经网络模型集得到第一识别模型、第二识别模型及第三识别模型;
识别模块:用于将待识别软件的特征信息分别输入第一识别模型、第二识别模型及第三识别模型得到对应的第一识别结果、第二识别结果及第三识别结果,基于第一识别结果、第二识别结果、第三识别结果及预设判断规则得到所述待识别软件的目标识别结果;
其中,所述对各所述初始时间序列数据执行分隔、统计及正则替换操作得到各软件对应的目标时间序列数据,包括:利用分隔符分隔所述初始时间序列数据中网络传输信息、注册表信息、进程信息及动态链接库信息的文件名;统计所述初始时间序列数据中各行为的发生次数,将各行为的发生次数添加至所述初始时间序列数据;利用预设的正则表达式删除所述初始时间序列数据中的地址信息。
8.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的程序,所述程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6中任一项所述的恶意软件的识别方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有恶意软件的识别程序,所述恶意软件的识别程序被处理器执行时,实现如权利要求1至6中任一项所述恶意软件的识别方法的步骤。
CN202110948754.XA 2021-08-18 2021-08-18 恶意软件的识别方法、装置、设备及存储介质 Active CN113486350B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110948754.XA CN113486350B (zh) 2021-08-18 2021-08-18 恶意软件的识别方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110948754.XA CN113486350B (zh) 2021-08-18 2021-08-18 恶意软件的识别方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113486350A CN113486350A (zh) 2021-10-08
CN113486350B true CN113486350B (zh) 2023-08-25

Family

ID=77945811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110948754.XA Active CN113486350B (zh) 2021-08-18 2021-08-18 恶意软件的识别方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113486350B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114372806A (zh) * 2022-03-23 2022-04-19 中国工商银行股份有限公司 一种预设交易特征提取模型训练方法及装置
CN115408696B (zh) * 2022-11-02 2023-04-07 荣耀终端有限公司 应用识别方法及电子设备
CN115758368B (zh) * 2023-01-10 2023-05-05 北京亿赛通科技发展有限责任公司 恶意破解软件的预测方法、装置、电子设备和存储介质
CN116414269B (zh) * 2023-06-06 2023-10-20 荣耀终端有限公司 流氓应用的识别方法和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567661A (zh) * 2010-12-31 2012-07-11 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置
WO2017193036A1 (en) * 2016-05-05 2017-11-09 Cylance Inc. Machine learning model for malware dynamic analysis
CN112163558A (zh) * 2020-10-20 2021-01-01 腾讯科技(深圳)有限公司 时间序列数据的特征提取方法、装置、设备及存储介质
US11025649B1 (en) * 2018-06-26 2021-06-01 NortonLifeLock Inc. Systems and methods for malware classification

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101960869B1 (ko) * 2017-06-30 2019-03-21 주식회사 씨티아이랩 인공지능 기반 악성코드 검출 시스템 및 방법
US11574051B2 (en) * 2018-08-02 2023-02-07 Fortinet, Inc. Malware identification using multiple artificial neural networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567661A (zh) * 2010-12-31 2012-07-11 北京奇虎科技有限公司 基于机器学习的程序识别方法及装置
WO2017193036A1 (en) * 2016-05-05 2017-11-09 Cylance Inc. Machine learning model for malware dynamic analysis
US11025649B1 (en) * 2018-06-26 2021-06-01 NortonLifeLock Inc. Systems and methods for malware classification
CN112163558A (zh) * 2020-10-20 2021-01-01 腾讯科技(深圳)有限公司 时间序列数据的特征提取方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种基于深度学习的恶意软件家族分类模型;郑锐;汪秋云;傅建明;姜政伟;苏日古嘎;汪姝玮;;信息安全学报(01);第5-13页 *

Also Published As

Publication number Publication date
CN113486350A (zh) 2021-10-08

Similar Documents

Publication Publication Date Title
CN113486350B (zh) 恶意软件的识别方法、装置、设备及存储介质
US11714905B2 (en) Attribute relevance tagging in malware recognition
Jerlin et al. A new malware detection system using machine learning techniques for API call sequences
US11188650B2 (en) Detection of malware using feature hashing
EP2916256B1 (en) Systems and methods for behavior-based automated malware analysis and classification
US10984101B2 (en) Methods and systems for malware detection and categorization
US11580222B2 (en) Automated malware analysis that automatically clusters sandbox reports of similar malware samples
CN110933104B (zh) 恶意命令检测方法、装置、设备及介质
CN111814472B (zh) 文本识别方法、装置、设备及存储介质
US10454967B1 (en) Clustering computer security attacks by threat actor based on attack features
US20200412740A1 (en) Methods, devices and systems for the detection of obfuscated code in application software files
CN112307464A (zh) 诈骗识别方法、装置及电子设备
CN113067792A (zh) 一种xss攻击识别方法、装置、设备及介质
CN108229168B (zh) 一种嵌套类文件的启发式检测方法、系统及存储介质
CN113971284B (zh) 基于JavaScript的恶意网页检测方法、设备及计算机可读存储介质
CN110727576B (zh) 一种web页面测试方法、装置、设备及存储介质
CN111752958A (zh) 智能关联标签方法、装置、计算机设备及存储介质
CN111931186A (zh) 软件风险识别方法及装置
CN113688240B (zh) 威胁要素提取方法、装置、设备及存储介质
CN116015861A (zh) 一种数据检测方法、装置、电子设备及存储介质
US20220237289A1 (en) Automated malware classification with human-readable explanations
CN115310082A (zh) 信息处理方法、装置、电子设备及存储介质
CN111291186B (zh) 一种基于聚类算法的上下文挖掘方法、装置和电子设备
CN114363039A (zh) 一种诈骗网站的识别方法、装置、设备及存储介质
CN115495737A (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
TA01 Transfer of patent application right

Effective date of registration: 20230801

Address after: Room 302, Building 1, No. 2 Haipan Street, Nansha Street, Nansha District, Guangzhou City, Guangdong Province, 510000 (office only)

Applicant after: Guangzhou Jingteng Network Technology Co.,Ltd.

Address before: 518000 Room 202, block B, aerospace micromotor building, No.7, Langshan No.2 Road, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Applicant before: Shenzhen LIAN intellectual property service center

Effective date of registration: 20230801

Address after: 518000 Room 202, block B, aerospace micromotor building, No.7, Langshan No.2 Road, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Shenzhen LIAN intellectual property service center

Address before: 518000 Room 201, building A, 1 front Bay Road, Shenzhen Qianhai cooperation zone, Shenzhen, Guangdong

Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant