[发明专利]一种检测恶意程序的方法、装置及虚拟机有效
申请号: | 201310594976.1 | 申请日: | 2011-09-14 |
公开(公告)号: | CN103617391B | 公开(公告)日: | 2017-01-18 |
发明(设计)人: | 邵坚磊;谭合力 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F9/455 |
代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 检测 恶意程序 方法 装置 虚拟机 | ||
本发明专利申请是申请日为2011年9月14日、申请号为201110272443.2、名称为“一种检测恶意程序的方法、装置及虚拟机”的中国发明专利申请的分案申请。
技术领域
本申请涉及信息安全技术领域,特别是涉及一种检测恶意程序的方法、装置及虚拟机。
背景技术
恶意程序通常是指未获得授权而非法在计算机系统中运行的程序。例如,计算机病毒就是一种运行在计算机系统中的恶意程序,可对计算机系统的安全性造成威胁。
随着计算机和网络技术的发展,出现了形式多样的计算机病毒。其中,Rootkit是一种内核级的木马病毒,它是一种隐藏其他程序或进程的软件,可能是一个或一个以上的软件组合,广义而言,Rootkit也可视为一项技术。
在现代操作系统中,应用程序不能直接访问硬件,而是通过调用操作系统提供的接口来使用硬件,而操作系统依赖内核空间来管理和调度这些应用。内核空间由四大部分组成,分别是:进程管理(负责分配CPU时间)、文件访问(把设备调配成文件系统,并提供一个一致的接口供上层程序调用)、安全控制(负责强制规定各个进程的具体的权限和单独的内存范围,避免各进程之间发生冲突)和内存管理(负责进程运行时对内存资源的分配、使用、释放和回收)。内核是一种数据结构,Rootkit技术通过修改内核的数据结构来隐藏其他程序的进程、文件、网络通讯和其它相关信息(比如注册表和可能因修改而产生的系统日志等)。
Bootkit是更高级的Rootkit,Bootkit通过感染MBR(Master Boot Record,磁盘主引导记录)的方式,实现绕过内核检查和启动隐身,即Bootkit是一种基于MBR的Rootkit。可以认为,所有在开机时比Windows内核更早加载、实现内核劫持的技术,都可以称之为Bootkit,例如后来的BIOS Rootkit、VBootkit、SMM Rootkit等。
目前常规安全软件对于各种恶意程序(如病毒)的查杀,主要基于传统特征码的检测技术。这是因为通常情况下各种恶意程序在运行过程中都会运行一些特有的指令代码(即特征码),通过查找到这些的特征码,就可以检测出恶意程序。例如对于Bootkit的检测,由于这种MBR病毒的特殊性,其一般会驻留在高端内存(即内存中的高地址位),因此通过搜索高端内存中是否有特征码,就可以检测出Bootkit。
但是,越来越多的病毒出现了变形,有些通过花指令,有些通过变形代码,甚至现在大多病毒都是事先加密,运行时动态解密后再运行。所以,对于这些变形的病毒而言,在达到同样效果的情况下,指令是随机变化的,按照上述方法检测时找不到特征码,因此可绕过常规安全软件的查杀。
综上所述,目前需要解决的问题是:如何检测出变形的恶意程序,尤其是基于MBR的Bootkit或类似于Bootkit的病毒。
发明内容
本申请提供了一种检测恶意程序的方法、装置及虚拟机,以解决现有技术无法检测出变形的恶意程序的问题。
为了解决上述问题,本申请公开了一种检测恶意程序的方法,包括:
设置虚拟内存;
读取主引导记录MBR并保存到所述虚拟内存;
模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
优选的,所述检测所述虚拟内存是否被修改,包括:检测所述虚拟内存的大小是否改变,如果改变,则所述虚拟内存被修改;否则,未被修改。
优选的,所述设置虚拟内存之前,还包括:设置虚拟CPU;则所述模拟执行虚拟内存中主引导记录MBR中的每一条指令,包括:由所述虚拟CPU模拟执行虚拟内存中主引导记录MBR中的每一条指令。
其中,所述设置虚拟CPU包括:初始化虚拟CPU;所述设置虚拟内存包括:初始化BIOS数据区,所述BIOS数据区保存虚拟内存的大小。
优选的,所述模拟执行虚拟内存中主引导记录MBR中的每一条指令之前,还包括:设置虚拟硬盘;则所述模拟执行虚拟内存中主引导记录MBR中的每一条指令包括:将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘;从所述虚拟硬盘读取主引导记录MBR,并模拟执行主引导记录MBR中的每一条指令。
优选的,所述方法还包括:对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
本申请还提供了一种检测恶意程序的装置,包括:
第一设置模块,用于设置虚拟内存;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310594976.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种竹子注射装置
- 下一篇:竹荪生态高效栽培方法