一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于元路径的恶意软件检测方法

2022-07-16 05:57:17 来源:中国专利 TAG:
1.本发明涉及恶意软件检测
技术领域
:,尤其涉及一种基于元路径的恶意软件检测方法。
背景技术
::2.恶意软件(malware)泛指所有以危害计算机或计算机上运行的软件为企图的软件,其设计目的是创建系统漏洞,并借以造成后门、安全隐患、信息和数据盗窃、以及其他对文件和计算机系统的潜在破坏。常见的恶意代码包括计算机病毒、计算机蠕虫、特洛伊木马等。特洛伊木马是一类看起来具有正常功能,但实际上隐藏着很多用户不希望功能的程序。3.据卡巴斯基公布的2020年安全公告显示,2019年11月至2020年10月间,平均每天检测到36万个新的恶意文件,比2019年增长5.2%,10.18%的联网电脑使用者遭受过至少一次恶意软件攻击。仅2021年上半年,捕获恶意程序样本数量约2,307万个,日均传播次数达582万余次,涉及恶意程序家族约20.8万个。4.现有的恶意软件检测方法,主要分为传统检测和机器学习两种检测类型。传统检测需要依赖大量专家经验,不断更新特征库,因此只能检测已知恶意软件。5.基于机器学习的检测类型按是否运行恶意软件,又可以分为静态分析和动态分析两种检测方法。已有的静态分析方法要求分析人员具备较高的专业水平以提取有效的特征,并且在文件加壳、资源混淆等情况下进行特征提取会变得异常困难。动态分析方法要实时监控程序文件的行为,导致大量计算资源被浪费,同时我们很难模拟出恶意软件被激活的合适的条件,也无法确定观测一个恶意软件的恶意行为所需要的时间。6.由于采集和分析足够数量的相关样本往往需要较长时间,现有检测方法很难迅速检测出新型恶意软件及其变种,而新型恶意软件的大量出现仍然对整个社会构成持续性的威胁。在新型恶意软件出现的初期,往往出现的样本数量较少,无法为目前的恶意代码检测方法提供足够信息。样本大量出现后,由于初期没有得到有效的防范而导致严重的安全事件时有发生。如何在仅已知少量样本的情况下保证恶意软件检测的准确率与效率,是应对当前新型恶意代软件快速增长形势的关键问题。技术实现要素:7.(一)解决的技术问题8.针对现有技术的不足,本发明提供了一种基于元路径的恶意软件检测方法,具备能够快速获得其向量表示并输出检测结果,有效性可以得到保证等优点,用于解决上述
背景技术
:中所存在的问题。9.(二)技术方案10.本发明提供如下技术方案:一种基于元路径的恶意软件检测方法,包括以下步骤:11.s1、收集足够多恶意软件和良性软件样本,抽取各个软件特征构建异质信息网络;12.s2、根据算法获得异质信息网络各个顶点的向量表示;13.s3、根据算法生成各个恶意软件和良性软件的图片表示,并输入进神经网络进行训练得到检测模型;14.s4.按算法生成待检测软件的图片表示,输入进检测模型进行检测。15.在一种可能的实施方式中,所述s1中,异质信息网络(heterogeneousinformationnetwork)是一种包含多类型对象和表示不同关系的多类型链接的有向图,定义为g=(v,e),其中v为顶点集合,e为边集合,顶点为实体,边表示各实体之间的关系。16.在一种可能的实施方式中,所述s1中,异质信息网络模式,算法定义如下五种实体:应用程序(app)、文件(file)、应用程序接口(api)、动态链接库(dll)、ip地址(ip);基于以上五种实体定义了如下五种关系:app创建(create)file、app包含(involve)api、api属于(belong)dll、app发送数据(send)至ip地址、app调用(invoke)dll。17.在一种可能的实施方式中,所述s2中,表示学习即为将异质信息网络中的节点映射到一个远小于节点数量的d维向量空间中,并可以保持原有的结构和语义信息,基于不同meta-path来引导的随机游走,得到异质信息网络中上下文的映射,然后使用skip-gram算法学习异质信息网络中顶点的表示。18.在一种可能的实施方式中,随机游走(randomwalk)是一个由随机变量v1、v2、v3...vn构成的随机过程,节点vi 1从vi的邻居节点中随机选取,p(vi 1|vi)呈正则化概率分布,且概率和为1。19.在一种可能的实施方式中,所述s3中,选用inception-resnetv1神经网络模型进行训练和预测。20.在一种可能的实施方式中,所述s3中,算法中神经网络模型的input层的维度需要修改为64x64x1,并且需要对后面的结构进行适应化的修改,最后由softmax层输出该app属于良性软件或恶意软件的概率,选择概率较大的类别做为预测结果进行输出。21.与现有技术相比,本发明提供了一种基于元路径的恶意软件检测方法,具备以下有益效果:22.1、本发明使用异质信息网络描述应用程序关系之间丰富的语义特征,并使用基于专家先验知识定义的meta-path,结合更高层次的语义来建立应用程序的语义关联性。23.2、本发明可以以离线的方式获得节点的嵌入表示,并且在检测新样本时无需重新对整个异质信息网络进行嵌入,因此能够快速获得其向量表示并输出检测结果。24.3、使用本发明只要保证构建的异质信息网络连通性足够好,相关训练样本数量足够,那么使用本发明进行表示,再使用inception-resnetv1神经网络模型分类的有效性就可以得到保证。25.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。附图说明26.图1为本发明所提供的一种基于元路径的恶意软件检测方法的整体结构示意图;27.图2为本发明所提供的一种基于元路径的恶意软件检测方法中构造的异质信息网络示意图;28.图3为本发明所提供的一种基于元路径的恶意软件检测方法中提出的异质信息网络的网络模式;29.图4为本发明所提供的一种基于元路径的恶意软件检测方法中使用的神经网络分类器的网络架构。具体实施方式30.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。31.实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。32.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。33.在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。34.如图1-4所示,本发明提供了一种基于元路径的恶意软件检测方法,包括以下步骤:35.s1、收集足够多恶意软件和良性软件样本,抽取各个软件特征构建异质信息网络;36.s2、根据算法获得异质信息网络各个顶点的向量表示,算法主要包括三个模块:特征提取和异质信息网络构建模块、表示学习模块、分类器训练与预测模块;37.s3、根据算法生成各个恶意软件和良性软件的图片表示,并输入进神经网络进行训练得到检测模型;38.s4.按算法生成待检测软件的图片表示,输入进检测模型进行检测。39.在一种可能的实施方式中,异质信息网络(heterogeneousinformationnetwork)是一种包含多类型对象和表示不同关系的多类型链接的有向图,定义为g=(v,e),其中v为顶点集合,e为边集合,顶点为实体,边表示各实体之间的关系,实体类型映射:φ:v→α,关系类型映射:ψ:e→r,a为实体类型集合,r为关系类型的集合,如图2所示即为一个异质信息网络例子。40.异质信息网络模式如图3所示,算法定义如下五种实体:应用程序(app)、文件(file)、应用程序接口(api)、动态链接库(dll)、ip地址(ip);基于以上五种关系定义了如下五种关系:app创建(create)file、app包含(involve)api、api属于(belong)dll、app发送数据(send)至ip地址、app调用(invoke)dll。41.meta-path(元路径)用来表示对象类型之间的一系列关系,它在开始类型和结束类型之间定义了一个新的复合关系,基于以上五类实体和五种关系,定义了六条meta-path42.1app→file→app2app→ip→app3app→api→app4app→dll→app5app→api→dll→api→app6app→api→ip→api→app43.在一种可能的实施方式中,表示学习模块即为将异质信息网络中的节点映射到一个远小于节点数量的d维向量空间中,并可以保持原有的结构和语义信息,我们基于不同meta-path来引导的随机游走,得到异质信息网络中上下文的映射,然后使用skip-gram算法学习异质信息网络中顶点的表示。44.随机游走(randomwalk)是一个由随机变量v1、v2、v3...vn构成的随机过程,节点vi 1从vi的邻居节点中随机选取,p(vi 1|vi)呈正则化概率分布,且概率和为1,基于meta-path的随机游走指的是给定一系列meta-path实例集合:s={pj}j=1n,每一条meta-path形如a1→a2→…→al。45.在节点跳转时,传统的随机游走的选择是随机的,而在meta-path引导的随机游走算法中的,我们每次从集合s中随机选择一条meta-pathpk,定义第i步的转移概率为:[0046][0047]其中分母表示节点类型为at 1的vati的领居,aapp表示app类型的节点,λ表示meta-path实例集合s中以aappat 1开始的meta-path的实例个数。其转移概率的含义为:如果第i步处于的节点是app,则偏向于去实例数多的at 1类型的节点,如果第i步处于的节点不是app类型,则必须按照meta-path规定的路径类型进行游走,以此可以更多保留meta-path中的信息。[0048]按meta-path引导进行随机游走得到若干条犹如v1、v2、v3...vn的序列,将其视为语料样本,语料库中的句子即为样本随机游走生成的节点序列,将每个顶点视为skip-gram中的词,序列中的前后顶点视为上下文,使用skip-gram算法进行训练,模型的输出概率代表词典中每个词有多大可能性与给定的词同时出现,实际上我们需要的并不是这个概率而是模型隐层的权重矩阵,将这个矩阵视为查找表(lookuptable),通过矩阵相乘得到每个节点的向量表示,算法设置每个节点向量的维度为64。[0049]对于每个app类型节点我们使用广度优先搜索(bfs)其1阶领居和2阶领居,共搜索63个节点,当搜索至第63个1阶/2阶领居时停止搜索,若1阶/2阶领居不足64个时使用64维的0向量填充,将63个1阶/2阶领居的向量表示与该app类型节点的表示向量进行堆叠得到一个64x64的矩阵,并将此矩阵转换成一张64x64的黑白图像。[0050]对于待预测的应用程序,通过与该app相关联的ip、api、file、dll嵌入原有异质信息网络得到一个新的异质信息网络,同样使用广度优先搜索(bfs)其1阶领居和2阶领居,共搜索63个节点,当搜索至第63个1阶/2阶领居时停止搜索,若1阶/2阶领居不足64个时使用64维的0向量填充,将63个1阶/2阶领居的向量表示与一个64维的0向量进行堆叠得到一个64x64的矩阵,并将此矩阵转换成一张64x64的黑白图像。[0051]在一种可能的实施方式中,其分类器训练以及预测模块均为选用inception-resnetv1神经网络模型进行训练和预测,这是一个由google提出并开源的轻量化卷积神经网络架构,计算量与inceptionv3相当,其总体架构如图4所示,在提出的算法中神经网络模型的input层的维度需要修改为64x64x1,并且需要对后面的结构进行适应化的修改,最后由softmax层输出该app属于良性软件或恶意软件的概率,选择概率较大的类别做为预测结果进行输出。[0052]尽管已经示出和描述了本发明实施的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。[0053]需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。[0054]下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献