[发明专利]一种恶意代码自动化检测平台及方法有效
申请号: | 201810685518.1 | 申请日: | 2018-06-28 |
公开(公告)号: | CN108920954B | 公开(公告)日: | 2020-08-04 |
发明(设计)人: | 张东红;张震宇 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京科迪生专利代理有限责任公司 11251 | 代理人: | 安丽;成金玉 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 恶意代码 自动化 检测 平台 方法 | ||
1.一种恶意代码自动化检测平台,其特征在于:通过使用线性扫描反汇编算法对样本进行反汇编,提高样本反汇编和提取操作码特征的成功率和效率,增大最终用于恶意代码检测模型训练的样本数量,并实现了这一平台,来提高恶意代码检测效率和准确率,更加有效检测出可执行样本是否是恶意代码;
具体包括样本采集模块、样本预处理模块、数据集划分模块、特征提取模块、特征选择模块、训练检测模块;
样本采集模块:根据预先配置的采集来源以及采集规则,使用自动化采集脚本,自动化访问网络地址或本地样本路径,根据采集规则进行分析和下载样本;
样本预处理模块:对采集样本进行自动化预处理,自动筛选出所述样本中的可执行样本文件,并对筛选的所述可执行样本文件进行自动化检测,并保存相应的检测结果;所述对可执行样本文件进行检测,是指使用现有杀毒软件或者在线恶意代码检测引擎进行检测,得到所述样本文件是否是恶意代码,以及恶意代码所属的恶意代码家族类别,从而得到筛选并检测后的可执行样本;
数据集划分模块:根据用户配置,将筛选并检测后的可执行样本进行数据划分,得到两个样本数据集合;数据划分是将检测后的可执行样本数据集合划分成训练数据集和测试数据集;测试数据集与训练数据集互斥,即测试数据集中的样本不在训练数据集中出现,也没有在模型训练过程中使用过;
特征提取模块:对训练数据集和测试数据集中的样本分别使用线性扫描反汇编算法进行反汇编,分别得到训练数据集和测试数据集中样本的反汇编代码,然后根据用户配置分别从训练数据集和测试数据集反汇编得到的反汇编代码中提取每个集合中样本的操作码序列特征;
特征选择模块:首先加载用户配置的操作码序列特征词表,或者根据用户配置的特征选择方法和特征衡量指标从训练数据集中,选择得到符合要求的操作码序列特征子集,然后根据用户配置的操作码序列词表或者经过选择得到的操作码序列特征子集对训练数据集和测试数据集中的每个样本进行向量化表示,得到每个样本的特征向量;所述操作码序列词表是指用户预先配置的,用于向量化样本的操作码序列集合;
训练检测模块:根据用户配置,选择相应的分类模型算法,使用表示每个训练数据集样本的特征向量训练恶意代码检测模型,并保存训练完成得到的恶意代码检测模型,用以对待检测样本进行检测,得到进行检测的样本是否是恶意代码,以及恶意代码家族类别;
所述使用线性扫描反汇编算法进行反汇编得到样本的反汇编代码的过程是:首先加载需要进行反汇编的可执行样本,然后从该加载的可执行样本的第一个可执行字节开始,根据汇编手册逐指令进行反汇编,得到每条指令的反汇编代码进行保存。
2.根据权利要求1所述的恶意代码自动化检测平台,其特征在于:所述训练检测模块中:根据用户配置,选择相应的分类模型算法;该模块通过预先实现分类模型算法,然后运行过程中根据用户配置选择。
3.一种恶意代码自动化检测方法,其特征在于:通过使用线性扫描反汇编算法对样本进行反汇编,提高样本反汇编和提取操作码特征的成功率和效率,增大最终用于恶意代码检测模型训练的样本数量,并实现了这一平台,来提高恶意代码检测效率和准确率,更加有效检测出可执行样本是否是恶意代码;
具体实现步骤如下:
(1)对用户自定义添加或者检测平台预定义的采集地址及规则进行自动化分析和采集样本,得到更有效、更全面的样本数据集;
(2)对采集得到样本进行自动化预处理和分析,筛选出可执行样本文件,并根据用户自定义添加或者检测平台预定义的配置对可执行样本进行检测,得到每个样本的类别;
(3)根据用户配置选择相应的数据划分方法将筛选和检测后的可执行样本划分为训练数据集和测试数据集;测试数据集与训练数据集尽可能互斥,即测试数据集中的样本尽量保证不在训练数据集中出现、也未在训练过程中使用过;
(4)使用线性扫描反汇编算法对可执行样本进行反汇编,得到其反汇编代码,然后根据用户配置提取相应的操作码序列特征;使用线性扫描反汇编算法进行反汇编得到样本的反汇编代码的过程是:首先加载需要进行反汇编的可执行样本,然后从该加载的可执行样本的第一个可执行字节开始,根据汇编手册逐指令进行反汇编,得到每条指令的反汇编代码进行保存;
(5)对可执行样本进行向量化表示,向量化过程根据用户定义的操作码序列词表,或者根据配置选择操作码序列特征子集对样本进行向量化;
(6)使用表示每个样本的特征向量,根据配置,训练相应的恶意代码分类检测模型,并将训练得到的恶意代码检测模型进行保存,用于检测对待检测样本进行检测,判断其是否是恶意代码,以及恶意代码家族类别。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810685518.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种打磨过程中最优磨具粒度的选择方法
- 下一篇:一种密封性能好的阀门