CN102339371B - 一种检测恶意程序的方法、装置及虚拟机 - Google Patents

一种检测恶意程序的方法、装置及虚拟机 Download PDF

Info

Publication number
CN102339371B
CN102339371B CN2011102724432A CN201110272443A CN102339371B CN 102339371 B CN102339371 B CN 102339371B CN 2011102724432 A CN2011102724432 A CN 2011102724432A CN 201110272443 A CN201110272443 A CN 201110272443A CN 102339371 B CN102339371 B CN 102339371B
Authority
CN
China
Prior art keywords
virtual memory
instruction
virtual
boot record
main boot
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2011102724432A
Other languages
English (en)
Other versions
CN102339371A (zh
Inventor
邵坚磊
谭合力
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Hongxiang Technical Service Co Ltd
Original Assignee
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qizhi Software Beijing Co Ltd filed Critical Qizhi Software Beijing Co Ltd
Priority to CN201310594976.1A priority Critical patent/CN103617391B/zh
Priority to CN201310595022.2A priority patent/CN103617069B/zh
Priority to CN2011102724432A priority patent/CN102339371B/zh
Publication of CN102339371A publication Critical patent/CN102339371A/zh
Priority to US14/344,864 priority patent/US10146938B2/en
Priority to PCT/CN2012/080545 priority patent/WO2013037261A1/zh
Application granted granted Critical
Publication of CN102339371B publication Critical patent/CN102339371B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Abstract

本申请提供了一种检测恶意程序的方法、装置及虚拟机,以解决现有技术无法检测出变形的恶意程序的问题。所述方法包括:设置虚拟内存;读取主引导记录MBR并保存到所述虚拟内存;模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。本申请可以无视任何特征码变换技术,只要实际运行中发生了这个行为即可被检测出来。

Description

一种检测恶意程序的方法、装置及虚拟机
技术领域
本申请涉及信息安全技术领域,特别是涉及一种检测恶意程序的方法、装置及虚拟机。
背景技术
恶意程序通常是指未获得授权而非法在计算机系统中运行的程序。例如,计算机病毒就是一种运行在计算机系统中的恶意程序,可对计算机系统的安全性造成威胁。
随着计算机和网络技术的发展,出现了形式多样的计算机病毒。其中,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中的每一条指令进行反汇编,并输出显示。
本申请还提供了一种检测恶意程序的装置,包括:
第一设置模块,用于设置虚拟内存,所述虚拟内存模拟高端内存;
读取及保存模块,用于读取主引导记录MBR并保存到所述虚拟内存;
模拟执行模块,用于模拟执行虚拟内存中主引导记录MBR中的每一条指令;
检测模块,用于在所述模拟执行模块执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,触发所述模拟执行模块继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
优选的,所述检测模块通过检测所述虚拟内存的大小是否改变来判断是否被修改,如果改变,则所述虚拟内存被修改;否则,未被修改。
优选的,所述装置还包括:第二设置模块,用于设置虚拟CPU,所述虚拟CPU触发所述模拟执行模块和检测模块的执行。
优选的,所述装置还包括:第三设置模块,用于设置虚拟硬盘,并将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘;则所述模拟执行模块从所述虚拟硬盘读取主引导记录MBR,并模拟执行主引导记录MBR中的每一条指令。
优选的,所述装置还包括:反汇编引擎,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
本申请还提供了一种检测恶意程序的虚拟机,包括:
虚拟CPU初始化模块,用于初始化虚拟CPU;
虚拟内存初始化模块,用于初始化虚拟内存,并在初始化的过程中读取主引导记录MBR然后保存到所述虚拟内存,所述虚拟内存模拟高端内存;
虚拟内存,用于存储主引导记录MBR;
虚拟CPU,用于模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
优选的,所述虚拟机还包括:
虚拟硬盘初始化模块,用于初始化虚拟硬盘,并在初始化的过程中将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘,所述虚拟CPU从虚拟硬盘读取主引导记录MBR并模拟执行;
虚拟硬盘,用于存储拷贝的主引导记录MBR。
优选的,所述虚拟机还包括:
反汇编引擎,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
与现有技术相比,本申请包括以下优点:
首先,本申请在开机后并在加载操作系统文件之前,通过模拟的方式先将读取的主引导记录MBR存到所设置的虚拟内存中,然后模拟实现主引导记录MBR的加载执行过程,并且每当模拟执行完MBR中的一条指令后,检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
由于实际情况中,基于MBR的Bootkit或类似于Bootkit的病毒等恶意程序,即使进行了变形,也必须要驻留系统的高端内存,所以必然会修改高端内存,因此上述的检测方法通过设置虚拟内存来模拟高端内存,并通过检测虚拟内存是否被修改,就可以发现可疑的恶意程序,从而无视任何特征码变换技术,只要实际运行中发生了这个行为即可被检测出来。所述的检测方法在很大程度上可以检测出过去、现在和未来的基于MBR的Bootkit。
其次,本申请还实现了一种虚拟机,所述虚拟机通过实现虚拟CPU、虚拟内存、反汇编引擎、虚拟硬盘以及其他相关部分,如虚拟BIOS(Basic InputOutput System,基本输入输出系统)、虚拟I/O设备等,可以模拟实现主引导记录MBR的加载执行过程,并检测出是否存在Bootkit等恶意程序。而且,所述虚拟机既可以作为单独的工具,也可以作为动态库被其他程序调用,使用灵活。同时,考虑到性能和效率等实用性方面,整个虚拟机的实现控制在几百K字节内,是一种轻量级的虚拟机。
当然,实施本申请的任一产品不一定需要同时达到以上所述的所有优点。
附图说明
图1是现有技术中鬼影3中的代码示意图;
图2是现有技术中鬼影的一个变种代码的示意图;
图3是本申请实施例所述一种检测恶意程序的方法流程图;
图4是本申请实施例所述一种检测恶意程序的装置结构图;
图5是本申请另一实施例所述虚拟机的结构图;
图6是本申请实施例中正常的MBR运行后的显示结果示意图;
图7是本申请实施例中中了鬼影1后的MBR运行结果示意图;
图8是本申请实施例中中了鬼影3后的MBR运行结果示意图;
图9是本申请实施例中中了顶级Bootkit后的MBR运行结果示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
对于恶意程序的检测,尤其是对基于MBR的Bootkit或类似于Bootkit的病毒等恶意程序的检测,本申请提出一种检测方法,无论这些恶意程序有何种变形,都可以被检测出来。
下面首先介绍本申请提出的思路,如下:
正常情况下,计算机系统的开机过程是:
开机通电自检-->主板BIOS根据用户指定的启动顺序从软盘、硬盘或光驱进行启动-->系统BIOS将主引导记录MBR读入内存-->控制权交给主引导程序-->主引导程序检查分区表状态,寻找活动的分区-->主引导程序将控制权交给活动分区的引导记录,由引导记录加载操作系统启动文件。
由上可知,MBR是电脑通电开机,主板自检完成后,被第一个读取到的位置,位于硬盘的0磁头0磁道1扇区,它的大小是512字节,不属于任何一个操作系统,也不能用操作系统提供的磁盘操作命令来读取。
DOS时代泛滥成灾的引导区病毒多寄生于MBR中。以鬼影病毒为例,该病毒寄生在MBR中,病毒释放的驱动程序,能够破坏大多数安全工具和系统辅助工具。当系统再次重启时,该病毒会早于操作系统内核先行加载。而当病毒成功运行后,在进程中、系统启动加载项里找不到任何异常。即使格式化重装系统,也无法将该病毒清除。
鬼影病毒驻留在系统的高端内存中,因此现有技术通过搜索高端内存的特征码来定位其是否是病毒。例如,鬼影3中的代码如图1所示,通过搜索特征码0X0413来检测是否修改了高端内存来驻留内存。而对于变形的鬼影代码,参照图2所示的一个鬼影变种代码,这段代码可以达到和图1一样的修改高端内存的效果,但却通过指令的变形,找不到特征的代码,从而饶过常规安全软件的查杀。
仔细分析图1和图2所示的鬼影病毒,可以发现,无论其是否变形,只要运行就能够达到修改高端内存的效果。因此,通过检测高端内存就可以检测出各种形式的鬼影病毒。本申请正是利用这一点,通过设置虚拟内存来模拟高端内存,并通过模拟MBR的加载执行过程来检测所述虚拟内存,从而在恶意程序真正运行之前就查找出各种基于MBR的Bootkit(如鬼影病毒)或类似于Bootkit的病毒等恶意程序。
下面通过实施例对本申请所述方法的实现流程进行详细说明。
参照图3,是本申请实施例所述一种检测恶意程序的方法流程图。
参照上面的计算机系统开机过程,在系统开机后并且在加载操作系统文件之前,执行以下步骤:
步骤301,设置虚拟内存;
即分配一块内存区域作为虚拟内存使用,所述虚拟内存是对实际的系统高端内存的模拟。
步骤302,读取主引导记录MBR并保存到所述虚拟内存;
真实的开机过程中,开机通电自检后,系统BIOS将主引导记录MBR读入真实的高端内存;而本实施例中,是将MBR读入所述虚拟内存中。
步骤303,模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改;
如果被修改,则发现恶意程序,退出检测过程,并可以进行提示;否则,如果未被修改,则继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕,退出检测过程。若MBR的所有指令都模拟执行完毕也没有发现恶意程序,则将控制权交给系统中真实的活动分区的引导记录,由引导记录加载操作系统启动文件。
具体的,可以通过检测所述虚拟内存的大小是否改变来判断是否被修改,如果改变,则所述虚拟内存被修改;否则,未被修改。目前的实际应用中,由于Bootkit可修改内存使内存的大小变小,因此在模拟执行每一条指令之后,可通过判断虚拟内存的大小是否变小来进行检测。当然,本实施例也不排除其他判断内存是否被修改的方法。
此外,本实施例进一步可以通过虚拟CPU来完成上述步骤303,。具体的,在步骤301设置虚拟内存之前,先设置虚拟CPU,然后在步骤303由所述虚拟CPU模拟指令的执行,并对虚拟内存进行检测。
基于上述图3所示实施例的内容:
进一步可选的,设置完虚拟内存后,还可设置虚拟硬盘,并将虚拟内存中的MBR拷贝到所述虚拟硬盘中,当模拟执行MBR中的指令时,直接从所述虚拟硬盘中进行读取。
进一步可选的,为了整个模拟过程的完整性,还可以设置出虚拟BIOS、虚拟I/O设备等其他相关部分,用于所述检测过程。
进一步可选的,为了便于相关人员查看整个模拟过程的执行,还可以对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
综上所述,由于实际情况中,基于MBR的Bootkit或类似于Bootkit的病毒等恶意程序,即使进行了变形,也必须要驻留系统的高端内存,所以必然会修改高端内存,因此上述的检测方法通过设置虚拟内存来模拟高端内存,并通过检测虚拟内存是否被修改,就可以发现可疑的恶意程序,从而无视任何特征码变换技术,只要实际运行中发生了这个行为即可被检测出来。所述的检测方法在很大程度上可以检测出过去、现在和未来的基于MBR的Bootkit。
需要说明的是,对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
基于上述检测方法的实施例,本申请还提供了相应的装置实施例。
参照图4,是本申请实施例所述一种检测恶意程序的装置结构图。
所述检测装置可以包括:
第一设置模块41,用于设置虚拟内存;
读取及保存模块42,用于读取主引导记录MBR并保存到所述虚拟内存;
模拟执行模块43,用于模拟执行虚拟内存中主引导记录MBR中的每一条指令;
检测模块44,用于在所述模拟执行模块43执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,触发所述模拟执行模块43继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
优选的,所述检测模块44可通过检测所述虚拟内存的大小是否改变来判断是否被修改,如果改变,则所述虚拟内存被修改;否则,未被修改。
进一步可选的,所述检测装置还可以包括:
第二设置模块45,用于设置虚拟CPU,所述虚拟CPU可触发所述模拟执行模块43和检测模块44的执行。
进一步可选的,所述检测装置还可以包括:
第三设置模块46,用于设置虚拟硬盘,并将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘;
此时,所述模拟执行模块43从所述虚拟硬盘读取主引导记录MBR,并模拟执行主引导记录MBR中的每一条指令。
进一步可选的,所述检测装置还可以包括:
反汇编引擎47,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
所述检测装置既可以作为单独的工具,也可以作为动态库被其他程序调用,使用灵活。
对于上述检测装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见上述方法实施例的部分说明即可。
基于上述内容,为了使本领域技术人员更加了解本申请的实现,本申请还提供了另一更具体的实施例,内容如下。
实现一种虚拟机,所述虚拟机通过实现虚拟CPU、虚拟内存、反汇编引擎、虚拟硬盘以及其他相关部分,如虚拟BIOS、虚拟I/O设备等,可以模拟实现主引导记录MBR的加载执行过程,并检测出是否存在Bootkit等恶意程序。
参照图5,是本申请另一实施例所述虚拟机的结构图。
具体的,所述虚拟机可以包括:
虚拟CPU初始化模块51,用于初始化虚拟CPU54;
虚拟内存初始化模块52,用于初始化虚拟内存53,并在初始化的过程中读取主引导记录MBR然后保存到所述虚拟内存53;
虚拟内存53,用于存储主引导记录MBR;
虚拟CPU54,用于模拟执行虚拟内存53中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
进一步可选的,所述虚拟机还可以包括:
虚拟硬盘初始化模块55,用于初始化虚拟硬盘56,并在初始化的过程中将虚拟内存53中的主引导记录MBR拷贝到所述虚拟硬盘56,所述虚拟CPU54从虚拟硬盘56读取主引导记录MBR并模拟执行;
虚拟硬盘56,用于存储拷贝的主引导记录MBR。
进一步可选的,所述虚拟机还可以包括:
反汇编引擎57,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
由于实际应用中Bootkit病毒多运行于计算机系统的实模式下,因此下面将以实模式下的虚拟机为例进行详细说明。当然,所述虚拟机可应用于保护模式或其他计算机模式下,本实施例不受此限定。
在实模式下,上述虚拟CPU可模拟实现所有实模式下的指令,主要为8086指令,还可以包括386以后的指令。此外,随着木马等Bootkit技术的发展,如果木马调用了特殊的指令,所述虚拟CPU还可以进行相应特殊指令的模拟。例如,魅影病毒为了防止被调试采用了586以后才支持的指令RDTSC,则虚拟CPU还会模拟所述RDTSC指令。
在开机通电自检后,系统BIOS读取系统内置的MBR,然后传给所述虚拟机,同时虚拟机进行初始化。虚拟机的执行步骤如下:
步骤1,初始化虚拟CPU;
首先进行虚拟CPU初始化,虚拟CPU为单核的80x86,支持的寄存器同真实的机器。
此外,支持指令的初始化,虚拟机内部有个指令支持列表,该列表可根据实际需要,不断增加需要支持的指令,初始化的时候会填充已经支持的指令列表。然后,将虚拟机中的CPU的指令指针指向虚拟内存中的BIOS指令开始执行处(即MBR指令)0xf000:0xfff0。
步骤2,初始化虚拟内存;
可通过初始化BIOS数据区,所述BIOS数据区保存常规的虚拟内存的大小,在实模式下可分配640KB左右的内存空间作为虚拟内存使用。然后,将系统BIOS读取的MBR存入所述虚拟内存中。
步骤3,初始化虚拟硬盘以及虚拟机的其他相关部分;
一般在DOS下只使用1MB的磁盘,所以通过分配1MB左右的内存空间作为虚拟硬盘来模拟实际的硬盘。相应的,还可通过访问所述虚拟硬盘来模拟访问实际的硬盘。然后,将虚拟内存中的MBR拷贝到所述虚拟磁盘的开始处。
此外,还会初始化虚拟机的其他相关部分,如虚拟BIOS、虚拟I/O设备等。
步骤4,运行虚拟CPU;
与实际的执行过程类似,开始执行虚拟CPU后,从BIOS指令开始执行处(即MBR指令)开始执行。每执行MBR的一条指令,虚拟CPU会进行指令译码,根据指令译码结果修改内部的寄存器和相关内存,并执行相应的流程。如果指令中包含病毒,则虚拟CPU不仅会修改内部的寄存器,还会修改相关的虚拟内存;如果不包含,则不会修改相关的虚拟内存。
步骤5,虚拟CPU检测虚拟内存。
每执行一条指令后,虚拟CPU会检测前面设置的BIOS数据区保存的虚拟内存大小,如果发现被改变了,就认为发现了可疑MBR病毒,然后退出虚拟机,并进行提示。如果没有发现则继续执行,如果发现执行到CS=0,IP=0X7C00的时候就检测是否执行到了操作系统引导区,比如是否是NTFS或FAT的文件系统的引导区,如是的,则认为执行MBR结束,没有发现可疑的MBR,然后退出。
需要说明的是,上述步骤的先后顺序可根据实际需要进行调整,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。
上述虚拟机既可以作为单独的工具,也可以作为动态库被其他程序调用,使用灵活。同时,考虑到性能和效率等实用性方面,整个虚拟机的实现控制在几百K字节内,是一种轻量级的虚拟机。
下面以鬼影病毒为例说明本申请的上述内容。
参照图6,是本申请实施例中正常的MBR运行后的显示结果示意图;
参照图7,是本申请实施例中中了鬼影1后的MBR运行结果示意图;
参照图8,是本申请实施例中中了鬼影3后的MBR运行结果示意图;
参照图9,是本申请实施例中中了顶级Bootkit后的MBR运行结果示意图。
其中,
MbrVmConsole为主程序;
MbrVM.ini为配置文件,用来指定VM内存大小和指定虚拟硬盘的文件;
Mbr.img为指定的虚拟硬盘文件;
BIOS下为虚拟机用到的虚拟BIOS文件;
使用时候,将指定的MBR DUMP文件mbr.bin拷贝到虚拟机目录下,运行MbrVmconsole即可运行虚拟机进行检测。
mbrGood.bin为正常MBR;
mbrguiying1.bin为鬼影1MBR;
mbrguiying3.bin为鬼影3MBR;
mbrTdl.bin为TDL4MBR;
运行时,将相应的文件改名为mbr.bin即可进行相应的检测。
综上所述,随着现在杀毒软件技术的日益成熟,木马等病毒生存的空间越来越狭小,传统的木马技术,已经很难生存和发展了。但Bootkit技术的出现,给病毒一个很大的生存发展空间,使其可以做到无文件、无进程、无注册表修改等任何杀软能检测到的东西,只需要在MBR里写入加载代码,就可以加载起一个完整的病毒执行体系。而且即使格式化重装,也照样能复活。所以基于本申请所实现的方法和装置,在以后检测该方面的木马等病毒中起到决定性的作用,而这正是目前机会所有杀毒软件的盲点。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上对本申请所提供的一种检测恶意程序的方法、装置及虚拟机,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (14)

1.一种检测恶意程序的方法,其特征在于,包括:
设置虚拟内存,所述虚拟内存模拟高端内存;
读取主引导记录MBR并保存到所述虚拟内存;
模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
2.根据权利要求1所述的方法,其特征在于,所述检测所述虚拟内存是否被修改,包括:
检测所述虚拟内存的大小是否改变,如果改变,则所述虚拟内存被修改;否则,未被修改。
3.根据权利要求1或2所述的方法,其特征在于,所述设置虚拟内存之前,还包括:
设置虚拟CPU;
则所述模拟执行虚拟内存中主引导记录MBR中的每一条指令,包括:
由所述虚拟CPU模拟执行虚拟内存中主引导记录MBR中的每一条指令。
4.根据权利要求3所述的方法,其特征在于,
所述设置虚拟CPU包括:初始化虚拟CPU;
所述设置虚拟内存包括:初始化BIOS数据区,所述BIOS数据区保存虚拟内存的大小。
5.根据权利要求1或2所述的方法,其特征在于,
所述模拟执行虚拟内存中主引导记录MBR中的每一条指令之前,还包括:设置虚拟硬盘;
则所述模拟执行虚拟内存中主引导记录MBR中的每一条指令包括:
将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘;
从所述虚拟硬盘读取主引导记录MBR,并模拟执行主引导记录MBR中的每一条指令。
6.根据权利要求1或2所述的方法,其特征在于,还包括:
对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
7.一种检测恶意程序的装置,其特征在于,包括:
第一设置模块,用于设置虚拟内存,所述虚拟内存模拟高端内存;
读取及保存模块,用于读取主引导记录MBR并保存到所述虚拟内存;
模拟执行模块,用于模拟执行虚拟内存中主引导记录MBR中的每一条指令;
检测模块,用于在所述模拟执行模块执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,触发所述模拟执行模块继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
8.根据权利要求7所述的装置,其特征在于:
所述检测模块通过检测所述虚拟内存的大小是否改变来判断是否被修改,如果改变,则所述虚拟内存被修改;否则,未被修改。
9.根据权利要求7或8所述的装置,其特征在于,还包括:
第二设置模块,用于设置虚拟CPU,所述虚拟CPU触发所述模拟执行模块和检测模块的执行。
10.根据权利要求7或8所述的装置,其特征在于,还包括:
第三设置模块,用于设置虚拟硬盘,并将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘;
则所述模拟执行模块从所述虚拟硬盘读取主引导记录MBR,并模拟执行主引导记录MBR中的每一条指令。
11.根据权利要求7或8所述的装置,其特征在于,还包括:
反汇编引擎,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
12.一种检测恶意程序的虚拟机,其特征在于,包括:
虚拟CPU初始化模块,用于初始化虚拟CPU;
虚拟内存初始化模块,用于初始化虚拟内存,并在初始化的过程中读取主引导记录MBR然后保存到所述虚拟内存,所述虚拟内存模拟高端内存;
虚拟内存,用于存储主引导记录MBR;
虚拟CPU,用于模拟执行虚拟内存中主引导记录MBR中的每一条指令,并在执行完每一条指令后检测所述虚拟内存是否被修改,如果被修改,则发现恶意程序;否则,继续模拟执行下一条指令,直到主引导记录MBR的所有指令模拟执行完毕。
13.根据权利要求12所述的虚拟机,其特征在于,还包括:
虚拟硬盘初始化模块,用于初始化虚拟硬盘,并在初始化的过程中将虚拟内存中的主引导记录MBR拷贝到所述虚拟硬盘,所述虚拟CPU从虚拟硬盘读取主引导记录MBR并模拟执行;
虚拟硬盘,用于存储拷贝的主引导记录MBR。
14.根据权利要求12或13所述的虚拟机,其特征在于,还包括:
反汇编引擎,用于对主引导记录MBR中的每一条指令进行反汇编,并输出显示。
CN2011102724432A 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机 Active CN102339371B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201310594976.1A CN103617391B (zh) 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机
CN201310595022.2A CN103617069B (zh) 2011-09-14 2011-09-14 恶意程序检测方法和虚拟机
CN2011102724432A CN102339371B (zh) 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机
US14/344,864 US10146938B2 (en) 2011-09-14 2012-08-24 Method, apparatus and virtual machine for detecting malicious program
PCT/CN2012/080545 WO2013037261A1 (zh) 2011-09-14 2012-08-24 一种检测恶意程序的方法、装置及虚拟机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102724432A CN102339371B (zh) 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201310594976.1A Division CN103617391B (zh) 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机
CN201310595022.2A Division CN103617069B (zh) 2011-09-14 2011-09-14 恶意程序检测方法和虚拟机

Publications (2)

Publication Number Publication Date
CN102339371A CN102339371A (zh) 2012-02-01
CN102339371B true CN102339371B (zh) 2013-12-25

Family

ID=45515097

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102724432A Active CN102339371B (zh) 2011-09-14 2011-09-14 一种检测恶意程序的方法、装置及虚拟机

Country Status (3)

Country Link
US (1) US10146938B2 (zh)
CN (1) CN102339371B (zh)
WO (1) WO2013037261A1 (zh)

Families Citing this family (160)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8549638B2 (en) 2004-06-14 2013-10-01 Fireeye, Inc. System and method of containing computer worms
US8528086B1 (en) 2004-04-01 2013-09-03 Fireeye, Inc. System and method of detecting computer worms
US8584239B2 (en) 2004-04-01 2013-11-12 Fireeye, Inc. Virtual machine with dynamic data flow analysis
US7587537B1 (en) 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US8997219B2 (en) 2008-11-03 2015-03-31 Fireeye, Inc. Systems and methods for detecting malicious PDF network content
US8832829B2 (en) 2009-09-30 2014-09-09 Fireeye, Inc. Network-based binary file extraction and analysis for malware detection
CN102339371B (zh) 2011-09-14 2013-12-25 奇智软件(北京)有限公司 一种检测恶意程序的方法、装置及虚拟机
CN102722680B (zh) 2012-06-07 2014-11-05 腾讯科技(深圳)有限公司 清除恶意程序的方法和系统
US10572665B2 (en) 2012-12-28 2020-02-25 Fireeye, Inc. System and method to create a number of breakpoints in a virtual machine via virtual machine trapping events
CN103914650B (zh) * 2012-12-31 2017-12-01 腾讯科技(深圳)有限公司 病毒检测方法和装置
CN103971052B (zh) * 2013-01-28 2017-06-30 腾讯科技(深圳)有限公司 磁盘引导区病毒识别方法及装置
CN103150506B (zh) * 2013-02-17 2016-03-30 北京奇虎科技有限公司 一种恶意程序检测的方法和装置
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9195829B1 (en) 2013-02-23 2015-11-24 Fireeye, Inc. User interface with real-time visual playback along with synchronous textual analysis log display and event/time index for anomalous behavior detection in applications
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9367681B1 (en) 2013-02-23 2016-06-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications using symbolic execution to reach regions of interest within an application
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9104867B1 (en) 2013-03-13 2015-08-11 Fireeye, Inc. Malicious content analysis using simulated user interaction without user involvement
US9355247B1 (en) 2013-03-13 2016-05-31 Fireeye, Inc. File extraction from memory dump for malicious content analysis
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
US9251343B1 (en) * 2013-03-15 2016-02-02 Fireeye, Inc. Detecting bootkits resident on compromised computers
US9413781B2 (en) 2013-03-15 2016-08-09 Fireeye, Inc. System and method employing structured intelligence to verify and contain threats at endpoints
US9495180B2 (en) 2013-05-10 2016-11-15 Fireeye, Inc. Optimized resource allocation for virtual machines within a malware content detection system
US9635039B1 (en) 2013-05-13 2017-04-25 Fireeye, Inc. Classifying sets of malicious indicators for detecting command and control communications associated with malware
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
CN103440141A (zh) * 2013-06-28 2013-12-11 株洲南车时代电气股份有限公司 一种显示器在dos系统下的程序写片装置、系统及其方法
US9811665B1 (en) 2013-07-30 2017-11-07 Palo Alto Networks, Inc. Static and dynamic security analysis of apps for mobile devices
US10019575B1 (en) 2013-07-30 2018-07-10 Palo Alto Networks, Inc. Evaluating malware in a virtual machine using copy-on-write
CN104462962B (zh) * 2013-09-13 2018-07-03 北京安赛创想科技有限公司 一种检测未知恶意代码和二进制漏洞的方法
CN103473508B (zh) * 2013-09-17 2016-07-27 肖楠 操作系统内核运行时安全验证方法
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US9736179B2 (en) 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US9171160B2 (en) 2013-09-30 2015-10-27 Fireeye, Inc. Dynamically adaptive framework and method for classifying malware using intelligent static, emulation, and dynamic analyses
US9921978B1 (en) 2013-11-08 2018-03-20 Fireeye, Inc. System and method for enhanced security of storage devices
US9756074B2 (en) 2013-12-26 2017-09-05 Fireeye, Inc. System and method for IPS and VM-based detection of suspicious objects
US9747446B1 (en) 2013-12-26 2017-08-29 Fireeye, Inc. System and method for run-time object classification
US9740857B2 (en) 2014-01-16 2017-08-22 Fireeye, Inc. Threat-aware microvisor
US9262635B2 (en) 2014-02-05 2016-02-16 Fireeye, Inc. Detection efficacy of virtual machine-based analysis with application specific events
US9241010B1 (en) 2014-03-20 2016-01-19 Fireeye, Inc. System and method for network behavior detection
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
US9591015B1 (en) 2014-03-28 2017-03-07 Fireeye, Inc. System and method for offloading packet processing and static analysis operations
US9223972B1 (en) 2014-03-31 2015-12-29 Fireeye, Inc. Dynamically remote tuning of a malware content detection system
US9432389B1 (en) 2014-03-31 2016-08-30 Fireeye, Inc. System, apparatus and method for detecting a malicious attack based on static analysis of a multi-flow object
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming detection
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US9438623B1 (en) 2014-06-06 2016-09-06 Fireeye, Inc. Computer exploit detection using heap spray pattern matching
US10084813B2 (en) 2014-06-24 2018-09-25 Fireeye, Inc. Intrusion prevention and remedy system
US9398028B1 (en) 2014-06-26 2016-07-19 Fireeye, Inc. System, device and method for detecting a malicious attack based on communcations between remotely hosted virtual machines and malicious web servers
US10805340B1 (en) 2014-06-26 2020-10-13 Fireeye, Inc. Infection vector and malware tracking with an interactive user display
US10002252B2 (en) 2014-07-01 2018-06-19 Fireeye, Inc. Verification of trusted threat-aware microvisor
US9489516B1 (en) * 2014-07-14 2016-11-08 Palo Alto Networks, Inc. Detection of malware using an instrumented virtual machine environment
US9363280B1 (en) 2014-08-22 2016-06-07 Fireeye, Inc. System and method of detecting delivery of malware using cross-customer data
US10671726B1 (en) 2014-09-22 2020-06-02 Fireeye Inc. System and method for malware analysis using thread-level event monitoring
US10027689B1 (en) 2014-09-29 2018-07-17 Fireeye, Inc. Interactive infection visualization for improved exploit detection and signature generation for malware and malware families
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
CN104462969A (zh) * 2014-12-16 2015-03-25 北京奇虎科技有限公司 查杀恶意应用程序的方法、装置和系统
US9805193B1 (en) 2014-12-18 2017-10-31 Palo Alto Networks, Inc. Collecting algorithmically generated domains
US9690933B1 (en) 2014-12-22 2017-06-27 Fireeye, Inc. Framework for classifying an object as malicious with machine learning for deploying updated predictive models
US10075455B2 (en) 2014-12-26 2018-09-11 Fireeye, Inc. Zero-day rotating guest image profile
US9934376B1 (en) 2014-12-29 2018-04-03 Fireeye, Inc. Malware detection appliance architecture
US9838417B1 (en) 2014-12-30 2017-12-05 Fireeye, Inc. Intelligent context aware user interaction for malware detection
US10148693B2 (en) 2015-03-25 2018-12-04 Fireeye, Inc. Exploit detection system
US9690606B1 (en) 2015-03-25 2017-06-27 Fireeye, Inc. Selective system call monitoring
US9438613B1 (en) 2015-03-30 2016-09-06 Fireeye, Inc. Dynamic content activation for automated analysis of embedded objects
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US9654485B1 (en) 2015-04-13 2017-05-16 Fireeye, Inc. Analytics-based security monitoring system and method
US9594904B1 (en) 2015-04-23 2017-03-14 Fireeye, Inc. Detecting malware based on reflection
CN104834861B (zh) * 2015-05-12 2018-10-02 腾讯科技(深圳)有限公司 木马的查杀方法和装置
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
US10642753B1 (en) 2015-06-30 2020-05-05 Fireeye, Inc. System and method for protecting a software component running in virtual machine using a virtualization layer
US10726127B1 (en) 2015-06-30 2020-07-28 Fireeye, Inc. System and method for protecting a software component running in a virtual machine through virtual interrupts by the virtualization layer
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US10176321B2 (en) 2015-09-22 2019-01-08 Fireeye, Inc. Leveraging behavior-based rules for malware family classification
US10033747B1 (en) 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US10284575B2 (en) 2015-11-10 2019-05-07 Fireeye, Inc. Launcher for setting analysis environment variations for malware detection
US10846117B1 (en) 2015-12-10 2020-11-24 Fireeye, Inc. Technique for establishing secure communication between host and guest processes of a virtualization architecture
US10447728B1 (en) 2015-12-10 2019-10-15 Fireeye, Inc. Technique for protecting guest processes using a layered virtualization architecture
US10108446B1 (en) 2015-12-11 2018-10-23 Fireeye, Inc. Late load technique for deploying a virtualization layer underneath a running operating system
US10050998B1 (en) 2015-12-30 2018-08-14 Fireeye, Inc. Malicious message analysis system
US10621338B1 (en) 2015-12-30 2020-04-14 Fireeye, Inc. Method to detect forgery and exploits using last branch recording registers
US10565378B1 (en) 2015-12-30 2020-02-18 Fireeye, Inc. Exploit of privilege detection framework
US10133866B1 (en) 2015-12-30 2018-11-20 Fireeye, Inc. System and method for triggering analysis of an object for malware in response to modification of that object
US10581874B1 (en) 2015-12-31 2020-03-03 Fireeye, Inc. Malware detection system with contextual analysis
US9824216B1 (en) 2015-12-31 2017-11-21 Fireeye, Inc. Susceptible environment detection system
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10671721B1 (en) 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10476906B1 (en) 2016-03-25 2019-11-12 Fireeye, Inc. System and method for managing formation and modification of a cluster within a malware detection system
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10169585B1 (en) 2016-06-22 2019-01-01 Fireeye, Inc. System and methods for advanced malware detection through placement of transition events
US10462173B1 (en) 2016-06-30 2019-10-29 Fireeye, Inc. Malware detection verification and enhancement by coordinating endpoint and malware detection systems
US10430586B1 (en) * 2016-09-07 2019-10-01 Fireeye, Inc. Methods of identifying heap spray attacks using memory anomaly detection
US10592678B1 (en) 2016-09-09 2020-03-17 Fireeye, Inc. Secure communications between peers using a verified virtual trusted platform module
US10491627B1 (en) 2016-09-29 2019-11-26 Fireeye, Inc. Advanced malware detection using similarity analysis
US10795991B1 (en) 2016-11-08 2020-10-06 Fireeye, Inc. Enterprise search
US10587647B1 (en) 2016-11-22 2020-03-10 Fireeye, Inc. Technique for malware detection capability comparison of network security devices
US10552610B1 (en) 2016-12-22 2020-02-04 Fireeye, Inc. Adaptive virtual machine snapshot update framework for malware behavioral analysis
US10581879B1 (en) 2016-12-22 2020-03-03 Fireeye, Inc. Enhanced malware detection for generated objects
US10523609B1 (en) 2016-12-27 2019-12-31 Fireeye, Inc. Multi-vector malware detection and analysis
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10848397B1 (en) 2017-03-30 2020-11-24 Fireeye, Inc. System and method for enforcing compliance with subscription requirements for cyber-attack detection service
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
US10855700B1 (en) 2017-06-29 2020-12-01 Fireeye, Inc. Post-intrusion detection of cyber-attacks during lateral movement within networks
US10503904B1 (en) 2017-06-29 2019-12-10 Fireeye, Inc. Ransomware detection and mitigation
US10601848B1 (en) 2017-06-29 2020-03-24 Fireeye, Inc. Cyber-security system and method for weak indicator detection and correlation to generate strong indicators
US10893068B1 (en) 2017-06-30 2021-01-12 Fireeye, Inc. Ransomware file modification prevention technique
US10747872B1 (en) 2017-09-27 2020-08-18 Fireeye, Inc. System and method for preventing malware evasion
US10805346B2 (en) 2017-10-01 2020-10-13 Fireeye, Inc. Phishing attack detection
US11108809B2 (en) 2017-10-27 2021-08-31 Fireeye, Inc. System and method for analyzing binary code for malware classification using artificial neural network techniques
US11240275B1 (en) 2017-12-28 2022-02-01 Fireeye Security Holdings Us Llc Platform and method for performing cybersecurity analyses employing an intelligence hub with a modular architecture
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US11271955B2 (en) 2017-12-28 2022-03-08 Fireeye Security Holdings Us Llc Platform and method for retroactive reclassification employing a cybersecurity-based global data store
CN108875363B (zh) * 2017-12-29 2021-04-30 北京安天网络安全技术有限公司 一种加速虚拟执行的方法、装置、电子设备及存储介质
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US11558401B1 (en) 2018-03-30 2023-01-17 Fireeye Security Holdings Us Llc Multi-vector malware detection data sharing system for improved detection
US11003773B1 (en) 2018-03-30 2021-05-11 Fireeye, Inc. System and method for automatically generating malware detection rule recommendations
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
US11314859B1 (en) 2018-06-27 2022-04-26 FireEye Security Holdings, Inc. Cyber-security system and method for detecting escalation of privileges within an access token
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
US10956573B2 (en) 2018-06-29 2021-03-23 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US11316900B1 (en) 2018-06-29 2022-04-26 FireEye Security Holdings Inc. System and method for automatically prioritizing rules for cyber-threat detection and mitigation
US11010474B2 (en) 2018-06-29 2021-05-18 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US11182473B1 (en) 2018-09-13 2021-11-23 Fireeye Security Holdings Us Llc System and method for mitigating cyberattacks against processor operability by a guest process
US11763004B1 (en) 2018-09-27 2023-09-19 Fireeye Security Holdings Us Llc System and method for bootkit detection
US11368475B1 (en) 2018-12-21 2022-06-21 Fireeye Security Holdings Us Llc System and method for scanning remote services to locate stored objects with malware
US11258806B1 (en) 2019-06-24 2022-02-22 Mandiant, Inc. System and method for automatically associating cybersecurity intelligence to cyberthreat actors
US11556640B1 (en) 2019-06-27 2023-01-17 Mandiant, Inc. Systems and methods for automated cybersecurity analysis of extracted binary string sets
US11392700B1 (en) 2019-06-28 2022-07-19 Fireeye Security Holdings Us Llc System and method for supporting cross-platform data verification
US11196765B2 (en) 2019-09-13 2021-12-07 Palo Alto Networks, Inc. Simulating user interactions for malware analysis
US11886585B1 (en) 2019-09-27 2024-01-30 Musarubra Us Llc System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
US11637862B1 (en) 2019-09-30 2023-04-25 Mandiant, Inc. System and method for surfacing cyber-security threats with a self-learning recommendation engine
CN111639336A (zh) * 2020-04-16 2020-09-08 中国科学院信息工程研究所 基于文件系统虚拟读写的勒索软件实时检测方法和防御方法
US11416614B2 (en) * 2020-07-01 2022-08-16 Dell Products L.P. Statistical detection of firmware-level compromises
CN112733143A (zh) * 2021-01-11 2021-04-30 安芯网盾(北京)科技有限公司 一种检测系统引导区异常的方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042719A (zh) * 2006-03-21 2007-09-26 联想(北京)有限公司 一种查杀rootkit的系统及方法
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1147795C (zh) 2001-04-29 2004-04-28 北京瑞星科技股份有限公司 检测和清除已知及未知计算机病毒的方法、系统
US7356736B2 (en) * 2001-09-25 2008-04-08 Norman Asa Simulated computer system for monitoring of software performance
US7418729B2 (en) * 2002-07-19 2008-08-26 Symantec Corporation Heuristic detection of malicious computer code by page tracking
US7845009B2 (en) * 2006-05-16 2010-11-30 Intel Corporation Method and apparatus to detect kernel mode rootkit events through virtualization traps
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法
JP2010049627A (ja) * 2008-08-25 2010-03-04 Hitachi Software Eng Co Ltd コンピュータウィルス検出システム
CN102004876B (zh) 2009-12-31 2012-07-18 郑州信大捷安信息技术股份有限公司 可容忍非信任组件的安全终端加固模型及加固方法
US8352522B1 (en) * 2010-09-01 2013-01-08 Trend Micro Incorporated Detection of file modifications performed by malicious codes
US9087199B2 (en) * 2011-03-31 2015-07-21 Mcafee, Inc. System and method for providing a secured operating system execution environment
CN102339371B (zh) 2011-09-14 2013-12-25 奇智软件(北京)有限公司 一种检测恶意程序的方法、装置及虚拟机

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101042719A (zh) * 2006-03-21 2007-09-26 联想(北京)有限公司 一种查杀rootkit的系统及方法
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JP特开2010-49627A 2010.03.04
Windows下Bootkit检测及防御技术研究;高勇;《电子科技大学硕士学位论文》;20110215;第4-50页 *
基于MBR的Windows bootkit隐藏技术;胡和君等;《计算机应用》;20090630;第29卷;第83-85页 *
胡和君等.基于MBR的Windows bootkit隐藏技术.《计算机应用》.2009,第29卷第83-85页.
高勇.Windows下Bootkit检测及防御技术研究.《电子科技大学硕士学位论文》.2011,第4-50页.

Also Published As

Publication number Publication date
CN102339371A (zh) 2012-02-01
WO2013037261A1 (zh) 2013-03-21
US10146938B2 (en) 2018-12-04
US20140351935A1 (en) 2014-11-27

Similar Documents

Publication Publication Date Title
CN102339371B (zh) 一种检测恶意程序的方法、装置及虚拟机
Krishnan et al. Trail of bytes: efficient support for forensic analysis
Srinivasan et al. Process out-grafting: an efficient" out-of-vm" approach for fine-grained process execution monitoring
US9355246B1 (en) Tuning sandbox behavior based on static characteristics of malware
CN109923546B (zh) 虚拟机安全性应用程序的事件过滤
Lee et al. From zygote to morula: Fortifying weakened aslr on android
Bojinov et al. Address space randomization for mobile devices
JP2019503539A (ja) 仮想マシンを監査するためのシステムおよび方法
CN105009139B (zh) 用于恶意软件检测的对应用的通用拆包
Wu et al. System call redirection: A practical approach to meeting real-world virtual machine introspection needs
WO2016079602A1 (en) Malicious code protection for computer systems based on process modification
JP2021022400A (ja) 分析システム、方法、及び、プログラム
JP2008547070A (ja) アプリケーションを修理するための方法及びシステム
CN103793651B (zh) 基于Xen虚拟化的内核完整性检测方法
Hoopes Virtualization for security: including sandboxing, disaster recovery, high availability, forensic analysis, and honeypotting
CN104715202A (zh) 一种虚拟机中的隐藏进程检测方法和装置
Russinovich et al. Troubleshooting with the Windows Sysinternals tools
US10089474B2 (en) Virtual machine introspection
CN106687979A (zh) 交叉视图恶意软件检测
Margosis et al. Windows Sysinternals administrator's reference
Wang et al. RSDS: Getting system call whitelist for container through dynamic and static analysis
CN103617069A (zh) 恶意程序检测方法和虚拟机
CN103617391A (zh) 一种检测恶意程序的方法、装置及虚拟机
US20060031060A1 (en) Virtualization as emulation support
Nep et al. A research on countering virtual machine evasion techniques of malware in dynamic analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211208

Address after: 300450 No. 9-3-401, No. 39, Gaoxin 6th Road, Binhai Science Park, high tech Zone, Binhai New Area, Tianjin

Patentee after: 3600 Technology Group Co.,Ltd.

Address before: The 4 layer 100025 unit of Beijing city Chaoyang District Jiuxianqiao Road No. 14 Building C

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230713

Address after: 1765, floor 17, floor 15, building 3, No. 10 Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: Beijing Hongxiang Technical Service Co.,Ltd.

Address before: 300450 No. 9-3-401, No. 39, Gaoxin 6th Road, Binhai Science Park, high tech Zone, Binhai New Area, Tianjin

Patentee before: 3600 Technology Group Co.,Ltd.