恶意软件处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:37174694 阅读:11 留言:0更新日期:2023-04-20 22:44
本申请提供一种恶意软件处理方法、装置、电子设备及存储介质,涉及计算机网络安全技术领域。该方法包括:获取待测软件的可执行文件,并生成可执行文件的控制流图;初始化控制流图中各节点的特征向量,得到控制流图的初始特征矩阵;根据控制流图的初始特征矩阵,生成控制流图的全局图向量;对控制流图的全局图向量对应的待测软件进行预测,得到待测软件是否为恶意软件的预测结果;根据预测结果,对待测软件执行对应处理。上述方式增加了恶意软件检测的准确性,进而提高了恶意软件处理的正确率。进而提高了恶意软件处理的正确率。进而提高了恶意软件处理的正确率。

【技术实现步骤摘要】
恶意软件处理方法、装置、电子设备及存储介质


[0001]本申请涉及计算机网络安全
,尤其涉及一种恶意软件处理方法、装置、电子设备及存储介质。

技术介绍

[0002]随着软件工程技术的不断发展,恶意软件的种类和数量也随之快速增长,因此恶意软件已经成为当前网络空间中最严重的威胁之一。为了有效地检测恶意软件,目前主要有两种方法:静态分析方法和动态分析方法,其中:静态分析方法通过提取待测软件中的静态特征来判断其是否为恶意软件,而动态分析方法则通过分析待测软件在系统中运行时产生的行为数据来判断其是否为恶意软件。由于动态分析方法的计算资源的消耗非常大,因此与动态分析方法相比,该静态分析方法具有一定的优势。
[0003]传统的静态分析方法可以是基于签名的检测方法,其通过判断待测软件的签名是否存在于恶意软件的签名库的方式来判断该待测软件是否为恶意软件。但是该方法具有只能检测已知的恶意软件的缺点。近来,随着机器学习特别是深度学习技术的不断发展,以及为了能够检测到未知的恶意软件,研究人员开始利用该领域中的模型来检测恶意软件。该类方法通常首先从待测软件中提取各种不同的特征(包括字符串信息、函数调用、字节序列、灰度图等),然后利用各种模型来进行恶意软件的检测。
[0004]但是该类恶意软件的检测方法也存在局限性,即这些检测方法在提取软件特征时,提取到的特征很容易被修改,从而在检测时很容易被绕过,得到错误的检测结果,进而导致出现较高的软件处理的错误率。

技术实现思路

