恶意代码检测方法、装置、设备及存储介质制造方法及图纸

技术编号:28036196 阅读:19 留言:0更新日期:2021-04-09 23:18
本发明专利技术属于安全检测技术领域,公开了一种恶意代码检测方法、装置、设备及存储介质。该方法对待检测代码进行静态分析获得静态特征;对待检测代码进行动态分析获得动态特征;根据静态特征和动态特征构建特征模型;基于预设分类算法对特征模型进行分类,获得待检测代码的分类结果;根据分类结果判断待检测代码是否为恶意代码。本发明专利技术中通过动、静态分析两种模式互补进而提高特征模型准确性,特征模型输出的分类结果将动、静态分析后的结果进行整合,将动、静态分析的优势结合,既能有效避开恶意代码对抗传统提取特征的行为干扰,又能提高特征模型检测速度,有利于提高恶意代码的识别能力,降低特征模型的失误率,提高特征模型检测的泛化能力。

【技术实现步骤摘要】
恶意代码检测方法、装置、设备及存储介质
本专利技术涉及安全检测
,尤其涉及一种恶意代码检测方法、装置、设备及存储介质。
技术介绍
随着互联网行业的飞速发展,恶意代码的数量也呈现指数级的增长。其中各种恶意代码的变体开始逐渐显露出来,造成社会各方面的损失。由于恶意代码的数量和种类越来越多,加上混淆、变异等技术的兴起,使得恶意代码检测变得越来越困难。目前恶意代码检测方法在面对加壳、恶意代码的变种等方面具有缺陷,或者是具有费时费力、不能离线操作的缺陷。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的在于提供一种恶意代码检测方法、装置、设备及存储介质,旨在解决现有恶意代码检测方法难以识别加壳和恶意代码的变种,且具有费时费力和不能离线操作的技术问题。为实现上述目的,本专利技术提供了一种恶意代码检测方法,所述方法包括以下步骤:对待检测代码进行静态分析,以获得所述待检测代码的静态特征;对所述待检测代码进行动态分析,以获得所述待检测代码的动态特征;根据所述静态特征和所述动态特征构建特征模型;基于预设分类算法对所述特征模型进行分类,以获得所述待检测代码的分类结果;根据所述分类结果判断所述待检测代码是否为恶意代码。可选地,所述对待检测代码进行静态分析,以获得所述待检测代码的静态特征的步骤,包括:通过反汇编技术获取待检测代码对应的指令集;根据预设自然语言处理N-Gram模型对所述指令集进行处理,以获得所述待检测代码的静态特征。可选地,所述根据预设自然语言处理N-Gram模型对所述指令集进行处理,以获得所述待检测代码的静态特征的步骤,包括:根据预设自然语言处理N-Gram模型确定预设拆分顺序和预设拆分数量;根据所述预设拆分顺序和所述预设分组数量对所述指令集进行拆分,以获得若干拆分指令集;根据所述拆分指令集确定所述待检测代码的静态特征。可选地,所述根据所述拆分指令集确定所述待检测代码的静态特征的步骤,包括:根据预设代码特征从所述拆分指令集中确定指令集特征;通过指令集特征对所述待检测代码进行特征匹配,以获得匹配次数;将所述匹配次数作为所述待检测代码的静态特征。可选地,所述通过反汇编技术获取待检测代码对应的指令集的步骤,包括:通过反汇编技术中的反编译器将待检测代码转化为汇编语言;基于所述反编译器对所述汇编语言进行预设层次静态分析,以获得函数流图;根据所述函数流图对所述待检测代码进行处理,以获得函数片断;根据所述函数片断生成待检测代码对应的指令集。可选地,所述根据所述函数片断生成待检测代码对应的指令集的步骤之前,还包括:对所述待检测代码中的汇编指令进行多维度匹配,以获得多维度匹配结果;相应地,所述根据所述函数片断生成待检测代码对应的指令集的步骤,包括:根据所述多维度匹配结果和所述函数片断生成指令集。可选地,所述对所述待检测代码进行动态分析,以获得所述待检测代码的动态特征的步骤,包括:将所述待检测代码上传到沙箱环境中,获取所述待检测代码对应的动态分析报告;通过卷积神经网络对所述动态分析报告进行特征提取,以获得所述待检测代码的动态特征。可选地,所述将所述待检测代码上传到沙箱环境中,获取所述待检测代码对应的动态分析报告的步骤,包括:将所述待检测代码上传到沙箱环境中,以使所述待检测代码在沙箱环境中运行;根据预设打桩点获取所述待检测代码在运行过程中的动态行为数据;根据所述动态行为数据生成所述待检测代码对应的动态分析报告。可选地,所述通过卷积神经网络对所述动态分析报告进行特征提取,以获得所述待检测代码的动态特征的步骤,包括:通过所述动态分析报告获取所述动态行为数据,并根据所述动态行为数据确定行为特征;将所述动态行为数据转化为向量表示的API调用序列;根据卷积神经网络对所述行为特征和所述API调用序列进行特征提取,以获得所述待检测代码的动态特征。可选地,所述根据卷积神经网络对所述行为特征和所述API调用序列进行特征提取,以获得所述待检测代码的动态特征的步骤之前,还包括:构建预设自然语言处理文本分类模型;根据所述预设自然语言处理文本分类模型分别对所述行为特征和所述API调用序列进行预处理,以获得目标行为特征和目标API调用序列;相应地,所述根据卷积神经网络对所述行为特征和所述API调用序列进行特征提取,以获得所述待检测代码的动态特征的步骤,包括:根据卷积神经网络对所述目标行为特征和所述目标API调用序列进行特征提取,以获得所述待检测代码的动态特征。可选地,所述根据所述静态特征和所述动态特征构建特征模型的步骤,包括:将所述静态特征和所述动态特征转化为定量特征;对所述定量特征进行合并,以构建初始特征模型;对所述初始特征模型进行降维处理,以去除所述初始特征模型中的冗余特征和低贡献度特征,获得特征模型。可选地,所述对所述初始特征模型进行降维处理,以去除所述初始特征模型中的冗余特征和低贡献度特征,获得特征模型的步骤,包括:对所述初始特征模型中的同类特征进行关联挖掘,以获得互为冗余的特征的目标特征;基于预设数量去除所述目标特征中的冗余特征,以获得冗余特征模型;基于随机森林算法去除所述冗余特征模型中的低贡献度特征,以获得特征模型。可选地,所述基于预设分类算法对所述特征模型进行分类,以获得所述待检测代码的分类结果的步骤,包括:基于提升树模型算法对所述特征模型进行分类,以获得所述待检测代码的分类结果。此外,为实现上述目的,本专利技术还提出一种恶意代码检测装置,所述恶意代码检测装置包括:静态分析模块,用于对待检测代码进行静态分析,以获得所述待检测代码的静态特征;动态分析模块,用于对所述待检测代码进行动态分析,以获得所述待检测代码的动态特征;构建模块,用于根据所述静态特征和所述动态特征构建特征模型;分类模块,用于基于预设分类算法对所述特征模型进行分类,以获得所述待检测代码的分类结果;判断模块,用于根据所述分类结果判断所述待检测代码是否为恶意代码。可选地,所述静态分析模块,还用于通过反汇编技术获取待检测代码对应的指令集;所述静态分析模块,还用于根据预设自然语言处理N-Gram模型对所述指令集进行处理,以获得所述待检测代码的静态特征。可选地,所述静态分析模块,还用于根据预设自然语言处理N-Gram模型确定预设拆分顺序和预设拆分数量;所述静态分析模块,还用于根据所述预设拆分顺序和所述预设分组数量对所述指令集进行拆分,以获得若干拆分指令集;所述静态分析模块,还用于根据所述拆分指令集确定所述待检测代码的静态特征。可选地,所述静态分析模块,还用本文档来自技高网...

