(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202111674113.6
(22)申请日 2021.12.31
(71)申请人 厦门服云信息科技有限公司
地址 361000 福建省厦门市软件园二期观
日路12号 403单元
(72)发明人 姚刚 陈奋 陈荣有 孙晓波
龚利军
(74)专利代理 机构 厦门市精诚新创知识产权代
理有限公司 3 5218
专利代理师 汪万龙
(51)Int.Cl.
G06F 21/56(2013.01)
G06F 16/35(2019.01)
G06F 40/289(2020.01)
G06N 20/00(2019.01)
(54)发明名称
一种恶意代码的检测方法、 装置及计算机可
读存储介质
(57)摘要
本发明提供了一种恶意代码的检测方法, 包
括: 获取待检测恶意代码文件的运行信息; 将运
行信息输入预先利用异构网络的特征训练的恶
意代码检测模 型, 输出待检测恶意代码文件的类
别; 其中, 通过如下步骤来训练恶意代码检测模
型: S1, 获取文件样本作为训练集; S2, 提取文件
样本的运行信息; S3, 构建异构网络; S4, 根据异
构网络范式, 获得异构网络针对每一异构网络范
式的关系邻接矩阵, 获得随机游走向量; S5, 利用
随机游走信息来构建及训练对应的词向量模型
和分类模型; S6, 对分类结果进行主角度加权来
确定待检测恶意代码文件所属的类别。 利用上述
技术方案, 充分利用了恶意代码的环境信息, 提
高了恶意代码文 件分类的准确率。
权利要求书2页 说明书11页 附图9页
CN 114579965 A
2022.06.03
CN 114579965 A
1.一种恶意代码的检测方法, 用于检测二进制恶意代码的所属类别, 其特征在于, 包
括:
获取待检测恶意代码文件的运行信 息, 所述运行信 息包括所述待检测恶意代码文件的
API调用信息、 或API调用信息和DL L调用信息;
将所获取的所述运行信 息输入预先利用异构网络的特征训练的恶意代码检测模型, 所
述恶意代码检测模型输出 所述待检测恶意代码文件所述的类别;
其中, 所述恶意代码检测模型包括词向量模型和分类模型, 通过如下步骤训练所述恶
意代码检测模型:
S1, 获取预定数量的恶意代码文件样本作为训练集;
S2, 提取所述恶意代码文件样本的运行信息, 所述恶意代码文件样本的运行信息包括
所述待检测恶意代码文件的API调用信息、 或API调用信息和DL L调用信息;
S3, 根据提取的所述运行消息构建异构网络, 所述异构网络的节点包括所述恶意代码
文件样本的文件名和API、 或所述多个待检测恶意代码文件的文件名、 API和DL L;
S4, 根据预定的多个不同的异构网络范式, 获得所述异构网络针对每一异构网络范式
的关系邻接矩阵, 并根据每一关系邻接矩阵, 获得所述恶意代码文件样本中每一样本针对
每一异构网络范式在所述异构网络中的随机游走向量, 所述随机游走向量示出选定节点与
其周围节点之间的关联关系, 其中, 所述异构网络范式定义了节点之间的关系;
S5, 利用所述文件样本针对每一异构网络范式获得的随机游走信 息来构建及训练与每
一异构网络范式对应的词向量模型和分类模型, 所述词向量模型的输入为对应的随机游走
向量, 所述词向量模型 的输出为经过处理后的随机游走特征向量, 所述分类模型 的输入为
随机游走 特征向量, 所述分类模型的输出为对应词向量模型的分类结果;
S6, 对所获得的与多个分类模型对应的多个分类结果进行主角度加权, 来确定所述待
检测恶意代码文件所属的类别。
2.根据权利要求1所述的方法, 其特征在于, 所述恶意代码文件样本为可执行文件, 所
述步骤S2中, 通过沙箱解析 所述可执行文件来获取 所述运行信息 。
3.根据权利要求2所述的方法, 其特 征在于,
所述恶意代码文件样本的运行信息还包括如下信息中的一个或多个: 文件的共现概
率、 网络调用信息;
所述异构网络还指示了所述恶意代码文件样本之间的如下关联信 息中的一个或多个:
共现关联信息和网络关联信息;
所述异构网络的节点还包括如下中的一个或多个: 所述多个恶意代码文件样本出现的
文件夹、 出现的压缩 包、 访问的网站、 产生的网络请求。
4.根据权利要求3所述的方法, 其特征在于, 所述不同的异构网络范式包括如下范式
MID1到MID4中的一个或多个:
如图5所示
其中, F表示待检测的恶意代码文件; A表示API; D表示DLL; I表示API关联的包含关系; B
表示DLL关联的属于关系。
5.根据权利要求4所述的方法, 其特征在于, 所述异构网络范式MID3对应的关系邻接矩
阵为i*j阶, 其中i表示恶意代码文件样本的总数量, j表示所有API的总数量; 该i*j阶矩阵权 利 要 求 书 1/2 页
2
CN 114579965 A
2中的每一个元 素的值指示了列对应的API在行对应的恶意代码文件样本中出现的次数;
其中, 针对所述MID3获得恶意代码文件样本的随机游走信息包括:
S7, 所述恶意代码文件样本在所述关系邻接矩阵中按照行游走, 遇到元素值不为零的
列时, 得到与所述文件样 本关联的第一API, 再按列 游走, 直到遇到元素值不为零的行, 得到
与所述第一API关联的第二文件样本, 获得第一组包 含F→A→F的向量;
S8, 以所述第二文件样本为初始文件, 转入执行所述S7, 得到与所述第二文件样本关联
的第二API和与所述第二API关联的第三文件样本, 获得第二组包 含F→A→F的向量;
所述第三文件样本继续游走, 循环执行所述S6和S7, 直到获得预定数量的F →A→F向
量。
6.根据权利要求1所述的方法, 其特征在于, 所述步骤S4包括将每一文件样本反复进行
随机游走, 直至 达到预定的游走次数。
7.根据权利要求1所述的方法, 其特征在于, 所述词向量模型为Word2vec词向量模型,
所述Word2vec词向量模型将输入的随机游走信息的维度降低到预定维度。
8.根据权利要求1所述的方法, 其特 征在于, 所述 步骤S6包括:
对所述多个词向量模型输出的向量进行主角度分析;
利用如下公式确定与所述多个词向量模型对应的分类结果的权重αi(i=1,...,m), 其
中, m为词向量模型的个数;
其中d(Yi,Yj)为不同词向量模型Yi和Yj对应的向量 空间的几何距
离。
9.一种恶意代码的检测装置, 其特征在于, 包括存储器和处理器, 所述存储器存储有至
少一段程序, 所述至少一段程序由所述处理器执行以实现如权利要求 1至8任一所述的恶意
代码的检测方法。
10.一种计算机可读存储介质, 其特征在于, 所述存储介质中存储有至少一段程序, 所
述至少一段程序由所述处理器执行以实现如权利要求1至8任一所述的恶意代码的检测方
法。权 利 要 求 书 2/2 页
3
CN 114579965 A
3
专利 一种恶意代码的检测方法、装置及计算机可读存储介质
文档预览
中文文档
23 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共23页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 19:28:47上传分享