[发明专利]一种针对数据文件中可执行代码的检测方法及系统有效
申请号: | 201610313139.0 | 申请日: | 2016-05-12 |
公开(公告)号: | CN107368740B | 公开(公告)日: | 2020-10-27 |
发明(设计)人: | 聂眉宁;应凌云;苏璞睿;冯登国 | 申请(专利权)人: | 中国科学院软件研究所 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 司立彬 |
地址: | 100190 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 数据文件 可执行 代码 检测 方法 系统 | ||
本发明公开了一种针对数据文件中可执行代码的检测方法及系统。本方法为:1)对每一待分析样本进行解析,识别该样本的文件格式;2)判断该文件格式是否为设定的安全文件格式,如果不是,则根据该文件格式选取对应的若干解码方法分别对该样本的文件内容进行解码,得到若干份解码后的数据内容;3)根据该样本的文件格式选择对应的若干可执行代码检测方案分别对步骤2)得到的每一份解码数据内容进行检测;4)根据步骤3)的检测结果确定该样本中是否存在可执行代码。本发明能有效检测数据文件中隐藏的未知恶意代码。
技术领域
本发明属于恶意代码检测技术领域,具体涉及一种针对数据文件中可执行代码的检测方法及系统。
背景技术
随着社会的不断发展和进步,计算机和网络在社会各个领域的应用越来越广泛。与此同时,恶意代码攻击带来的危害也日益严重,尤其是隐藏在Word文档、PowerPoint文档、PDF文档等数据文件中的可执行代码攻击越演越烈,成为了新一代攻击技术的主流手段,对公共安全和信息保密造成严重影响。因此,针对数据文件中可执行代码的检测显得十分必要。
当前的数据文件可执行代码检测技术,通常使用以下几种方法:
1.对数据文件进行静态二进制扫描,对比恶意代码特征库中的已有恶意代码特征,实现可执行代码检测。由于该方法只能针对已知恶意代码进行检测,而数据文件中的可执行代码通常会包含未知恶意代码、变形恶意代码、甚至特种恶意代码,并针对特定环境的软件漏洞或0Day漏洞进行攻击,对于这种情况,该方法的检测能力不足。
2.对数据文件的加载过程进行动态调试,分析该过程中可能产生的异常,实现可执行代码检测。由于该方法不容易界定异常产生自数据文件中的可执行代码还是加载数据文件的进程本身,加上分析过程需要大量专业的人工干预,同时还需应对数据文件可执行代码中可能包含的反调试技术,因此实际操作难度较大,准确度较低。
3.将数据文件置入沙箱运行,动态分析其运行过程,提取行为特征,与行为白名单做对比,实现可执行代码检测。由于数据文件中可执行代码的触发条件对运行环境的依赖较高,通常会针对特定载体、特定版本的特定漏洞进行攻击,因此,为提高分析准确性,需要准备大量虚拟环境、进行大量重复测试,空间复杂度和时间复杂度较高。
综上所述,目前数据文件中可执行代码的检测方法,其主要缺陷在于:针对未知攻击代码的检测能力不足、需要大量专业的人工分析干预、空间复杂度和时间复杂度较高、准确性不足。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种针对数据文件中可执行代码的检测方法及系统。该方法首先对样本数据文件的文件类型进行识别,然后根据不同的文件类型选用多种不同的检测方案进行检测。这些检测方案包括内嵌可执行模块检测、重定位指令检测、特殊敏感指令检测、敏感API调用检测、敏感字符编码检测、内嵌可执行脚本检测等,最后根据各项方案的检测结果综合分析评估数据文件中是否存在可执行代码,并对分析结果进行记录和汇报。然而以上检测方案直接应用到数据文件上是不合适的,因为一方面数据文件在内存中的最终形式取决于宿主程序对该文件的解析和布局,另一方面恶意代码本身也可能采用不同的编码隐藏自身。因此,本方法一方面根据文件格式对文件内容进行解析,从而得到文件在内存中的实际布局形式(即包含布局信息的内存内容。例如一个doc文档,Office程序不是简单地将该文档读入内存就能显示出来,而是根据格式标准对其进行解析、解码、布局),另一方面采用多种解码方式应对恶意代码可能采用的常用加密手段,在此基础上应用以上公知检测方法识别恶意代码片段,使得现有的多种检测方案可以适用于数据文件。
一种针对数据文件中可执行代码的检测方法及系统,其步骤如下:
1)调用文件格式解析模块对样本文件进行解析,根据文件特征识别样本文件的文件格式,并根据该格式的标准处理流程对其文件内容进行解析,以获取该样本(如果被实际打开后)在内存中的布局形式。文件格式解析模块以扩展插件的形式存在,并可以随时补充插件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院软件研究所,未经中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610313139.0/2.html,转载请声明来源钻瓜专利网。