【技术保护点】
1.一种恶意代码检测方法,其特征在于,所述恶意代码检测方法包括:/n对待检测代码进行静态分析,以获得所述待检测代码的静态特征;/n对所述待检测代码进行动态分析,以获得所述待检测代码的动态特征;/n根据所述静态特征和所述动态特征构建特征模型;/n基于预设分类算法对所述特征模型进行分类,以获得所述待检测代码的分类结果;/n根据所述分类结果判断所述待检测代码是否为恶意代码。/n

【技术特征摘要】
1.一种恶意代码检测方法,其特征在于,所述恶意代码检测方法包括:
对待检测代码进行静态分析,以获得所述待检测代码的静态特征;
对所述待检测代码进行动态分析,以获得所述待检测代码的动态特征;
根据所述静态特征和所述动态特征构建特征模型;
基于预设分类算法对所述特征模型进行分类,以获得所述待检测代码的分类结果;
根据所述分类结果判断所述待检测代码是否为恶意代码。


2.如权利要求1所述的恶意代码检测方法,其特征在于,所述对待检测代码进行静态分析,以获得所述待检测代码的静态特征的步骤,包括:
通过反汇编技术获取待检测代码对应的指令集;
根据预设自然语言处理N-Gram模型对所述指令集进行处理,以获得所述待检测代码的静态特征。


3.如权利要求2所述的恶意代码检测方法,其特征在于,所述根据预设自然语言处理N-Gram模型对所述指令集进行处理,以获得所述待检测代码的静态特征的步骤,包括:
根据预设自然语言处理N-Gram模型确定预设拆分顺序和预设拆分数量;
根据所述预设拆分顺序和所述预设分组数量对所述指令集进行拆分,以获得若干拆分指令集;
根据所述拆分指令集确定所述待检测代码的静态特征。


4.如权利要求3所述的恶意代码检测方法,其特征在于,所述根据所述拆分指令集确定所述待检测代码的静态特征的步骤,包括:
根据预设代码特征从所述拆分指令集中确定指令集特征;
通过指令集特征对所述待检测代码进行特征匹配,以获得匹配次数;
将所述匹配次数作为所述待检测代码的静态特征。


5.如权利要求2所述的恶意代码检测方法,其特征在于,所述通过反汇编技术获取待检测代码对应的指令集的步骤,包括:
通过反汇编技术中的反编译器将待检测代码转化为汇编语言;
基于所述反编译器对所述汇编语言进行预设层次静态分析,以获得函数流图;
根据所述...

【专利技术属性】
技术研发人员:崔哲
申请(专利权)人:北京鸿腾智能科技有限公司
类型:发明
国别省市:北京;11

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

1