CN103065094A - 用于检测目标为计算机引导过程的恶意软件的系统和方法 - Google Patents

用于检测目标为计算机引导过程的恶意软件的系统和方法 Download PDF

Info

Publication number
CN103065094A
CN103065094A CN2012105875551A CN201210587555A CN103065094A CN 103065094 A CN103065094 A CN 103065094A CN 2012105875551 A CN2012105875551 A CN 2012105875551A CN 201210587555 A CN201210587555 A CN 201210587555A CN 103065094 A CN103065094 A CN 103065094A
Authority
CN
China
Prior art keywords
computer system
bootup process
emulation
target computer
data
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.)
Granted
Application number
CN2012105875551A
Other languages
English (en)
Other versions
CN103065094B (zh
Inventor
尤里·G·帕新
弗拉季斯拉夫·V·培提斯基
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Publication of CN103065094A publication Critical patent/CN103065094A/zh
Application granted granted Critical
Publication of CN103065094B publication Critical patent/CN103065094B/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/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
    • 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/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

用于在具有可引导设备的目标计算机系统上检测恶意软件的系统和方法。连同定义可引导设备的存储布置结构的物理参数数据一起获得存储在可引导设备上的至少部分地定义目标计算机系统的引导过程的引导过程信息。基于该引导过程信息和该物理参数数据,对目标计算机系统的引导过程进行仿真。仿真包括执行引导过程信息的指令和跟踪从可引导设备所访问的数据。在引导过程的仿真期间存储表示从可引导设备所访问的数据的数据结构。可以对该数据结构分析任意引导过程恶意软件的存在。

Description

用于检测目标为计算机引导过程的恶意软件的系统和方法
技术领域
本发明总体上涉及信息处理和安全,并且,更具体地涉及对感染计算机系统引导过程的恶意程序进行检测。
背景技术
随着恶意软件作恶者不断开发新技术,保护计算机系统免遭恶意软件的攻击成为不断演进的挑战,其中恶意软件即有害程序,诸如计算机病毒、特洛伊木马、蠕虫、rootkit等等。引起特别关注的是被称为bootkit的恶意软件,其改变计算机系统的引导(boot)过程。这些都属于当代计算机系统最难以检测的恶意软件。在引导过程中的渗透可让有害的代码绕过现有的保护特征、隐藏自身并且恶化计算机检测和移除有害进程的能力。
计算机引导过程具有若干步骤,其中包括硬件的测试和初始化、操作系统引导以及用户应用的自动加载。在引导序列中有害物越早取得控制权,反击这种威胁越困难。反恶意软件程序的目标之一为,在有害代码取得控制权之前控制引导序列,这将可让反病毒程序监视和检测异常情况和可疑数据。
目前,反rootkit技术是已知的并且用于该目的,在公开号为No.2006/480774和2007/873583的美国专利申请中描述了其示例。这些方法被设计为操作系统驱动程序,这些驱动程序修改操作系统引导过程、进一步跟踪引导过程活动并且必要时阻止和删除有害的引导程序。这些技术仅对其目的在于渗透操作系统的威胁有效,但是不允许对于在操作系统之前加载的bootkit的检测。bootkit通过改变引导记录来在最初的阶段修改引导过程。当与rootkit技术相结合时,这类程序对于安装于计算机系统上的传统保护特征来说变得无法企及。
用于对抗这类恶意软件的一种方法是使用外部引导技术,在公开号为EP1995936668和WO2007069245中公开了其示例。当从外部设备引导时,计算机恶意软件不会被加载并且可以在文件系统、硬件驱动器等传统的反病毒扫描过程中被检测。这类方法的缺点包括,需要专门的外部磁盘或设备,以及需要用户通过采用外部引导技术来采取特定的、针对性的动作以进行引导过程恶意软件的评估。
至少由于以上原因,需要一种对部署有bootkit的恶意软件提供实际的和自动的检测的解决方案。
发明内容
本发明的一个方面针对仿真计算机系统的引导过程。仿真指机器实现的计算机系统的操作的复制。仿真可在与正被仿真的计算机系统相同的计算机系统硬件上实施,或者在与正被保护的计算机系统通信地连接的不同计算机硬件集上实施。仿真允许在计算机开启的那刻起就开始对引导过程进行评估,并且对计算机系统或者网络媒介上的恶意软件,或者更通常是对实际上可能有害或无害的未知程序进行检测。本发明的多个方面不仅允许检测已知的有害代码(例如,通过校验和、哈希、或某些特征或其他签名可识别的),还允许发现引导过程中的异常情况(即,允许在引导期间检测它们的有害性质)。本发明的实际应用允许保护服务提供商远程分析受感染的媒介,不必须使用外部引导设备。使用引导过程仿真来检测未知程序显著地减小了发现和分析修改引导过程的未知程序和未知磁盘扇区所需的时间。
根据相关的实施例,通过目标计算机系统的自动保护系统获得定义可引导设备的存储布置结构的物理参数数据,基于该物理参数数据来仿真该目标计算机系统的引导过程。在表示目标计算机系统的虚拟环境中进行仿真,包括:执行引导代码和响应于引导代码的执行来获得引导过程信息。生成至少表示引导过程信息的数据结构。基于该数据结构确定引导过程信息是否包括未知程序。
根据本发明的另一个方面,提供用于检测在具有引导设备的目标计算机系统上的未知程序的保护系统。该系统包括引导仿真器模块,配置为收集存储在至少部分地定义了目标计算机系统的引导过程的可引导设备上的引导过程信息,以及定义可引导设备的存储布置结构的物理参数数据。引导仿真器模块配置为基于所述引导过程信息和所述物理参数数据,实施对目标计算机系统的引导过程的仿真。引导仿真器模块进一步配置为执行引导过程信息的指令,并响应于引导过程信息的指令跟踪从可引导设备所访问的数据。检测器模块与引导仿真器模块通信耦合,并配置为在引导过程的仿真中基于从可引导的设备所访问的数据来检测未知程序的存在。
在本发明的另一个方面,提供一种用于检测在具有可引导设备的目标计算机系统上的未知程序的自动的计算机实现的方法。该方法包括,通过位于远离目标计算机系统远端的自动分析系统来接收数据结构,所述数据结构包含:存储在至少部分定义该目标计算机系统的引导过程的可引导设备上的引导过程信息;以及定义可引导设备的存储布置结构的物理参数数据。自动分析系统对可引导设备是否包含由目标计算机系统的引导过程所访问的可疑程序进行分析,包括:至少通过在表示目标计算机系统的物理特性的虚拟化计算机系统中执行引导过程信息的代码,基于数据结构对该目标计算机系统的引导过程进行仿真,以及对该代码的执行的结果进行评估。
本发明的各方面有利地提供了对上面所概述问题的实际解决方案,并克服了传统方法处理bootkit以及相关恶意软件的若干其它缺陷。
附图说明
结合附图和以下对本发明各种实施例的详细描述可以更彻底地理解本发明,其中:
图1是示出了被设计为目标为计算机系统引导过程的恶意软件的操作的示意图;
图2A是根据本发明一个实施例的,示出了用于对抗bootkit恶意软件的系统的示意图;
图2B是示出了容器数据结构的示意图,该容器数据结构用于存储和传送关键信息以识别和仿真bootkit的操作;
图3A和图3B是根据本发明实施例的,示出了通过使用引导仿真技术以清理受感染磁盘和阻止磁盘感染的程序功能的示例的流程图;
图4是根据本发明各实施例的,示出了本发明的各方面可应用于其中的多级安全计算机系统模型;
图5示出了根据一个实施例的,其中rootkit被安装于计算机系统上并进行对抗的示范性过程;
图6是根据一个实施例的,示出了用于在引导过程期间检测诸如bootkit的未知程序的系统的功能框图;
图7是根据一个实施例的,示出了为检测未知程序和数据,计算机系统引导仿真的过程的示意图;
图8是示出了系统的一个或多个功能模块可在其上实现的示例性通用计算机系统的框图。
在本发明遵从各种修改和替代形式的同时,其细节以图中示例的方式示出并将被详细描述。然而,应该理解并非意图将本发明限于所述的具体实施例。相反,意图覆盖落入如由所附权利要求所定义的本发明的精神和范围内的所有修改、等同和替代。
具体实施方式
计算机引导过程是具有许多细节和细微差别的复杂的过程,通常可将其分为两个阶段:初始引导和操作系统引导。在计算机开启之后,电源测试所有的必要电压电平;如果所有电压电平均相当于正常电平,则母板接收PowerGood信号。在初始状态,处理器的输入接收RESET信号,该信号保持处理器在复位状态。但在从电源接收到PowerGood信号后,RESET信号将被移除,并且处理器将开始执行它的第一指令。因此,在电源测试后,处理器始于下述状态:命令寄存器CS包含0xFFFF、命令指针(IP寄存器)包含0、数据和堆栈段寄存器包含0。在RESET被移除后,处理器执行位于0xFFFF0地址的指令,在实模式(real mode)下ROM BIOS区域位于该地址。其大小为16字节,直到在实模式下最大的可访问地址区域的末端---0xFFFFF。用于转换至实模式可执行BIOS代码的指令位于该地址。通过执行BIOS代码,计算机经历了POST(开机自检)诊断阶段。处理器、存储器和输入/输出资源被测试;另外,系统主板的软件可选资源被配置。
在经历测试和配置过程之后,计算机前进到操作系统引导过程。BIOS程序将信息从BOOT扇区的激活引导磁盘(active boot disk,由BIOS设定所定义)读取到位于物理地址0x7C00的计算机存储器中,对于软盘或硬盘驱动器来说,所述激活引导磁盘位于地址Cylinder(柱面)=0,Head(磁头)=0,Sector(扇区)=1。扇区的大小为512字节。在此之后,实施检查以确定这一扇区是否为引导扇区。通过在该扇区的末端搜索0x55AA签名来完成该确定。如果在该扇区的末端没有发现这样的序列,则BIOS发送没有发现引导扇区的消息。
扇区是硬盘驱动器的最小可寻址单元。不可能读取小于一个扇区。在大多数驱动器上,扇区的大小为200h字节;更新的硬盘驱动器具有较大的扇区大小。硬盘驱动器的零扇区包含所谓的主引导记录(MBR)。该记录占用整个扇区,即512字节。通过这一记录,BIOS确定逻辑驱动器的数量,以及确定必须加载哪个系统和从何处加载。
MBR包含由处理器执行的机器代码、在磁盘的四个分区上的信息和在最末端处的0xAA55签名。执行开始于扇区的零偏移量。MBR结构如下所述。签名由BIOS加载器使用以验证MBR的正确性;在故障的情况下,计算机操作被挂起。每个分区也均由单独的结构来描述。活动指示符字节可以等于0或者等于0x80。如果其等于0x80,则该分区被认为是激活的;加载器读取它的第一0x200字节并向其转移控制权。“分区类型”字段描述了特定分区的格式并且可假设不同的值。
通常在硬盘驱动器上不会存在四个以上的分区。然而,Windows允许将驱动器划分为更多个部分。扩展分区(分区类型代码7)除了分区内容本身外还包含指向下一个分区的指针。因此,从扩展分区形成链接列表。它们的数量仅受限于空闲的未格式化的空间。因此,完整的计算机引导算法如下:MBR中的代码验证硬盘驱动器的可操作性,然后通过浏览分区表来搜索具有0x80的所显示的活动指示符的分区,并且将控制权转移至后者的第零字节。
MBR代码从指定的磁盘扇区加载信息(其可以是一个或多个程序诸如将被进一步执行的引导加载器或由那些程序使用的数据)。跟随MBR代码和任何随后的引导过程程序的执行之后,控制权被转移给操作系统。
从安全的角度看,在保护过程中MBR是最易受攻击的区域。如果它被编辑以及如果引导代码被改变,有害组件就将被加载到操作系统内核中;这一组件将能够排除计算机上的任何安全程序,包括反病毒程序。一些黑客利用这一因素,设计了被称为bootkit的专门程序。
bootkit修改MBR的引导扇区,即硬盘驱动器上的第一物理扇区。这类恶意软件被用于赢得操作系统中的最高特权,并用于在系统中隐匿。bootkit可获得管理员(超级用户)权限并实施若干有害动作,使得这类恶意软件成为最危险的恶意软件之一。
bootkit的活动开始于计算机被重启时。重启可以由恶意软件或由用户启动。一旦从受感染的引导扇区重新引导计算机,执行有害功能的bootkit组件就被启动。
存在很多类型的bootkit,可通过它们工作流程的复杂度来区分。简单的bootkit编辑引导记录、将数据和代码置入磁盘扇区,其并不编码数据,也不像rootkit技术一样在系统中使用自我隐匿技术。与之相反,其他bootkit使用各种自我保护工具以对抗反病毒检查和避免检测。
Bootkit感染和操作的场景之一的示意图在图1中示出。如果计算机具有已安装的应用100,其存在黑客已知的漏洞101,该漏洞101用于夺取执行过程的控制权以将恶意软件120、121、122写到磁盘110。感染可经由已被黑客攻击的网站发生。有害部件被上传到计算机;该部件使用例如在已安装软件中的漏洞来夺取控制权和修改引导记录。可使用其它方法引起感染,但最终的结果都明确地意在替换引导扇区。感染可由诸如dropper(投放器)102的有害部件或由远程受控的间谍程序(例如,特洛伊木马下载器)引起,分别为包含bootkit或将其从远程地址上传。以下为这样的磁盘扇区记录的示例:
HANDLE hDisk=CreateFileA("\\\\.\\PhysicalDrive0",GENERIC_WRITE|GENERIC_READ,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,0x0,0x0);
WriteFile(hDisk,MbrBuffer,sizeof(MbrBuffer),&dwWritten,NULL);
在各种实施例中,bootkit内容被写入磁盘的未格式化的部分、被写入伪“坏”扇区(即,由文件系统标记为“损坏”而实际并未损坏的扇区)、被置于第一扇区的末端、被使用rootkit技术所隐藏等等。图1示出在磁盘131、132、133上的bootkit数据可被写入的区域。因此,如果反病毒软件不使用有效对抗这类威胁的工具,则bootkit数据121、122和引导记录130的被隐藏的拷贝不会在操作系统的文件系统中反映出来,不会包括在磁盘分区中,并且不可通过扫描文件和磁盘空间被检测到。本发明的多个方面认识到有可能通过分析当前威胁和它们的有害功能来为计算机创建有效的安全系统;这要求访问存储恶意软件以及由恶意软件使用的文件或数据区域。对了尽早对威胁进行响应,及时搜集该威胁的信息尤为重要;否则,大量计算机的感染可能导致爆发并引起对公共信息系统的极大危害。
在一个示例中,bootkit包括执行rootkit功能的驱动程序121、经修改的MBR120和有害功能的有效负荷122。在这种情况下,bootkit可附加包含用于隐匿数据的编码部件、反检测部件和其他附加功能,这使得恶意软件的分析复杂化。在系统引导过程期间所使用的磁盘扇区的数量可以为几十甚至几百,而由在操作系统引导之后所执行的有害功能所占用的磁盘区域甚至可以更大。
当计算机从具有经修改的引导扇区的受感染磁盘111引导时,经修改的MBR120加载包含bootkit代码的磁盘扇区;随后,控制权被转移并且操作系统连同rootkit部件一起被加载。这一引导顺序使bootkit可以保持不被检测到。原始的MBR130被拷贝到磁盘133上的特定区域并且在一些情况下可以被编码。为了通过引导记录完整性测试并且为了当对磁盘引导扇区进行调用时替换原始记录,bootkit需要MBR130的拷贝。结果,操作系统、传统的反病毒程序以及其他安全工具断定实际上经修改的MBR120并未被修改以及磁盘111未被感染。对保存原始MBR130的需要也为系统的恢复提供了机会。为此,保护系统确定在磁盘上原始MBR130被拷贝到的地址、对其解码(如果必要)并将其重写到引导扇区,以替换经修改的记录120。
每个bootkit均具有其自己的功能:一些意图在于收集保密信息并将其远程发送;另外一些目的在于阻止计算机操作;其他的用于创建僵尸网络(bot-network)。取决于bootkit操作模型,包含有害功能的可执行代码可以在操作系统启动之前或之后被写入存储器中。在前一种情况下,为了跟踪包含可执行代码的磁盘区域,研究操作系统启动之前系统的引导过程就足够。在后一种情况下,必须在系统引导之后研究操作系统活动并跟踪有问题的功能的执行过程。这种操作要求极多的计算资源以及对硬件仿真的高优先级。
通常可以理解,为了有效对抗bootkit,必须分析bootkit起始数据,包括经修改的MBR。然而,由于恶意软件操作特性和它自我混淆的能力,几乎不可能通过扫描磁盘、文件或通过使用行为分析器来搜集这些文件。这种威胁必须在感染时被识别。本发明的一个方面允许检测、阻止和修复含有有害引导程序的受感染计算机。图2A是根据一个实施例的,示出了用于对抗bootkit恶意软件的系统的示意图。
在一个示范性实施例中,反bootkit保护系统包括保护模块200,其至少一部分可以在正受保护的计算机系统上本地驻留和执行。保护系统进一步包括分析器模块210和保护数据库220。在一类实施例中,这些模块可在计算机系统上本地执行。在另一类实施例中,一个或多个分析器模块210和保护数据库220在远离正受保护的计算机系统来实现,诸如由保护服务提供商所操作的一个或多个服务器。在后一类型的实施例中,通信机制230促进客户端侧模块和服务器侧模块之间的交互。在一类示例性的配置中,本地驻留在正受保护计算机系统上的保护系统的任何部件均可由保护服务提供商授权给计算机系统的用户。
如本文中所使用的术语“模块”指现实世界的设备、部件或使用硬件所实现的部件的布置或作为硬件和软件的组合,所述使用硬件所实现的部件的布置诸如通过专用集成电路(ASIC)或现场可编程门阵列(FPGA),所述硬件和软件的组合诸如通过微处理器系统和使模块适合于实现具体功能的程序指令集,该指令集(当被执行时)将微处理器系统转换为专用设备。模块也可实现为两者的组合,由硬件单独促进某些功能和由硬件和软件的组合来促进其他功能。在某些实现方案中,模块的至少一部分以及在一些情况下模块的全部都可以在执行操作系统、系统程序和应用程序的一个或多个计算机的处理器上执行,同时也使用多任务、多线程、在适当情况下的分布式(例如,云)处理或其他此类技术来实现模块。因此,每个模块均可在各种各样的合适的配置下实现,并且通常不应限于本文示例的任何具体实现方案,除非这种限制被明确指出。
检测器模块201配置为具有针对若干已知bootkit的签名信息。在操作中,检测器模块201获得被写入MBR和引导设备的其他关键部分中的数据,并将该数据与已知bootkit的签名相比较。
仿真器模块202实现计算机系统引导过程的仿真技术,其允许识别包含隐藏的恶意软件元素的磁盘扇区。这一示例性布置允许发现感染MBR的新的、未知的威胁,不必仅依赖于由检测模块201进行签名扫描。但是,通过签名扫描的分析在该情况下对于dropper即感染磁盘的程序的检测仍然有效。随后,有可能通过它的“痕迹”(签名)、通过从外部驱动器引导计算机和通过扫描受感染的物理磁盘,或通过基于所生成的签名实施检查、通过反rootkit工具调用磁盘来检测磁盘上的bootkit。
实施对恶意软件的更详细的分析以:
·从程序体中分离引起感染的有害资源的地址;
·生成bootkit文件211、磁盘扇区和其他数据的签名,用于随后的签名检查和感染阻止;
·为了从计算机中清除恶意软件,分离原始的MBR和它的解码方法。
通过利用专门的rootkit旁路(rootkit-bypassing)驱动程序来获得可靠的信息,仿真器模块202获得硬盘驱动器111的引导相关部分的准确映像,如下所更详细描述的。
在一个实施例中,容器250的数据结构用于将与正被调查的引导设备有关的关键信息转移至分析器。容器250的一个示例在图2B中示出。容器250包括存储bootkit数据120-122的所有硬盘驱动器扇区。例如,以下磁盘扇区可被存储:经修改的MBR扇区120、存储rootkit功能(即驱动程序)的扇区121、存储迁移自引导扇区并可能被编码的原始MBR的拷贝的扇区130以及包含用于执行bootkit有害的有效负荷的代码的扇区122。但该实施例的容器布置仅为一个示例,也可以包含更多或更少的扇区,这取决于所讨论的bootkit。
容器250存储所分析的硬盘驱动器的物理参数253,以及连同每个扇区相对于第零扇区的偏移251一起的扇区的内容。在一个实施例中,物理参数253包括定义所分析的硬件驱动器的存储布置结构的数据,诸如柱面的数目、每个柱面的磁头数目、扇区大小等等。因此,在容器250中维护的信息足以重新创建bootkit,同时考虑到其在磁盘上的位置。所生成的容器随后用于分析bootkit。
对于写进容器250的每个扇区或对于由顺序安置的扇区所构成的每个磁盘数据区域,指定相对于零扇区的偏移251和大小252。偏移和大小在扇区的数量上和信息量上(按字节、位)都可以改变。
容器250的大小可由扇区的数量、存储器大小或其他参数所限制。在一个示范性实施例中,为了容器250的最佳处理以及为了在不使系统或网络过度负载的情况下通过网络发送容器250,容器的大小可保持在大约1MB以下。
在一个实施例中,容器250被传送至保护服务提供商用于分析。可考虑各种数据转移方法。在一个这样的数据转移规定下,为了分析威胁,利用通信机制230来从客户端计算机搜集数据。通信机制230的一个示例在7,743,419号美国专利中有所描述,通过引用合并到本文中。
由分析器210检查容器250,分析器210可以各种形式驻留在正被保护的计算机系统上,或远离计算机系统例如在保护服务提供商处的服务器上。在分析器210位于远离正被保护的计算机系统的一类实施例中,分析器210包括它自己的本地仿真器模块214。在分析器210位于远离正被保护的计算机系统的另一类实施例中,分析器210利用仿真器模块202或可驻留在单独的服务器上或在云计算模型下的不同的仿真器模块(未示出)。在后一种实施例中,分析器210传递容器250至将被使用的仿真器模块。
已接收容器250用于分析,仿真器202、214按照这样的方式加载磁盘映像信息:按照容器250中指定的偏移251布置受感染的扇区120、121、122。在这一方法中,分析器模块210在虚拟磁盘上的虚拟空间中虚拟地重新创建所检查引导设备的物理状态。这有助于系统引导过程的仿真。基于作为容器250的一部分存储的物理参数253,在仿真中虚拟磁盘重新创建硬件驱动器的物理特性。
在引导仿真期间,跟踪bootkit的所有动作,包括磁盘读和写命令、存储器的调用和与计算机系统部件相关的其他动作。在一个实施例中,分析器模块210配置为搜索并发现原始MBR的拷贝130,其可以被编码或打包。
在相关实施例中,分析器模块210配置为对在启动期间所执行的程序指令的功能(即,行为)进行分析,以检测任意恶意软件的存在。在bootkit的功能涉及例如,数据的转移或加载或者执行来自指定的外部地址的远程命令的情况下,对bootkit的分析得以识别表示威胁的资源的地址。
作为分析器模块210的操作结果,利用检测到的威胁的签名211、有害部件文件和计算机清理脚本212对反病毒数据库220进行更新。一旦数据库被更新,新的纪录由恢复模块203使用以清理计算机,以及由检测模块201使用以防止新的计算机感染。计算机的清理通过计算机MBR 120的重写和通过从硬盘驱动器移除bootkit部件来完成,其中使用在对bootkit的分析期间所识别的或保存在备份拷贝中的原始版本130来进行MBR 120的重写。在这种情况下,在感染时被恶意软件所修改的扇区可以从备份拷贝得以恢复。
图3A和3B是包括时间轴的流程图,示出了用于清理受感染磁盘和通过使用引导仿真技术阻止磁盘感染的程序的功能的示例。对应于特定事件,时间轴被标上指示符。位于时间轴上方的指示符对应于与恶意软件的功能相关的事件;而那些位于时间轴下方的指示符对应于保护相关的事件。
在图3A中示出的系列事件描述了bootkit已经感染了计算机并且呈现于系统中的情况。为了有效地对抗威胁,第一种方法使用过程仿真器和签名检查之外的反病毒功能。在该实施例中,隔离模块创建可疑文件的备份拷贝。云服务收集用户感染统计。系统日志记录所执行的处理器命令和存储器操作命令、计算机流和进程的行为、API功能的调用、文件的读写、网络连接和应用级别等等。尤其是,该阶段甚至是在威胁出现在计算机上之前执行;它开始监控系统对象和对那些对象所实施的操作,以及日志的保持300,日志的保持300使得系统可以随后检测过程、对象、物理存储器、计算机用户和外部资源之间的链接。
维护这种信息允许保护系统基于计算机系统的当前状态来确定感染的情况。例如,如果在硬盘驱动器上发现与有害对象相关的信息,则为了识别有关的可执行文件,将有可能(使用系统日志)确定最后调用指定磁盘的扇区的进程。如果感染是使用溢出(exploit,利用应用或设备中的漏洞的代码)发生的,那么包含该溢出的文件或资源URL被识别。
在进一步的实施例中,考虑通过在计算机系统中放置dropper301而感染计算机系统的情况。一旦dropper301被上传到计算机或者被从外部媒介启动,其所有的动作就都被记录在系统日志中:将拦截对磁盘的访问,以及将在至硬盘驱动器的bootkit的安装302和MBR的替换303期间调用MBR。假设恶意软件能够绕过安全工具并在302处造成感染。在实现rootkit部件后,有害功能在305处开始执行,并且在计算机系统在304处重启之后仍继续发挥作用。
在306处启动计算机引导过程的仿真。在各种实施例中,引导仿真开始于不同的时间:例如,根据用户要求、周期性地(在指定的时间周期之后)、响应于事件或按照已建立的任务计划(在指定的时刻)。在仿真期间,可疑部件被收集到容器250中,接下来是使用已知的恶意软件分析和bootkit识别的方法的bootkit分析307。如果识别到bootkit的存在,那么该过程继续在308处通过移除bootkit以及恢复引导过程来清理计算机系统,同时将新的威胁的签名通过保护服务直接地或通过更新反恶意软件数据库来发送至其他用户。
图3B示意了根据相关实施例的另一个过程流,其使用诸如仿真器202或仿真器214的引导仿真器来针对bootkit主动保护计算机系统。在这种情况下,计算机的感染被阻止。有害动作的序列与前面用于图3A中的相同——已经启动自身或已经夺取受害计算机上控制权的dropper301发送命令以向磁盘写入数据,诸如将命令写至引导扇区302。不断地监控这些对磁盘的操作并根据它们的发生,在311处由保护模块对其进行拦截;恶意软件的活动被挂起;然后,在312处启动仿真器,其输入接收替换的MBR和试图被写入磁盘的数据,同时考虑数据的位置。也就是说,从被拦截的磁盘写命令生成容器250并对其进行发送用于仿真。接下来是包含指定改变的虚拟磁盘的引导的仿真,和假如在313检测到威胁,反病毒工具阻止恶意软件并将其从系统中移除。此外,将恶意软件(或恶意软件的签名)发送给保护服务提供商用于增强已知威胁的知识库或用于另外的分析。可在服务提供商侧或在受保护的计算机系统中生成签名。这一过程防止bootkit最终功能的执行305。
在各种实施例中,引导过程仿真器模块可基于硬件(以微芯片的形式)、基于软件(以在处理器上执行的应用、服务或驱动程序的形式)或基于固件(例如,以具有程序代码的微芯片的形式)。
在一个实施例中,在应用级操作仿真器。计算机系统的架构为多级模型,如图4中所示。根据安全模式将存储器进行分区,分离在内核模式400中所执行的操作系统401的系统服务、在用户模式410中所执行的用户应用411和存储在硬件420中的微程序421。安全级别的数量可以变化。例如,Windows家族的OS使用两级保护模式。计算机系统中微程序的示例为BIOS(基本输入/输出系统),其定义了操作系统401的驱动程序和计算机系统硬件级420之间的交互逻辑,并直接参与计算机系统的引导过程。
为了便于理解这一模型是如何发挥作用的,考虑应用是如何对磁盘起作用的示例。应用对磁盘起作用的过程包括以下阶段:在应用的执行期间,进程流产生读/写/创建/移除在一个磁盘上的文件的命令。该请求被寻址到文件系统(FAT,NTFS等)的相关驱动程序,其依次确定文件被读出或写入的簇。随后,文件系统驱动程序调用硬盘驱动器自身的硬件驱动程序,其使用用指定的协议通过硬盘驱动器控制器来执行命令以对磁盘起作用。在这种情况下,在用户模式410中执行应用、驱动器在内核级400(内核模式或Ring0),同时硬件级420被硬盘驱动器控制器所表示。为了使应用能绕过操作系统401对磁盘实施操作,它需要获得根目录级的特权,或调用在内核模式400中实现的驱动程序。
图5示出了根据一个实施例的示范性过程,其中rootkit 501安装在计算机系统上并进行对抗。rootkit拦截至磁盘111的文件操作并阻止它们或返回错误数据。当操作在应用级的保护模块200的仿真器模块202扫描磁盘111或存储在其上的文件时,或当保护模块200需要创建用于仿真或用于数据备份的磁盘映像时,在rootkit驱动程序501在运行时它将不能够获得准确信息并保证信息的可靠性。
在一个实施例中,如图5所示,引导设备映像模块204使用反rootkit旁路驱动程序502获得对磁盘或文件的访问权限,确保被处理信息的可访问性和完整性;否则,它将被rootkit拦截并用错误数据替代。在一个实施例中,旁路驱动程序502是提供对引导设备(例如,硬盘驱动器)的关键扇区的访问的内核级驱动程序,并且与通常实施相同功能的文件系统或操作系统的磁盘访问驱动程序不同。在相关实施例中,旁路驱动程序502具有特征:与默认的操作系统驱动程序相比,针对rootkit攻击提供更强的免疫力。
bootkit包含用于类似rootkit的功能用于在系统中隐匿数据。在系统重启后bootkit驱动程序(在图5中由rootkit的模糊驱动程序501表示)启动自身,拦截对其数据所处磁盘的调用包括对引导扇区120的调用,并蓄意返回错误值(例如,空白值、随机值、用其他扇区替换被调用扇区等)。如果操作系统通过返回当前MBR来响应对引导扇区的调用,所述当前MBR出于bootkit加载的目的被修改,那么rootkit模糊驱动程序返回已经存储在磁盘不同区域的原始未改变MBR的拷贝130。
图6是根据一个实施例的,示出了用于在引导过程期间检测例如bootkit的未知程序的系统的功能框图。系统包括仿真模块202、214,虚拟硬盘驱动器模块601和磁盘操作记录器模块602。为重新产生引导过程,实际的处理器、存储器和BIOS被分别仿真为处理器*611、RAM*612和BIOS*613。
虚拟硬盘驱动器601是物理设备的抽象表示。如果硬盘驱动器110被提供给仿真器的输入,那么虚拟磁盘模仿硬盘驱动器的几何结构(具有相同的扇区大小、容量、柱面和磁头的数目)。为了将仿真器和正执行在其上的所有指令与包括硬盘驱动器110的实际数据的实际系统相隔离,使用磁盘的虚拟表示。
在一个实施例中,从硬盘驱动器110读的过程如下:首先,请求被发送至虚拟磁盘601。响应于该请求,虚拟磁盘601从实际的硬盘驱动器110请求数据,将其结果返回给正被仿真的进程。取决于实际磁盘的受感染/未受感染情况,仿真器202、214可舍弃无答复的请求或故意提供错误数据。例如,对磁盘的写过程不会在实际磁盘110上实施,仅限于写到虚拟的硬盘驱动器601。在虚拟随机存取存储器中创建仿真器和实际环境之间的类似交互:对实际RAM621的调用经历抽象表示,在该处它被过滤、重定向、阻止或模拟(例如,在被请求的值的位置以人为值替代)。
下面根据一个实施例对仿真实际设备引导的过程加以描述。为了对来自该设备的引导进行仿真,检测系统接收与所要分析的引导设备有关的信息,可以是硬盘驱动器110、逻辑驱动器、存储器单元621、容器记录250等等。为该引导设备创建虚拟硬盘驱动器601。随后,引导记录120被拷贝至虚拟的随机存取存储器(RAM*)612,引导记录从该虚拟的随机存取存储器(RAM*)612开始以在虚拟CPU*611的处理器上执行。可执行的16比特引导代码由虚拟BIOS*613处理。在引导仿真期间,从磁盘加载附加扇区630。所有对磁盘的调用都被日志记录在磁盘操作记录器模块602中。仿真过程受限于命令的数量、处理器周期、时间周期或其他参数。引导过程继续,直到操作系统被加载并且控制权被转移给该操作系统。仿真过程可随着该加载的结束而一起停止,或继续跟踪有害功能;这还将需要操作系统的服务和驱动程序的仿真,其可能在实际的仿真系统上施加极大的负载。这一问题可通过固件(软件&硬件)仿真器布置来解决,其会将仿真器的计算从实际计算机系统转移至单独的设备。
在计算机系统的启动期间,容器250接收被请求磁盘扇区630的记录。一旦完成引导仿真,则从虚拟磁盘收集被读取和记录的扇区至容器250,使用例如Kaspersky实验室的KSN ToolsTM的通信机制230将该容器250发送至保护服务提供商。如上所述,容器250的示例可用于bootkit的存储和转移。容器的格式经设计以提供机会来实施安装容器250到虚拟硬盘驱动器601中的反向动作。在该实施例中,容器250可被用作到恶意软件检测系统的输入,这允许它可以再次仿真引导或仿真另一个计算机系统的引导。
图7是根据一个实施例的,示出了为检测未知程序和数据的计算机系统引导仿真的过程的示意图。一旦启动引导仿真,在705确定物理参数,即磁盘几何结构。该信息可从容器250读出或从在别处可用的硬盘驱动器参数确定。在710,确定处理器寄存器值。在715,MBR被加载到仿真器模块的虚拟存储器中。
在720,在虚拟处理器上引导记录代码开始执行。在725使用BIOS虚拟化技术来处理请求,所述BIOS虚拟化技术在730发送用于直接访问磁盘的地址。在735,将在仿真期间所请求的所有扇区和在730所接收的它们的地址记录在容器中。
可取决于设计和设定来停止引导仿真,各种原因包括:当所仿真的命令达到最大数量时、当达到最大容器大小时等等。块725、730和735被重复,直到仿真过程结束,如决策740所确定的。一旦生成容器,在745它被发送至保护服务提供商、至专用服务器、至另一个计算机或至安装于正被研究的计算机系统上的分析工具用于分析。该分析导致在750反病毒数据库的更新和在755对计算机系统清理所检测和分析出的威胁。
在实际实现中,使用计算机设备分别实现和执行本发明的系统和方法。计算机实现的系统可在一个物理机器上实现,或可分布在多个物理机器之间,诸如按照任务或功能,或者按照在云计算分布式模型下的处理线程。在各种实施例中,本发明的多个方面可配置为运行于在一个或多个物理机器上依次执行的虚拟机中。本技术领域的技术人员应该理解,本发明的特征可通过各种不同的合适的机器实现方案来实现。
图8是示出了示例性通用计算机系统的框图,在该计算机上可实现本系统的一个或多个功能模块。个人计算机或服务器20包含CPU 21、系统存储器22和系统总线23,其包含各种系统部件,包括与CPU 21相关联的存储器。系统总线23实现为总线结构中的任何已知结构,包括总线存储器、总线存储器控制器、外围总线和局部总线,该系统总线可与任何其他总线架构交互。系统存储器包括只读存储器(ROM)24和随机存取存储器(RAM)25。基本输入/输出系统(BIOS)包含确保个人计算机20的元件间信息转移的主程序,例如在引导时使用ROM 24。
个人计算机20包含用于读和写的硬盘驱动器27、用于读和写至可移动磁盘29的磁盘驱动器28和用于读和写至可移动光盘31的光盘驱动器30,所述可移动光盘诸如CD-ROM、DVD-ROM或其他光学媒介。硬盘驱动器27、磁盘驱动器28、光盘驱动器30分别经由硬盘接口32、磁盘驱动器接口33和光盘驱动器接口34全部连接至系统总线23。驱动器和相应的计算机存储媒介是计算机指令、数据结构、程序模块和个人计算机20的其他数据的非易失性存储装置。虽然本说明书公开了使用硬盘、可移动磁盘29和可移动光盘31的系统的实现方案,但应该理解,有可能使用可以计算机可读形式(固态磁盘、磁带、闪存驱动器或其他非易失性存储器、数字磁盘、Bernoulli墨盒、随机存取存储器(RAM)、只读存储器(ROM)等等)存储数据的其他类型的计算机存储媒介。
一些软件模块,其中可以是操作系统35,存储在硬盘、磁盘29、光盘31、ROM24或RAM25上。计算机20具有文件系统36,其存储操作系统35和附加的软件应用37、其他程序模块38和程序数据39。用户能够通过输入设备(键盘40、鼠标42)输入命令和信息到个人计算机20中。其他输入设备可以是(未示出):麦克风、操作杆、游戏机、卫星天线、扫描仪等。这样的输入设备通常通过串行端口46连接至CPU 21,串行端口转而连接至系统总线,但也可通过其他装置连接,诸如并行端口、游戏端口或通用串行总线(USB)。监视器47或其他类型的显示设备也经由诸如视频适配器48的接口连接至系统总线23。除监视器47以外,个人计算机可装配其他外围输出设备(未示出),诸如扬声器和打印机等。
个人计算机20通常操作在网络环境中,使用至一个或多个远程计算机49的逻辑连接。远程计算机(或多个远程计算机)49可采用一个或多个个人计算机、服务器、路由器、网络站点、对等设备或其他网络主机的形式,并且通常具有在前述对个人计算机20的实质的描述中所描述的大多数或全部元件。逻辑连接包括至LAN50或广域网(WAN)的网络接口51。
当使用LAN网络时,个人计算机20经由网络适配器或接口51连接至LAN50。当使用WAN组网时,个人计算机20具有调制解调器54或与诸如因特网等全球计算机网络通信的其他装置。调制解调器54,其可以是内置或外置的,经由串行端口46连接至系统总线23。在联网环境下,暴露的个人计算机20的软件模块或者部分这类程序被存储于远程存储设备中。应该指出,网络连接仅是例示性的,不要求显示精确的网络配置、网络,即实际上存在建立逻辑连接的其他方式、一台计算机与另一台计算机通信的其他技术装置。
应该注意,本发明的多个方面可使用作为前述通用计算机系统的子集的计算机系统来实现。例如计算机系统可以是具有相对有限的输入/输出设备集的刀片服务器。如果该计算机系统包括足够的输入/输出设备以使其能够与正被管理的从计算机系统或与其他计算设备相连接,则计算机系统也可以实现为运行在微控制器数字信号处理器、专用集成电路、现场可编程门阵列等等上的嵌入式系统。
以上实施例是为了例示而非限定的目的。附加的实施例包括在权利要求的范围内。另外,虽然本发明的各个方面参考具体实施例进行描述,但本领域技术人员将理解在不脱离如由权利要求所定义的本发明的精神和范围的情况下,可以对形式和细节加以改变。
相关领域的普通技术人员将理解本发明可包括少于上述任意一个单个的实施例中所例示的特征。本文所述实施例并非意在是可对本发明的各种特征进行组合的方式的详尽呈现。因此,实施例并不是相互排斥的特征的组合;相反,本发明可包括从不同的单个实施例中所选择的不同的单个特征的组合,正如本技术领域普通技术人员所理解的。
以上引用文档的任何并入均是受限的,使得并未并入违背本文明确公开的内容的主题。以上引用文档的任何并入是进一步受限,使得并未将包括在文档中的权利要求通过引用并入到本发明的权利要求中。然而,任何文档的权利要求均结合作为本文公开的一部分,除非被特别地排除在外。此外,以上引用文档的任何并入是更进一步受限的,使得文档中所提供的任何定义均未通过引用并入到本文中,除非特别地将其包括于本文。
出于说明本发明权利要求的目的,明确意在不援引美国法典35章第112条第六段的规定,除非在权利要求中引述具体的术语“用于....的装置”或“用于....的步骤”。

Claims (15)

1.一种用于调查目标计算机系统上未知程序的存在的自动的计算机实现的方法,所述目标计算机系统包括处理器、存储器和基本输入/输出系统(BIOS)并进一步包括可引导设备,所述可引导设备包含至少部分地定义用于所述目标计算机系统的引导过程的引导代码,所述方法包括:
由自动保护系统获得定义所述可引导设备的存储布置结构的物理参数数据;
由所述自动保护系统基于所述物理参数数据来仿真所述目标计算机系统的所述引导过程,其中所述仿真在表示所述目标计算机系统的虚拟环境中进行并且包括执行所述引导代码和响应于所述引导代码的执行来获得引导过程信息;
由所述自动保护系统生成至少表示所述引导过程信息的数据结构;以及
基于所述数据结构来获得所述引导过程信息是否包括未知程序的确定。
2.根据权利要求1所述的方法,其中获得所述引导过程信息包括获得所述可引导设备的主引导记录(MBR)。
3.根据权利要求1所述的方法,其中获得所述引导过程信息包括获得由所述可引导设备的主引导记录(MBR)所调用的程序代码。
4.根据权利要求1所述的方法,其中获得所述引导过程信息包括在所述目标计算机系统上操作rootkit旁路驱动程序。
5.根据权利要求1所述的方法,其中仿真所述引导过程在所述目标计算机系统的应用层上实施。
6.根据权利要求1所述的方法,其中仿真所述引导过程包括操作虚拟处理器、虚拟存储器、虚拟基本输入/输出系统(BIOS)和表示所述可引导设备的所述存储布置结构的虚拟启动设备。
7.根据权利要求1所述的方法,其中生成所述数据结构包括存储容器数据结构,所述容器数据结构包括用于存储所述可引导设备的所述存储布置结构的表示的第一部分和用于存储所述可引导设备的多个扇区的内容的第二部分,所述第一部分和第二部分足够完整以在位于远程的计算机系统上促进所述目标计算机系统的所述引导过程的仿真。
8.根据权利要求1所述的方法,进一步包括:
传送所述数据结构至位于远程的计算机系统。
9.根据权利要求1所述的方法,进一步包括:
拦截对所述可引导设备的启动相关的部分写数据的命令;
响应于所述拦截来启动所述仿真;以及
响应于所述引导过程信息包括未知程序的确定,阻止对所述可引导设备的所述启动相关的部分写数据的所述命令的执行。
10.根据权利要求1所述的方法,其中由所述自动保护系统生成所述引导过程信息是否包括未知程序的所述确定。
11.根据权利要求1所述的方法,其中从位于远程的计算机系统获得所述引导过程信息是否包括未知程序的所述确定。
12.一种用于在具有可引导设备的目标计算机系统上检测未知程序的自动的计算机实现的方法,所述方法包括:
由远离所述目标计算机系统的自动分析系统接收数据结构,所述数据结构包含:
存储在至少部分地定义所述目标计算机系统的引导过程的所述可引导设备上的引导过程信息;以及
定义所述可引导设备的存储布置结构的物理参数数据;
由所述自动分析系统分析所述可引导设备是否包含由所述目标计算机系统的所述引导过程所访问的可疑程序,所述分析包括基于所述数据结构来仿真所述目标计算机系统的所述引导过程,其中所述仿真包括在表示所述目标计算机系统的物理特性的虚拟化计算机系统中执行所述引导过程信息的代码,以及评估该代码的所述执行的结果。
13.根据权利要求12所述的方法,其中所述分析包括连同经修改的MBR一起发现所述可引导设备的原始主引导记录(MBR)的拷贝。
14.根据权利要求12所述的方法,其中评估所述引导过程的所述代码的所述执行的所述结果包括观察在所述仿真期间所调用的程序的功能以检测恶意软件的存在。
15.根据权利要求12所述的方法,进一步包括:
基于所述分析来更新恶意软件签名的数据库。
CN201210587555.1A 2011-12-28 2012-12-28 用于检测目标为计算机引导过程的恶意软件的系统和方法 Active CN103065094B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2011153568/08A RU2472215C1 (ru) 2011-12-28 2011-12-28 Способ выявления неизвестных программ с использованием эмуляции процесса загрузки
RU2011153568 2011-12-28

Publications (2)

Publication Number Publication Date
CN103065094A true CN103065094A (zh) 2013-04-24
CN103065094B CN103065094B (zh) 2015-09-02

Family

ID=46197011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210587555.1A Active CN103065094B (zh) 2011-12-28 2012-12-28 用于检测目标为计算机引导过程的恶意软件的系统和方法

Country Status (4)

Country Link
US (1) US8365297B1 (zh)
EP (1) EP2610774B1 (zh)
CN (1) CN103065094B (zh)
RU (1) RU2472215C1 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106228069A (zh) * 2015-09-30 2016-12-14 卡巴斯基实验室股份公司 用于检测恶意可执行文件的系统和方法
CN106919837A (zh) * 2016-10-20 2017-07-04 深圳市安之天信息技术有限公司 一种恶意代码未知自启动识别方法及系统
CN107808094A (zh) * 2016-09-08 2018-03-16 卡巴斯基实验室股份制公司 检测文件中的恶意代码的系统和方法
CN110674501A (zh) * 2019-09-09 2020-01-10 光通天下网络科技股份有限公司 恶意驱动检测方法、装置、设备及介质
CN110955885A (zh) * 2019-11-28 2020-04-03 亚信科技(成都)有限公司 一种数据写入方法及装置
CN111177711A (zh) * 2019-08-23 2020-05-19 腾讯科技(深圳)有限公司 BootKit病毒确定方法、装置、计算机设备及介质
CN114787808A (zh) * 2019-12-02 2022-07-22 国际商业机器公司 安全的嵌入式微控制器映像加载

Families Citing this family (173)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8566946B1 (en) 2006-04-20 2013-10-22 Fireeye, Inc. Malware containment on connection
US8898788B1 (en) 2004-04-01 2014-11-25 Fireeye, Inc. Systems and methods for malware attack prevention
US9106694B2 (en) 2004-04-01 2015-08-11 Fireeye, Inc. Electronic message analysis for malware detection
US8881282B1 (en) 2004-04-01 2014-11-04 Fireeye, Inc. Systems and methods for malware attack detection and identification
US8549638B2 (en) 2004-06-14 2013-10-01 Fireeye, Inc. System and method of containing computer worms
US8793787B2 (en) 2004-04-01 2014-07-29 Fireeye, Inc. Detecting malicious network content using virtual environment components
US7587537B1 (en) 2007-11-30 2009-09-08 Altera Corporation Serializer-deserializer circuits formed from input-output circuit registers
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
US8171553B2 (en) 2004-04-01 2012-05-01 Fireeye, Inc. Heuristic based capture with replay to virtual machine
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
US8909989B2 (en) * 2011-11-21 2014-12-09 Huawei Technologies Co., Ltd. Method for outputting power-on self test information, virtual machine manager, and processor
US8918879B1 (en) * 2012-05-14 2014-12-23 Trend Micro Inc. Operating system bootstrap failure detection
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
CN103971052B (zh) * 2013-01-28 2017-06-30 腾讯科技(深圳)有限公司 磁盘引导区病毒识别方法及装置
US8990944B1 (en) 2013-02-23 2015-03-24 Fireeye, Inc. Systems and methods for automatically detecting backdoors
US9176843B1 (en) 2013-02-23 2015-11-03 Fireeye, Inc. Framework for efficient security coverage of mobile software applications
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
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
US9009823B1 (en) 2013-02-23 2015-04-14 Fireeye, Inc. Framework for efficient security coverage of mobile software applications installed on mobile devices
US9223982B2 (en) * 2013-03-01 2015-12-29 Intel Corporation Continuation of trust for platform boot firmware
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
US9626509B1 (en) 2013-03-13 2017-04-18 Fireeye, Inc. Malicious content analysis with multi-version application support within single operating environment
US9311479B1 (en) 2013-03-14 2016-04-12 Fireeye, Inc. Correlation and consolidation of analytic data for holistic view of a malware attack
US9430646B1 (en) 2013-03-14 2016-08-30 Fireeye, Inc. Distributed systems and methods for automatically detecting unknown bots and botnets
US9251343B1 (en) * 2013-03-15 2016-02-02 Fireeye, Inc. Detecting bootkits resident on compromised computers
US10713358B2 (en) 2013-03-15 2020-07-14 Fireeye, Inc. System and method to extract and utilize disassembly features to classify software intent
US9413781B2 (en) 2013-03-15 2016-08-09 Fireeye, Inc. System and method employing structured intelligence to verify and contain threats at endpoints
US9870474B2 (en) * 2013-04-08 2018-01-16 Insyde Software Corp. Detection of secure variable alteration in a computing device equipped with unified extensible firmware interface (UEFI)-compliant firmware
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
KR101358815B1 (ko) 2013-06-04 2014-02-11 서울대학교산학협력단 스누프 기반의 커널 무결성 감시 장치 및 그 방법
US10133863B2 (en) 2013-06-24 2018-11-20 Fireeye, Inc. Zero-day discovery system
US8943594B1 (en) 2013-06-24 2015-01-27 Haystack Security LLC Cyber attack disruption through multiple detonations of received payloads
US9300686B2 (en) 2013-06-28 2016-03-29 Fireeye, Inc. System and method for detecting malicious links in electronic messages
WO2015029037A2 (en) * 2013-08-27 2015-03-05 MINERVA LABS LTD. No:515155356 Method and system handling malware
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
US10515214B1 (en) 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9690936B1 (en) 2013-09-30 2017-06-27 Fireeye, Inc. Multistage system and method for analyzing obfuscated content for malware
US9628507B2 (en) 2013-09-30 2017-04-18 Fireeye, Inc. Advanced persistent threat (APT) detection center
US9294501B2 (en) 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
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
IL229907A (en) * 2013-12-10 2015-02-26 David Almer Mobile device with enhanced security
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
US9223966B1 (en) * 2014-05-04 2015-12-29 Symantec Corporation Systems and methods for replicating computing system environments
KR101593163B1 (ko) * 2014-05-12 2016-02-15 한국전자통신연구원 실 환경 악성코드 분석 장치 및 방법
US9973531B1 (en) 2014-06-06 2018-05-15 Fireeye, Inc. Shellcode detection
US9594912B1 (en) 2014-06-06 2017-03-14 Fireeye, Inc. Return-oriented programming 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
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
US9773112B1 (en) 2014-09-29 2017-09-26 Fireeye, Inc. Exploit detection of malware and malware families
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
US9860208B1 (en) 2014-09-30 2018-01-02 Palo Alto Networks, Inc. Bridging a virtual clone of a target device in a honey network to a suspicious device in an enterprise network
US9716727B1 (en) 2014-09-30 2017-07-25 Palo Alto Networks, Inc. Generating a honey network configuration to emulate a target network environment
US10044675B1 (en) 2014-09-30 2018-08-07 Palo Alto Networks, Inc. Integrating a honey network with a target network to counter IP and peer-checking evasion techniques
US9882929B1 (en) 2014-09-30 2018-01-30 Palo Alto Networks, Inc. Dynamic selection and generation of a virtual clone for detonation of suspicious content within a honey network
US9495188B1 (en) 2014-09-30 2016-11-15 Palo Alto Networks, Inc. Synchronizing a honey network configuration to reflect a target network environment
RU2586576C1 (ru) * 2014-12-05 2016-06-10 Закрытое акционерное общество "Лаборатория Касперского" Способ выполнения обращения к процедурам загрузочного драйвера
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
US9189630B1 (en) 2015-01-21 2015-11-17 AO Kaspersky Lab Systems and methods for active operating system kernel protection
US9846775B2 (en) 2015-03-05 2017-12-19 Minerva Labs Ltd. Systems and methods for malware evasion management
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
US9483644B1 (en) 2015-03-31 2016-11-01 Fireeye, Inc. Methods for detecting file altering malware in VM based analysis
US10417031B2 (en) 2015-03-31 2019-09-17 Fireeye, Inc. Selective virtualization for security threat detection
US10474813B1 (en) 2015-03-31 2019-11-12 Fireeye, Inc. Code injection technique for remediation at an endpoint of a network
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
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
US10454950B1 (en) 2015-06-30 2019-10-22 Fireeye, Inc. Centralized aggregation technique for detecting lateral movement of stealthy cyber-attacks
US11113086B1 (en) 2015-06-30 2021-09-07 Fireeye, Inc. Virtual system and method for securing external network connectivity
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
US10715542B1 (en) 2015-08-14 2020-07-14 Fireeye, Inc. Mobile application risk analysis
US9742796B1 (en) 2015-09-18 2017-08-22 Palo Alto Networks, Inc. Automatic repair of corrupt files for a detonation engine
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
US9825989B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Cyber attack early warning system
US9825976B1 (en) 2015-09-30 2017-11-21 Fireeye, Inc. Detection and classification of exploit kits
US10601865B1 (en) 2015-09-30 2020-03-24 Fireeye, Inc. Detection of credential spearphishing attacks using email analysis
US10706149B1 (en) 2015-09-30 2020-07-07 Fireeye, Inc. Detecting delayed activation malware using a primary controller and plural time controllers
US10817606B1 (en) 2015-09-30 2020-10-27 Fireeye, Inc. Detecting delayed activation malware using a run-time monitoring agent and time-dilation logic
US10210329B1 (en) 2015-09-30 2019-02-19 Fireeye, Inc. Method to detect application execution hijacking using memory protection
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
RU2634175C2 (ru) * 2015-12-18 2017-10-24 Акционерное общество "Лаборатория Касперского" Способ выполнения антивирусных проверок
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
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
US11552986B1 (en) 2015-12-31 2023-01-10 Fireeye Security Holdings Us Llc Cyber-security framework for application of virtual features
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
US10075456B1 (en) * 2016-03-04 2018-09-11 Symantec Corporation Systems and methods for detecting exploit-kit landing pages
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
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
US10826933B1 (en) 2016-03-31 2020-11-03 Fireeye, Inc. Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10019577B2 (en) * 2016-04-14 2018-07-10 Dell Products, L.P. Hardware hardened advanced threat protection
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
US10122739B2 (en) * 2016-08-31 2018-11-06 Dell Products L.P. Rootkit detection system and method
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
US10419479B2 (en) * 2017-01-12 2019-09-17 Acalvio Technologies, Inc. Testing environment cyber vaccine
US10904286B1 (en) 2017-03-24 2021-01-26 Fireeye, Inc. Detection of phishing attacks using similarity analysis
US10791138B1 (en) 2017-03-30 2020-09-29 Fireeye, Inc. Subscription-based malware detection
US10902119B1 (en) 2017-03-30 2021-01-26 Fireeye, Inc. Data extraction system for malware analysis
US10798112B2 (en) 2017-03-30 2020-10-06 Fireeye, Inc. Attribute-controlled malware detection
US10554507B1 (en) 2017-03-30 2020-02-04 Fireeye, Inc. Multi-level control for enhanced resource and object evaluation management of malware detection system
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
RU2659742C1 (ru) * 2017-08-17 2018-07-03 Акционерное общество "Лаборатория Касперского" Способ эмуляции исполнения файлов, содержащих инструкции, отличные от машинных
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
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
US11005860B1 (en) 2017-12-28 2021-05-11 Fireeye, Inc. Method and system for efficient cybersecurity analysis of endpoint events
US10826931B1 (en) 2018-03-29 2020-11-03 Fireeye, Inc. System and method for predicting and mitigating cybersecurity system misconfigurations
US10956477B1 (en) 2018-03-30 2021-03-23 Fireeye, Inc. System and method for detecting malicious scripts through natural language processing modeling
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
US11075930B1 (en) 2018-06-27 2021-07-27 Fireeye, Inc. System and method for detecting repetitive cybersecurity attacks constituting an email campaign
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
US11228491B1 (en) 2018-06-28 2022-01-18 Fireeye Security Holdings Us Llc System and method for distributed cluster configuration monitoring and management
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
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
US12074887B1 (en) 2018-12-21 2024-08-27 Musarubra Us Llc System and method for selectively processing content after identification and removal of malicious content
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
US11316873B2 (en) 2019-06-28 2022-04-26 Bank Of America Corporation Detecting malicious threats via autostart execution point 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
US11265346B2 (en) 2019-12-19 2022-03-01 Palo Alto Networks, Inc. Large scale high-interactive honeypot farm
US11271907B2 (en) 2019-12-19 2022-03-08 Palo Alto Networks, Inc. Smart proxy for a large scale high-interaction honeypot farm
CN111611578B (zh) * 2020-05-26 2022-09-27 福建天晴在线互动科技有限公司 一种检测powershadow虚拟环境的方法及其系统
EP4162359A4 (en) * 2020-06-03 2024-06-05 Seven Networks, LLC API-BASED AD BLOCKING AND TRAFFIC MANAGEMENT
RU2757409C1 (ru) * 2020-06-19 2021-10-15 Акционерное общество "Лаборатория Касперского" Эмулятор и способ эмуляции
WO2024030887A1 (en) * 2022-08-01 2024-02-08 Seven Networks, Llc Application launcher with integrated api-based ad blocking and traffic management

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145078A (en) * 1997-12-02 2000-11-07 Nec Corporation Data processing apparatus and method of starting-up extensions
US6510512B1 (en) * 1999-01-20 2003-01-21 Dell Products L.P. Method and system for executing BIOS code in secure multitasking operating environment
US20030061497A1 (en) * 2001-09-27 2003-03-27 Zimmer Vincent J. Method for providing system integrity and legacy environment emulation
CN101042719A (zh) * 2006-03-21 2007-09-26 联想(北京)有限公司 一种查杀rootkit的系统及方法
US20070271610A1 (en) * 2006-05-16 2007-11-22 Steven Grobman Method and apparatus to detect kernel mode rootkit events through virtualization traps
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法

Family Cites Families (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5088033A (en) * 1986-04-28 1992-02-11 Xerox Corporation Data processing system emulation in a window with a coprocessor and I/O emulation
GB2303947A (en) 1995-07-31 1997-03-05 Ibm Boot sector virus protection in computer systems
US6802028B1 (en) 1996-11-11 2004-10-05 Powerquest Corporation Computer virus detection and removal
US6397242B1 (en) 1998-05-15 2002-05-28 Vmware, Inc. Virtualization system including a virtual machine monitor for a computer with a segmented architecture
US6795966B1 (en) 1998-05-15 2004-09-21 Vmware, Inc. Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction
US6496847B1 (en) 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US6981155B1 (en) 1999-07-14 2005-12-27 Symantec Corporation System and method for computer security
US6990579B1 (en) * 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US6907533B2 (en) 2000-07-14 2005-06-14 Symantec Corporation System and method for computer security using multiple cages
US6907524B1 (en) 2000-10-13 2005-06-14 Phoenix Technologies Ltd. Extensible firmware interface virus scan
US7861302B1 (en) 2000-11-17 2010-12-28 Emc Corporation Physical scanning of storage based apparatus for antivirus
US7035963B2 (en) 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US6922774B2 (en) 2001-05-14 2005-07-26 The United States Of America As Represented By The National Security Agency Device for and method of secure computing using virtual machines
US6718401B2 (en) 2001-06-27 2004-04-06 Intel Corporation System and method for device support
US7096368B2 (en) 2001-08-01 2006-08-22 Mcafee, Inc. Platform abstraction layer for a wireless malware scanning engine
US6928639B2 (en) 2001-09-11 2005-08-09 International Business Machines Corporation Time-interval based monitor function for dynamic insertion into and removal from a running application
US7356736B2 (en) 2001-09-25 2008-04-08 Norman Asa Simulated computer system for monitoring of software performance
US7103771B2 (en) 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US7240239B2 (en) 2002-03-20 2007-07-03 National Institute Of Advanced Industrial Science And Technology Input and output control means for computer system storage and a software execution method using same
US7127579B2 (en) 2002-03-26 2006-10-24 Intel Corporation Hardened extended firmware interface framework
US7069442B2 (en) 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
US7100172B2 (en) 2002-11-27 2006-08-29 Microsoft Corporation System and method for changing operation of an application without recompiling
US7424710B1 (en) 2002-12-18 2008-09-09 Vmware, Inc. TCP/IP offloading for virtual machines
US7216367B2 (en) 2003-02-21 2007-05-08 Symantec Corporation Safe memory scanning
US7549055B2 (en) * 2003-05-19 2009-06-16 Intel Corporation Pre-boot firmware based virus scanner
US7552426B2 (en) 2003-10-14 2009-06-23 Microsoft Corporation Systems and methods for using synthetic instructions in a virtual machine
US7334120B2 (en) * 2003-11-14 2008-02-19 Intel Corporation Firmware emulation environment for developing, debugging, and testing firmware components including option ROMs
US7325251B1 (en) 2003-12-16 2008-01-29 Symantec Corporation Method and system to prevent peer-to-peer (P2P) worms
US20050229250A1 (en) 2004-02-26 2005-10-13 Ring Sandra E Methodology, system, computer readable medium, and product providing a security software suite for handling operating system exploitations
US7565522B2 (en) 2004-05-10 2009-07-21 Intel Corporation Methods and apparatus for integrity measurement of virtual machine monitor and operating system via secure launch
US20060005184A1 (en) 2004-06-30 2006-01-05 Vijay Tewari Virtualizing management hardware for a virtual machine
US7640543B2 (en) 2004-06-30 2009-12-29 Intel Corporation Memory isolation and virtualization among virtual machines
US7627898B2 (en) 2004-07-23 2009-12-01 Microsoft Corporation Method and system for detecting infection of an operating system
US7676662B2 (en) 2004-07-31 2010-03-09 Hewlett-Packard Development Company, L.P. Virtualization of a non-privileged instruction that behaves differently when executed by privileged code than by non-privileged code
US20060179484A1 (en) 2005-02-09 2006-08-10 Scrimsher John P Remediating effects of an undesired application
US7571482B2 (en) 2005-06-28 2009-08-04 Microsoft Corporation Automated rootkit detector
US20070006175A1 (en) 2005-06-30 2007-01-04 David Durham Intra-partitioning of software components within an execution environment
US7587724B2 (en) 2005-07-13 2009-09-08 Symantec Corporation Kernel validation layer
US7841006B2 (en) 2005-10-05 2010-11-23 Computer Associates Think, Inc. Discovery of kernel rootkits by detecting hidden information
US7631357B1 (en) 2005-10-05 2009-12-08 Symantec Corporation Detecting and removing rootkits from within an infected computing system
GB0520836D0 (en) 2005-10-13 2005-11-23 Scansafe Ltd Remote access to resources
US7607173B1 (en) 2005-10-31 2009-10-20 Symantec Corporation Method and apparatus for preventing rootkit installation
US7921146B2 (en) 2005-11-01 2011-04-05 Infoprint Solutions Company, Llc Apparatus, system, and method for interpolating high-dimensional, non-linear data
US7665123B1 (en) 2005-12-01 2010-02-16 Symantec Corporation Method and apparatus for detecting hidden rootkits
US8381297B2 (en) * 2005-12-13 2013-02-19 Yoggie Security Systems Ltd. System and method for providing network security to mobile devices
US7757290B2 (en) 2006-01-30 2010-07-13 Microsoft Corporation Bypassing software services to detect malware
AU2007200606A1 (en) 2006-03-03 2007-09-20 Pc Tools Technology Pty Limited Scanning files using direct file system access
US7975298B1 (en) 2006-03-29 2011-07-05 Mcafee, Inc. System, method and computer program product for remote rootkit detection
WO2007117635A2 (en) 2006-04-06 2007-10-18 Smobile Systems Inc. Malware modeling detection system and method for mobile platforms
US20080005797A1 (en) * 2006-06-30 2008-01-03 Microsoft Corporation Identifying malware in a boot environment
US7647308B2 (en) 2006-11-08 2010-01-12 Mcafee, Inc. Method and system for the detection of file system filter driver based rootkits
US7689817B2 (en) 2006-11-16 2010-03-30 Intel Corporation Methods and apparatus for defeating malware
US7996836B1 (en) 2006-12-29 2011-08-09 Symantec Corporation Using a hypervisor to provide computer security
US7802300B1 (en) 2007-02-06 2010-09-21 Trend Micro Incorporated Method and apparatus for detecting and removing kernel rootkits
JP2008207902A (ja) 2007-02-23 2008-09-11 Olympus Corp 画像記録装置、その装置による記録媒体搬送方法及びプログラム
US8701187B2 (en) 2007-03-29 2014-04-15 Intel Corporation Runtime integrity chain verification
US7934261B1 (en) 2007-06-13 2011-04-26 Trend Micro, Inc. On-demand cleanup system
US20090204964A1 (en) 2007-10-12 2009-08-13 Foley Peter F Distributed trusted virtualization platform
US7917952B1 (en) * 2007-10-17 2011-03-29 Symantec Corporation Replace malicious driver at boot time
US8214484B2 (en) 2007-11-29 2012-07-03 International Business Machines Corporation Method to predict edges in a non-cumulative graph
US8042190B2 (en) 2007-12-31 2011-10-18 Intel Corporation Pre-boot protected memory channel
US8108931B1 (en) 2008-03-31 2012-01-31 Symantec Corporation Method and apparatus for identifying invariants to detect software tampering
US8261254B2 (en) 2008-03-31 2012-09-04 Symantec Corporation Dynamic insertion and removal of virtual software sub-layers
US8646052B2 (en) 2008-03-31 2014-02-04 Intel Corporation Method and apparatus for providing a secure display window inside the primary display
US8307405B2 (en) 2008-04-28 2012-11-06 International Business Machines Corporation Methods, hardware products, and computer program products for implementing zero-trust policy in storage reports
US20090300307A1 (en) 2008-05-30 2009-12-03 International Business Machines Corporation Protection and security provisioning using on-the-fly virtualization
US9626511B2 (en) 2008-08-26 2017-04-18 Symantec Corporation Agentless enforcement of application management through virtualized block I/O redirection
US8001174B2 (en) 2008-09-17 2011-08-16 Calamp Corp. Application process in communication system using central processor for forwarding request to destination processor based on connection status
KR101540798B1 (ko) 2008-11-21 2015-07-31 삼성전자 주식회사 가상화 환경에서 보안 정보를 제공하기 위한 장치 및 방법
US8131987B2 (en) 2008-12-10 2012-03-06 Dell Products L.P. Virtual appliance pre-boot authentication
US8032660B2 (en) 2008-12-30 2011-10-04 Intel Corporation Apparatus and method for managing subscription requests for a network interface component
US8019837B2 (en) 2009-01-14 2011-09-13 International Business Machines Corporation Providing network identity for virtual machines
US20110035808A1 (en) 2009-08-05 2011-02-10 The Penn State Research Foundation Rootkit-resistant storage disks
US7743419B1 (en) 2009-10-01 2010-06-22 Kaspersky Lab, Zao Method and system for detection and prediction of computer virus-related epidemics
WO2011046422A1 (en) 2009-10-13 2011-04-21 Mimos Berhad Method and network infrastructure for establishing dynamic trusted execution environment
RU2430411C1 (ru) * 2010-03-02 2011-09-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносного программного обеспечения
RU101235U1 (ru) * 2010-03-02 2011-01-10 Закрытое акционерное общество "Лаборатория Касперского" Система проверки на присутствие вредоносного программного обеспечения с изменяемыми настройками проверки
RU2444056C1 (ru) 2010-11-01 2012-02-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ ускорения решения проблем за счет накопления статистической информации
US8099596B1 (en) 2011-06-30 2012-01-17 Kaspersky Lab Zao System and method for malware protection using virtualization

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145078A (en) * 1997-12-02 2000-11-07 Nec Corporation Data processing apparatus and method of starting-up extensions
US6510512B1 (en) * 1999-01-20 2003-01-21 Dell Products L.P. Method and system for executing BIOS code in secure multitasking operating environment
US20030061497A1 (en) * 2001-09-27 2003-03-27 Zimmer Vincent J. Method for providing system integrity and legacy environment emulation
CN101042719A (zh) * 2006-03-21 2007-09-26 联想(北京)有限公司 一种查杀rootkit的系统及方法
US20070271610A1 (en) * 2006-05-16 2007-11-22 Steven Grobman Method and apparatus to detect kernel mode rootkit events through virtualization traps
CN101976319A (zh) * 2010-11-22 2011-02-16 张平 基于行为特征的BIOS固件Rootkit检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
胡和君等: "基于MBR的Windows bootkit隐藏技术", 《计算机应用》, vol. 29, 30 June 2009 (2009-06-30), pages 83 - 85 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127381B2 (en) 2015-09-30 2018-11-13 AO Kaspersky Lab Systems and methods for switching emulation of an executable file
CN106228069A (zh) * 2015-09-30 2016-12-14 卡巴斯基实验室股份公司 用于检测恶意可执行文件的系统和方法
CN106228069B (zh) * 2015-09-30 2019-07-05 卡巴斯基实验室股份公司 用于检测恶意可执行文件的系统和方法
CN107808094B (zh) * 2016-09-08 2021-06-04 卡巴斯基实验室股份制公司 检测文件中的恶意代码的系统和方法
CN107808094A (zh) * 2016-09-08 2018-03-16 卡巴斯基实验室股份制公司 检测文件中的恶意代码的系统和方法
CN106919837B (zh) * 2016-10-20 2020-02-07 深圳市安之天信息技术有限公司 一种恶意代码未知自启动识别方法及系统
CN106919837A (zh) * 2016-10-20 2017-07-04 深圳市安之天信息技术有限公司 一种恶意代码未知自启动识别方法及系统
CN111177711A (zh) * 2019-08-23 2020-05-19 腾讯科技(深圳)有限公司 BootKit病毒确定方法、装置、计算机设备及介质
CN111177711B (zh) * 2019-08-23 2024-03-22 腾讯科技(深圳)有限公司 BootKit病毒确定方法、装置、计算机设备及介质
CN110674501A (zh) * 2019-09-09 2020-01-10 光通天下网络科技股份有限公司 恶意驱动检测方法、装置、设备及介质
CN110674501B (zh) * 2019-09-09 2021-11-09 光通天下网络科技股份有限公司 恶意驱动检测方法、装置、设备及介质
CN110955885A (zh) * 2019-11-28 2020-04-03 亚信科技(成都)有限公司 一种数据写入方法及装置
CN110955885B (zh) * 2019-11-28 2022-11-22 亚信科技(成都)有限公司 一种数据写入方法及装置
CN114787808A (zh) * 2019-12-02 2022-07-22 国际商业机器公司 安全的嵌入式微控制器映像加载
CN114787808B (zh) * 2019-12-02 2023-02-03 国际商业机器公司 安全的嵌入式微控制器映像加载

Also Published As

Publication number Publication date
RU2472215C1 (ru) 2013-01-10
EP2610774A1 (en) 2013-07-03
EP2610774B1 (en) 2015-07-01
US8365297B1 (en) 2013-01-29
CN103065094B (zh) 2015-09-02

Similar Documents

Publication Publication Date Title
CN103065094B (zh) 用于检测目标为计算机引导过程的恶意软件的系统和方法
US11625485B2 (en) Method of malware detection and system thereof
US10977370B2 (en) Method of remediating operations performed by a program and system thereof
US11507663B2 (en) Method of remediating operations performed by a program and system thereof
RU2454705C1 (ru) Система и способ защиты компьютерного устройства от вредоносных объектов, использующих сложные схемы заражения
CN103065088B (zh) 基于计算机用户的裁决检测计算机安全威胁的系统和方法
EP4095724B1 (en) Method of remediating operations performed by a program and system thereof
Hahn et al. Robust static analysis of portable executable malware
Bottazzi et al. Preventing ransomware attacks through file system filter drivers
Webb Evaluating tool based automated malware analysis through persistence mechanism detection
RU2592383C1 (ru) Способ формирования антивирусной записи при обнаружении вредоносного кода в оперативной памяти
Mysliwietz et al. Identifying rootkit stealth strategies
US20240111867A1 (en) Cyber recovery forensics kit - experimentation automation
Hasanabadi et al. The Next Generation of Robust Linux Memory Acquisition Technique via Sequential Memory Dumps at Designated Time Intervals
Pektaş Classification des logiciels malveillants basée sur le comportement à l'aide de l'apprentissage automatique en ligne
Ahmad et al. A Comprehensive Study for Malware Detection through Machine Learning in Executable Files
Mora Feature Selection and Improving Classification Performance for Malware Detection
Cepeda Mora Feature Selection and Improving Classification Performance for Malware Detection
Wauters et al. Building a mutation tool for malware

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