[0005]本申请提供了一种恶意软件处理方法、装置、电子设备及存储介质,用以解决现有恶意软件检测方法因提取到的软件的特征容易被篡改导致的检测准确率低,进而导致对软件处理的错误率高的技术问题。
[0006]根据本申请的第一方面,提供了一种恶意软件处理方法,包括:
[0007]获取待测软件的可执行文件,并生成所述可执行文件的控制流图;
[0008]初始化所述控制流图中各节点的特征向量,得到所述控制流图的初始特征矩阵;
[0009]根据所述控制流图的初始特征矩阵,生成所述控制流图的全局图向量;
[0010]对所述控制流图的全局图向量对应的待测软件进行预测,得到所述待测软件是否为恶意软件的预测结果;
[0011]根据所述预测结果,对所述待测软件执行对应处理。
[0012]可选地,所述根据所述控制流图的初始特征矩阵,生成所述控制流图的全局图向量,包括:
[0013]采用预设多层图神经网络对所述控制流图的初始特征矩阵进行更新,得到更新的特征矩阵;
[0014]根据所述更新的特征矩阵,计算所述控制流图的全局图向量。
[0015]可选地,所述采用预设多层图神经网络对所述控制流图的初始特征矩阵进行更新,得到更新的特征矩阵,包括:
[0016]获取所述控制流图的邻接矩阵,并根据所述控制流图的邻接矩阵,计算归一化拉普拉斯矩阵;
[0017]将所述控制流图的初始特征矩阵输入至所述预设多层图神经网络,以使所述预设多层图神经网络基于所述归一化拉普拉斯矩阵更新所述控制流图的初始特征矩阵,并输出更新的特征矩阵。
[0018]可选地,所述根据所述更新的特征矩阵,计算所述控制流图的全局图向量,包括:
[0019]对所述更新的特征矩阵中每个节点的特征向量均进行线性变化,得到每个节点线性变化后的特征向量;
[0020]对所有节点线性变化后的特征向量进行最大值池化处理,得到全局池化向量,并将所述全局池化向量确定为所述控制流图的全局图向量。
[0021]可选地,所述生成所述可执行文件的控制流图,包括:
[0022]对所述可执行文件进行反汇编处理,得到所述待测软件的汇编代码;
[0023]将所述待测软件的汇编代码划分成基本块,并以所述基本块为节点构建所述可执行文件的控制流图。
[0024]可选地,初始化所述控制流图中各节点的特征向量,得到所述控制流图的初始特征矩阵,包括:
[0025]针对所述控制流图中的每个节点,分别统计所述节点包含的各类型的汇编代码的数值特征,并基于所述节点包含的各类型的汇编代码的数值特征,确定所述节点的特征向量;
[0026]将所述控制流图中所有节点的特征向量合并成所述控制流图的初始特征矩阵。
[0027]可选地,对所述控制流图的全局图向量对应的待测软件进行预测,得到所述待测软件是否为恶意软件的预测结果,包括:
[0028]利用预设的多层全连接网络,将所述控制流图的全局图向量转换成一维的图向量;
[0029]利用预设的激活函数,输出对应于所述一维的图向量的预测概率值;其中,所述预测概率值用于反映所述待测软件为恶意软件的概率;
[0030]根据所述预测概率值和预设阈值的比较结果,确定所述待测软件是否为恶意软件的预测结果。
[0031]根据本申请的第二方面,提供了一种恶意软件处理装置,包括:
[0032]获取生成模块,用于获取待测软件的可执行文件,并生成所述可执行文件的控制流图;
[0033]初始化模块,用于初始化所述控制流图中各节点的特征向量,得到所述控制流图的初始特征矩阵;
[0034]生成模块,用于根据所述控制流图的初始特征矩阵,生成所述控制流图的全局图向量;
[0035]预测模块,用于对所述控制流图的全局图向量对应的待测软件进行预测,得到所
述待测软件是否为恶意软件的预测结果;
[0036]处理模块,用于根据所述预测结果,对所述待测软件执行对应处理。
[0037]根据本申请的第三方面,提供了一种电子设备,包括:至少一个处理器和存储器;
[0038]所述存储器存储计算机执行指令;
[0039]所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面所述的恶意软件处理方法。
[0040]根据本申请的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上第一方面所述的恶意软件处理方法。
[0041]根据本申请的第五方面,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面所述的恶意软件处理方法。
[0042]本申请提供的一种恶意软件处理方法,获取待测软件的可执行文件,并生成可执行文件的控制流图;初始化控制流图中各节点的特征向量,得到控制流图的初始特征矩阵;根据控制流图的初始特征矩阵,生成控制流图的全局图向量;对控制流图的全局图向量对应的待测软件进行预测,得到待测软件是否为恶意软件的预测结果;根据预测结果,对待测软件执行对应处理。
[0043]本申请采用控制流图的全局图向量来表征待测软件的结构化信息,由于控制流图自身就有不易被篡改的优势,因此基于控制流图的全局图向量,在对待测软件进行预测时,结构化信息不易被绕过,能够得到准确的预测结果,进而能够提高对待测软件本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种恶意软件处理方法,其特征在于,包括:获取待测软件的可执行文件,并生成所述可执行文件的控制流图;初始化所述控制流图中各节点的特征向量,得到所述控制流图的初始特征矩阵;根据所述控制流图的初始特征矩阵,生成所述控制流图的全局图向量;对所述控制流图的全局图向量对应的待测软件进行预测,得到所述待测软件是否为恶意软件的预测结果;根据所述预测结果,对所述待测软件执行对应处理。2.根据权利要求1所述的方法,其特征在于,所述根据所述控制流图的初始特征矩阵,生成所述控制流图的全局图向量,包括:采用预设多层图神经网络对所述控制流图的初始特征矩阵进行更新,得到更新的特征矩阵;根据所述更新的特征矩阵,计算所述控制流图的全局图向量。3.根据权利要求2所述的方法,其特征在于,所述采用预设多层图神经网络对所述控制流图的初始特征矩阵进行更新,得到更新的特征矩阵,包括:获取所述控制流图的邻接矩阵,并根据所述控制流图的邻接矩阵,计算归一化拉普拉斯矩阵;将所述控制流图的初始特征矩阵输入至所述预设多层图神经网络,以使所述预设多层图神经网络基于所述归一化拉普拉斯矩阵更新所述控制流图的初始特征矩阵,并输出更新的特征矩阵。4.根据权利要求2所述的方法,其特征在于,所述根据所述更新的特征矩阵,计算所述控制流图的全局图向量,包括:对所述更新的特征矩阵中每个节点的特征向量均进行线性变化,得到每个节点线性变化后的特征向量;对所有节点线性变化后的特征向量进行最大值池化处理,得到全局池化向量,并将所述全局池化向量确定为所述控制流图的全局图向量。5.根据权利要求1所述的方法,其特征在于,所述生成所述可执行文件的控制流图,包括:对所述可执行文件进行反汇编处理,得到所述待测软件的汇编代码;将所述待测软件的汇编代码划分成基本块,并以所述基本块为节点构建所述可执行文件的控制流图。6.根据权利要求1所述的方法,其特征...

【专利技术属性】
技术研发人员:罗垚
申请(专利权)人:中国农业银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1