CN1585927A - 用于提供系统完整性和遗留环境模拟的方法 - Google Patents
用于提供系统完整性和遗留环境模拟的方法 Download PDFInfo
- Publication number
- CN1585927A CN1585927A CNA02819232XA CN02819232A CN1585927A CN 1585927 A CN1585927 A CN 1585927A CN A02819232X A CNA02819232X A CN A02819232XA CN 02819232 A CN02819232 A CN 02819232A CN 1585927 A CN1585927 A CN 1585927A
- Authority
- CN
- China
- Prior art keywords
- environment
- security
- code
- virtual machine
- related information
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明描述了一种用于为具有可扩展固件体系结构的计算系统提供预启动安全性和遗留硬件和环境支持的方法和装置。使用虚拟机监视器来提供对系统状态的虚拟化,以运行遗留兼容代码或保护密钥数据和代码区域的安全。可以给予应用程序到系统资源的子集的访问,并且到未被指定用于更新的内存映射的部分的访问将捕捉(程序中断)到VMM。然后,VMM预启动策略代理将保护状态并卸载任何有问题的软件。
Description
技术领域
本发明一般地涉及具有可扩展固件体系结构的计算系统,更具体地说,本发明涉及在具有可扩展固件体系结构的计算系统中,用以模拟遗留固件和环境并提供被保护的存储和执行的虚拟机监视器(VMW)的使用。
背景技术
计算系统固件方面的一个近期发展是可扩展固件接口(EFI)框架,其允许软件卖主开发可以与多种中央处理单元(CPU)一起使用的操作系统程序。包括应用二进制接口(ABI),其规定对于给定的CPU类型如何在堆栈上传递数据。通过抽象平台,该框架提供了优于使用遗留体系结构的系统的许多优点。关于元件体系结构发展的这一概念,正在形成在整个系统初始化过程中使用ABI和软件抽象的系统体系结构。这不仅包括CPU初始化,而且也包括芯片集和I/O设备的初始化。提供有一种软件框架,其允许多方写入抽象芯片集或I/O复合体如何工作的小片段代码。在这种框架中,来自多个卖主的产品将交互工作。来自各个卖主的代码片段包含在初始化模块中。在系统初始化阶段(在CPU重起之后,但在存储器初始化之前)期间,核心初始化代码顺序地调度初始化模块以提供基本服务。初始化阶段对系统进行足够的初始化以启动后续阶段,例如负责算法上更复杂的初始化过程的驱动器执行阶段,如扫描I/O总线、列举资源和安装驱动器。
允许来自多方的驱动器和应用程序的贡献的这一概念产生了几个问题。由单个卖主提供的系统固件的安全是卖主默认的。来自多种资源的代码模块的并入危及了系统完整性,因为没有提供沙箱处理(sandbox)或验证代码。EFI平台以物理模式执行。以物理模式执行意味着所有的地址对应于实际存储位置。虽然以物理模式的执行为OS加载程序提供了对所有平台资源的全部入口,但是它也妨碍了虚拟存储器页表的使用以及它们在预启动中提供的保护。因为启动固件具有全部机器入口,核心EFI的敏感数据结构和代码通过驱动器和应用程序访问的访问将会受损。在系统状态已经被坏代码损坏时,例如代码标识的用以验证驱动器和应用程序来源的技术不能保证故障隔离。
另一个困难是遗留代码支持。很多年来,软件一直被写成与PC/AT平台相兼容。很多遗留操作系统和可选ROM要求PC/AT存储器映射的硬件/软件。这种遗留代码以将处理器限制在1Mb存储器的实时模式执行,并且不提供存储器管理或存储器保护特征。
附图说明
通过举例图示了本发明,但是本发明不意于由附图限制,在附图中相似的标号指示相似的元件,在附图中:
图1图示了用于实现本发明的VMM的示例性计算系统100;
图2图示了根据本发明一个实施例的遗留模拟;
图3是描绘根据本发明一个实施例用于沙箱处理非受信程序的VMM操作的处理流程图;以及
图4描绘了根据本发明一个实施例通过使用VMM的安全应用的实现。
具体实施方式
本发明在一个实施例中,提供了以运行遗留兼容代码或为了安全与保密而保护密钥数据为目的,用于提供系统状态的虚拟化的方法和装置。
VMM是模拟器软件,其提供包括所有CPU指令和系统资源(例如存储器和I/O设备)的原型机的有效复制品。在一个实施例中,VMM被用于为基于元件的体系结构平台维护预启动的安全和完整性策略。
使用虚拟机监视器(VMM)来模拟遗留硬件和环境,以提供遗留代码支持。VMM允许表面上有特权的代码(例如BIOS代码)被模拟和运行而无需该代码实现其模拟。
在驱动器执行阶段,安装有VMM的驱动器可以被加载。然后,遗留应用程序(例如遗留OS加载程序)可以在VMM内被运行。在一个实施例中,只有在启动变量被设定为指示遗留OS可以被启动时,才加载VMM。VMM的使用可以帮助保护存储器和系统结构不受应用程序的干扰。可以给予应用程序到系统资源的子集的访问,并且对内存映射未被指定用于更新的部分的访问将捕捉(程序中断)到VMM中。然后,VMM预启动策略代理可以保护状态并卸载有问题的软件。VMM透明地公开了一种环境,其似乎是物理模式环境但却具有对非法行为的防卫;它甚至可以为实际上不译码物理地址范围的系统映射内存,使得软件看见低于一兆字节的遗留内存映射。这种透明性保持了与遗留PC/AT BIOS模块、可选ROM、EFI驱动器和应用程序的兼容。
在一个实施例中,本发明虚拟化整个PC/AT环境,以提供对遗留OS和遗留硬件的支持,所述遗留硬件如82XX系列:定时计数器、串行端口和主/从中断控制器。VM允许具有可扩展固件体系结构的系统简化了不使用其本地接口的预启动可选ROM或运行时环境。例如,VM模拟允许遗留可选ROM运行并使其I/O服务有效的PC/AT环境。然后,VMM将结果转变成本地API。即,VMM将I/O捕捉到本地环境中语义等价体。
在可替换实施例中,VMM可以被用于模拟本地32位/64位环境,以向以物理模式执行的平台提供被保护的存储器和被保护的执行。EFI系统体系结构不允许页表和对指定页的只读指定,因为OS加载程序可以使用页表来自引导OS内核。VMM的使用提供了一种在OS加载程序下产生并存储与安全有关的信息的方法,大多数驱动器和应用程序不能访问所述与安全有关的信息。
图1图示用于实现本发明的VMM的示例性计算系统100。这里所描述的以运行遗留兼容代码或保护密钥数据和代码区域的安全和保密性为目的的系统状态的虚拟化,可以在计算系统100内实现和使用,所述计算系统100可以表示通用的计算机、便携式计算机或其他类似的设备。计算系统100的组件是示例性的,可以在其中省略或添加一个或多个组件。例如,计算系统100可以使用一个或多个存储设备。
参照图1,计算系统100包括中央处理单元102和经由总线101耦合到显示电路105、主存储器104、静态存储器106和大容量存储设备107的信号处理器103。计算系统100还可以经由总线101耦合到显示器121、键盘输入122、光标控制123、硬拷贝设备124、输入/输出(I/O)设备125和音频/语音设备126。
总线101是标准系统总线,用于传送信息和信号。CPU102和信号处理器103是计算系统100的处理单元。CPU102和信号处理器103两者或两者之一可以被用于为计算系统100处理信息和/或信号。CPU102包括控制单元131、算术逻辑单元(ALU)132和几个寄存器133,它们被用于处理信息和信号。信号处理器103如CPU102一样也可以包括类似的组件。
主存储器104可以是例如随机访问存储器(RAM)或某种其他的动态存储器设备,用于存储由CPU102或信号处理器103使用的信息或指令(程序代码)。主存储器104可以存储在CPU102或信号处理器103执行指令期间的临时变量或其他中间信息。静态存储器106可以是例如只读存储器(ROM)和/或其他静态存储器设备,用于存储也可以由CPU102或信号处理器103使用的信息或指令。大容量存储设备107可以是例如硬盘或软盘或光盘驱动,用于存储用于计算系统100的信息或指令。
显示器121可以是例如阴极射线管(CRT)或液晶显示器(LCD)。显示设备121向用户显示信息或图像。计算系统100可以经由显示电路105与显示器121接口。键盘输入122是具有模数转换器的字母数字输入设备。光标控制123可以是例如鼠标、跟踪球或光标方向键,用于控制目标在显示器上121上的移动。硬拷贝设备124可以是例如激光打印机,用于在纸、胶片或某种其他类似的介质上打印信息。多个输入/输出设备125可以被耦合到计算系统100。通过计算系统100内包含的硬件和/或软件,可以实现根据本发明的用于支持遗留操作系统和遗留可选ROM的遗留环境的模拟,以及用于提供被保护的执行和存储的物理模式环境的模拟。例如,CPU102或信号处理器103可以执行存储在如主存储器104的机器可读介质中的代码或指令。
机器可读介质可以包括以由例如计算机或数字处理设备的机器可读的形式提供(即存储和/或传输)信息的机构。例如,机器可读介质可以包括只读存储器(ROM)、随机访问存储器(RAM)、磁盘存储介质、光存储介质、闪存设备。代码或指令可以由载波信号、红外信号、数字信号和其他类似的信号表示。
图2图示了根据本发明一个实施例的遗留模拟。一般地,个人计算机母板将支持遗留8259中断控制器,即使只有遗留可选ROM预先假定它们的存在;现代操作系统使用APIC(IA32)或SAPIC(IPF)用于它们的中断支持,从而使得在机器启动的几秒期间如成对的8259的母板硬件可用。
在图2中示出的系统200,包括EFI核心205、遗留执行映像210、EFI驱动器215和VMM220。遗留执行映像210可以是不使用本地EFI接口的预启动可选ROM或运行时环境。一发生从遗留执行映像210到遗留8529中断控制基的写入,例如,指令就被捕捉到VMM220中。VMM220可以捕捉接触系统状态(例如中断标记)或改变保护的任何指令。如果系统正在以遗留模式执行,则VMM220将到遗留中断(PIC)屏蔽的访问映射到相关联的本地中断控制寄存器。例如,系统可以尝试访问未被包含的遗留硬件。VMM可以将I/O捕捉到本地环境中的语义等价体。这时,EFI驱动器215中的一个可以与相关联的芯片集寄存器通信,并将结果提供给虚拟机。这提供了从遗留环境的迁移路径。
通过沙箱处理来自第三方的程序,VMM可以被用于提供预启动的安全性。以沙箱模式运行程序防止程序对系统其余部分的访问。代码可以被受信,因为其不能损害系统的其余部分。可以给予应用程序到系统资源的子集的访问,并且对未被指定用于更新的内存映射的部分的访问将捕捉到VMM中。然后,VMM预启动策略代理可以保护状态并卸载有问题的软件。
图3是描绘根据本发明一个实施例的用于沙箱处理非受信程序的VMM操作的处理流程图。在图3中示出的处理300,从操作305开始,其中非受信程序尝试非法写访问。在操作310,指令被捕捉到VMM。如果程序由EFI核心代码开始,并且如果程序可以访问EFI核心数据结构,那么访问是合法的。如果不是,则在操作320拒绝访问,并且控制返回到核心。
在一个实施例中,VMM可以沙箱处理从适配卡并经由第三方驱动器引入的代码可能受损的状态。这种软件技术的小代码脚本对成本敏感的基于闪存的系统来说是很有利的。
VMM以优先模式执行并模拟优先模式以执行EFI环境直到OS加载。因为VMM抽象这个次优先模式,所以VMM可以隐藏地址空间段。虚拟化被保护模式所允许的被保护存储和执行,变成安全基础结构的一部分。
图4描绘了根据本发明一个实施例通过使用VMM的安全应用的实现。在图4中示出的系统400,包括评价模块410的预启动认证驱动器405。模块410可以包含卖主的数字签名。签名可以是MD5或SHA-1签名。预启动认证驱动器405可以调用到VMM420的签名逻辑421的入口点来确认签名。VMM420提供安全存储器422,其可以在证明日志(attestation log)中包含合法驱动器和模块的签名。证明日志可以包含系统已经加载的代码的签名。如果这样,则VMM将确认代码,即平台将证实已经运行代码。这在进行控制之前向OS提供了代码可以被受信的保证。
这样,VMM提供了实现受信平台的预启动安全性(即API和框架),直到并包括OS加载。这时,OS加载程序可以提供它自己的安全性。
在上述说明书中,已经参照其特定的示例性实施例描述了本发明。但是很清楚,可以在不脱离由所附权利要求给出的本发明的更宽的精神和范围的情况下做出多种修改和改变。因此,说明书和附图将被认为是说明性的而不是限制性的。
Claims (20)
1.一种方法,包括:
在具有以物理模式执行的本地环境的计算系统上实现虚拟机监视器;以及
以最优先模式执行所述虚拟机监视器,所述虚拟机监视器模拟物理模式使得所述本地环境以次优先模式被执行。
2.如权利要求1所述的方法,其中,所述本地环境从包括32位环境、64位环境和PC/AT环境的列表中选择。
3.如权利要求2所述的方法,其中,所述VMM包含代码以提供从由PC/AT硬件模拟、PC/AT环境模拟、安全存储和安全执行构成的列表中选择的功能。
4.如权利要求3所述的方法,其中,所述安全存储被用于存储与安全有关的信息。
5.如权利要求4所述的方法,其中,所述与安全有关的信息是签名认证和加密哈希信息。
6.如权利要求5所述的方法,其中,所述与安全有关的信息被用于建立证明日志。
7.一种方法,包括:
在具有可扩展固件体系结构的计算系统上实现虚拟机监视器,使得以沙箱处理模式执行非受信代码,因此防止所述代码损坏系统。
8.如权利要求7所述的方法,其中,所述代码是遗留BIOS代码。
9.一种机器可读介质,其提供可执行指令,当所述可执行指令被处理器执行时使得处理器执行一种方法,所述方法包括:
在具有以物理模式执行的本地环境的计算系统上实现虚拟机监视器;以及
以最优先模式执行所述虚拟机监视器,所述虚拟机监视器模拟物理模式使得所述本地环境以次优先模式被执行。
10.如权利要求9所述的机器可读介质,其中,所述本地环境从包括32位环境、64位环境和PC/AT环境的列表中选择。
11.如权利要求10所述的机器可读介质,其中,所述VMM包含代码以提供从由PC/AT硬件模拟、PC/AT环境模拟、安全存储和安全执行构成的列表中选择的功能。
12.如权利要求11所述的机器可读介质,其中,其中,所述安全存储被用于存储与安全有关的信息。
13.如权利要求12所述的机器可读介质,其中,所述与安全有关的信息是签名认证和加密哈希信息。
14.如权利要求13所述的机器可读介质,其中,所述与安全有关的信息被用于建立证明日志。
15.一种装置,包括:
具有以物理模式执行的本地执行环境的计算系统;以及
在所述计算系统上实现的、以最优先模式执行的虚拟机监视器,所述虚拟机监视器模拟物理模式使得本地环境以次优先模式被执行。
16.如权利要求15所述的装置,其中,所述本地环境从包括32位环境、64位环境和PC/AT环境的列表中选择。
17.如权利要求16所述的装置,其中,所述VMM包含代码以提供从由PC/AT硬件模拟、PC/AT环境模拟、安全存储和安全执行构成的列表中选择的功能。
18.如权利要求17所述的装置,其中,所述安全存储被用于存储与安全有关的信息。
19.如权利要求18所述的装置,其中,所述与安全有关的信息是签名认证和加密哈希信息。
20.如权利要求19所述的装置,其中,所述与安全有关的信息被用于建立证明日志。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/966,015 | 2001-09-27 | ||
US09/966,015 US7103529B2 (en) | 2001-09-27 | 2001-09-27 | Method for providing system integrity and legacy environment emulation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1585927A true CN1585927A (zh) | 2005-02-23 |
CN100533385C CN100533385C (zh) | 2009-08-26 |
Family
ID=25510821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB02819232XA Expired - Fee Related CN100533385C (zh) | 2001-09-27 | 2002-09-27 | 用于提供系统完整性和遗留环境模拟的方法及装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7103529B2 (zh) |
JP (1) | JP2005528665A (zh) |
KR (1) | KR100692346B1 (zh) |
CN (1) | CN100533385C (zh) |
AU (1) | AU2002343467A1 (zh) |
DE (1) | DE10297273B4 (zh) |
GB (1) | GB2397415A (zh) |
WO (1) | WO2003027835A2 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100419681C (zh) * | 2005-09-22 | 2008-09-17 | 联想(北京)有限公司 | 一种网络复制系统与方法 |
CN101373441B (zh) * | 2008-09-19 | 2012-04-18 | 苏州壹世通科技有限公司 | 一种基于固件的虚拟化平台系统 |
CN101273364B (zh) * | 2005-09-23 | 2013-09-18 | 英特尔公司 | 用于计算平台数据保护的方法 |
CN104133752A (zh) * | 2013-06-25 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 操作平台的监控方法和装置 |
CN105074663A (zh) * | 2013-03-12 | 2015-11-18 | 高通股份有限公司 | 按需选择性地启用虚拟机监测器的操作的方法和装置 |
CN106687980A (zh) * | 2014-09-17 | 2017-05-17 | 国际商业机器公司 | 管理程序和虚拟机保护 |
Families Citing this family (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7174463B2 (en) * | 2001-10-04 | 2007-02-06 | Lenovo (Singapore) Pte. Ltd. | Method and system for preboot user authentication |
US7631196B2 (en) * | 2002-02-25 | 2009-12-08 | Intel Corporation | Method and apparatus for loading a trustable operating system |
US7069442B2 (en) | 2002-03-29 | 2006-06-27 | Intel Corporation | System and method for execution of a secured environment initialization instruction |
US7974416B2 (en) * | 2002-11-27 | 2011-07-05 | Intel Corporation | Providing a secure execution mode in a pre-boot environment |
US20040128493A1 (en) * | 2002-12-27 | 2004-07-01 | Zimmer Vincent J. | Methods and apparatus for providing a firmware defined radio |
US7181723B2 (en) * | 2003-05-27 | 2007-02-20 | Intel Corporation | Methods and apparatus for stride profiling a software application |
US7380136B2 (en) * | 2003-06-25 | 2008-05-27 | Intel Corp. | Methods and apparatus for secure collection and display of user interface information in a pre-boot environment |
US7328340B2 (en) * | 2003-06-27 | 2008-02-05 | Intel Corporation | Methods and apparatus to provide secure firmware storage and service access |
US7434231B2 (en) * | 2003-06-27 | 2008-10-07 | Intel Corporation | Methods and apparatus to protect a protocol interface |
US7370324B2 (en) * | 2003-09-30 | 2008-05-06 | Intel Corporation | Switching between a service virtual machine and a guest virtual machine in a virtual machine monitor environment |
US7496961B2 (en) * | 2003-10-15 | 2009-02-24 | Intel Corporation | Methods and apparatus to provide network traffic support and physical security support |
US7516331B2 (en) * | 2003-11-26 | 2009-04-07 | International Business Machines Corporation | Tamper-resistant trusted java virtual machine and method of using the same |
US7558723B2 (en) * | 2003-12-12 | 2009-07-07 | Microsoft Corporation | Systems and methods for bimodal device virtualization of actual and idealized hardware-based devices |
US20050132022A1 (en) * | 2003-12-12 | 2005-06-16 | International Business Machines Corporation | Computer system with LAN-based I/O |
US8037314B2 (en) | 2003-12-22 | 2011-10-11 | Intel Corporation | Replacing blinded authentication authority |
US7437613B2 (en) * | 2004-01-30 | 2008-10-14 | Intel Corporation | Protecting an operating system kernel from third party drivers |
JP2005229270A (ja) * | 2004-02-12 | 2005-08-25 | Ricoh Co Ltd | 画像形成装置、インタフェース方法 |
JP2005346182A (ja) * | 2004-05-31 | 2005-12-15 | Fujitsu Ltd | 情報処理装置、耐タンパ方法、耐タンパプログラム |
US7908653B2 (en) * | 2004-06-29 | 2011-03-15 | Intel Corporation | Method of improving computer security through sandboxing |
US20060005190A1 (en) * | 2004-06-30 | 2006-01-05 | Microsoft Corporation | Systems and methods for implementing an operating system in a virtual machine environment |
US7571090B2 (en) * | 2004-09-30 | 2009-08-04 | Intel Corporation | Emulating a host architecture in guest firmware |
US7793350B2 (en) * | 2004-10-28 | 2010-09-07 | International Business Machines Corporation | Apparatus, system, and method for simulated access to restricted computing resources |
JP4664055B2 (ja) * | 2004-12-10 | 2011-04-06 | 株式会社エヌ・ティ・ティ・ドコモ | プログラム分割装置、プログラム実行装置、プログラム分割方法及びプログラム実行方法 |
US20060143417A1 (en) * | 2004-12-23 | 2006-06-29 | David Poisner | Mechanism for restricting access of critical disk blocks |
US7603562B2 (en) * | 2005-02-02 | 2009-10-13 | Insyde Software Corporation | System and method for reducing memory requirements of firmware |
US20060195693A1 (en) * | 2005-02-28 | 2006-08-31 | Intel Corporation | Specter rendering |
US20060242351A1 (en) * | 2005-04-20 | 2006-10-26 | Kavian Nasrollah A | Method and apparatus for loading instructions into high memory |
US20070006178A1 (en) * | 2005-05-12 | 2007-01-04 | Microsoft Corporation | Function-level just-in-time translation engine with multiple pass optimization |
US7496495B2 (en) * | 2005-05-12 | 2009-02-24 | Microsoft Corporation | Virtual operating system device communication relying on memory access violations |
US20070130114A1 (en) * | 2005-06-20 | 2007-06-07 | Xiao-Feng Li | Methods and apparatus to optimize processing throughput of data structures in programs |
US8839450B2 (en) | 2007-08-02 | 2014-09-16 | Intel Corporation | Secure vault service for software components within an execution environment |
US8856473B2 (en) * | 2005-07-01 | 2014-10-07 | Red Hat, Inc. | Computer system protection based on virtualization |
US7363457B1 (en) | 2005-07-21 | 2008-04-22 | Sun Microsystems, Inc. | Method and system for providing virtualization data services for legacy storage devices |
US20090307781A1 (en) * | 2005-12-27 | 2009-12-10 | Nec Corporation | Program execution control method, its device, and execution control program for same |
US8719816B2 (en) * | 2006-03-14 | 2014-05-06 | University Of Utah Research Foundation | Extendable framework for distributed applications and data |
US7725305B2 (en) * | 2006-06-08 | 2010-05-25 | Microsoft Corporation | Partial virtualization on computing device |
US7721080B2 (en) * | 2006-06-30 | 2010-05-18 | Intel Corporation | Management of option ROM |
US8341747B2 (en) * | 2006-08-08 | 2012-12-25 | International Business Machines Corporation | Method to provide a secure virtual machine launcher |
US7673126B2 (en) * | 2006-09-19 | 2010-03-02 | Intel Corporation | Methods and apparatus to self-initialize a processor |
US7689817B2 (en) * | 2006-11-16 | 2010-03-30 | Intel Corporation | Methods and apparatus for defeating malware |
US7533207B2 (en) * | 2006-12-06 | 2009-05-12 | Microsoft Corporation | Optimized interrupt delivery in a virtualized environment |
US8776041B2 (en) * | 2007-02-05 | 2014-07-08 | Microsoft Corporation | Updating a virtual machine monitor from a guest partition |
US7769993B2 (en) * | 2007-03-09 | 2010-08-03 | Microsoft Corporation | Method for ensuring boot source integrity of a computing system |
US8904552B2 (en) * | 2007-04-17 | 2014-12-02 | Samsung Electronics Co., Ltd. | System and method for protecting data information stored in storage |
JP2008287505A (ja) * | 2007-05-17 | 2008-11-27 | Toshiba Corp | 情報処理装置およびレガシーエミュレーション処理停止制御方法 |
AU2008100698B4 (en) * | 2007-07-30 | 2009-04-02 | REAPP Technology Pty Limited | REAPP fourier transform computer security methodology |
US7827371B2 (en) * | 2007-08-30 | 2010-11-02 | Intel Corporation | Method for isolating third party pre-boot firmware from trusted pre-boot firmware |
US20090119748A1 (en) * | 2007-08-30 | 2009-05-07 | Jiewen Yao | System management mode isolation in firmware |
US8127296B2 (en) * | 2007-09-06 | 2012-02-28 | Dell Products L.P. | Virtual machine migration between processors having VM migration registers controlled by firmware to modify the reporting of common processor feature sets to support the migration |
US8522236B2 (en) * | 2007-12-28 | 2013-08-27 | Intel Corporation | Method and system for establishing a robust virtualized environment |
US8745337B2 (en) * | 2007-12-31 | 2014-06-03 | Teradyne, Inc. | Apparatus and method for controlling memory overrun |
JP5048526B2 (ja) * | 2008-01-10 | 2012-10-17 | 株式会社日立製作所 | 計算機システム及びその計算機システムへのレガシーブート方法 |
US8769702B2 (en) | 2008-04-16 | 2014-07-01 | Micosoft Corporation | Application reputation service |
US8327415B2 (en) * | 2008-05-30 | 2012-12-04 | Intel Corporation | Enabling byte-code based image isolation |
US8201239B2 (en) * | 2008-06-23 | 2012-06-12 | Intel Corporation | Extensible pre-boot authentication |
US8909940B2 (en) * | 2008-06-23 | 2014-12-09 | Intel Corporation | Extensible pre-boot authentication |
TW201005535A (en) * | 2008-07-17 | 2010-02-01 | Ind Tech Res Inst | Electronic apparatus and method for managing a plugged device |
US8041794B2 (en) | 2008-09-29 | 2011-10-18 | Intel Corporation | Platform discovery, asset inventory, configuration, and provisioning in a pre-boot environment using web services |
US8086839B2 (en) * | 2008-12-30 | 2011-12-27 | Intel Corporation | Authentication for resume boot path |
US20100211769A1 (en) * | 2009-02-19 | 2010-08-19 | Subramonian Shankar | Concurrent Execution of a Smartphone Operating System and a Desktop Operating System |
CN101777002B (zh) * | 2010-01-18 | 2012-12-19 | 杭州宇酷信息技术有限公司 | 一种基于虚拟化的软件运行方法 |
US8522066B2 (en) | 2010-06-25 | 2013-08-27 | Intel Corporation | Providing silicon integrated code for a system |
US8312258B2 (en) | 2010-07-22 | 2012-11-13 | Intel Corporation | Providing platform independent memory logic |
US8539245B2 (en) | 2010-08-06 | 2013-09-17 | Intel Corporation | Apparatus and method for accessing a secure partition in non-volatile storage by a host system enabled after the system exits a first instance of a secure mode |
US8386618B2 (en) | 2010-09-24 | 2013-02-26 | Intel Corporation | System and method for facilitating wireless communication during a pre-boot phase of a computing device |
US20120166172A1 (en) * | 2010-12-23 | 2012-06-28 | Fleming Bruce L | Providing legacy computing compatibility |
US9087196B2 (en) * | 2010-12-24 | 2015-07-21 | Intel Corporation | Secure application attestation using dynamic measurement kernels |
CN103329095B (zh) | 2011-01-28 | 2017-03-22 | 惠普发展公司,有限责任合伙企业 | 用编码的信息验证管理程序 |
US8549644B2 (en) * | 2011-03-28 | 2013-10-01 | Mcafee, Inc. | Systems and method for regulating software access to security-sensitive processor resources |
US8925089B2 (en) | 2011-03-29 | 2014-12-30 | Mcafee, Inc. | System and method for below-operating system modification of malicious code on an electronic device |
US9087199B2 (en) | 2011-03-31 | 2015-07-21 | Mcafee, Inc. | System and method for providing a secured operating system execution environment |
US9038176B2 (en) | 2011-03-31 | 2015-05-19 | Mcafee, Inc. | System and method for below-operating system trapping and securing loading of code into memory |
US9317690B2 (en) | 2011-03-28 | 2016-04-19 | Mcafee, Inc. | System and method for firmware based anti-malware security |
US9262246B2 (en) | 2011-03-31 | 2016-02-16 | Mcafee, Inc. | System and method for securing memory and storage of an electronic device with a below-operating system security agent |
US8863283B2 (en) | 2011-03-31 | 2014-10-14 | Mcafee, Inc. | System and method for securing access to system calls |
US8966624B2 (en) | 2011-03-31 | 2015-02-24 | Mcafee, Inc. | System and method for securing an input/output path of an application against malware with a below-operating system security agent |
US9032525B2 (en) | 2011-03-29 | 2015-05-12 | Mcafee, Inc. | System and method for below-operating system trapping of driver filter attachment |
US8813227B2 (en) | 2011-03-29 | 2014-08-19 | Mcafee, Inc. | System and method for below-operating system regulation and control of self-modifying code |
US8966629B2 (en) | 2011-03-31 | 2015-02-24 | Mcafee, Inc. | System and method for below-operating system trapping of driver loading and unloading |
US8959638B2 (en) | 2011-03-29 | 2015-02-17 | Mcafee, Inc. | System and method for below-operating system trapping and securing of interdriver communication |
CN102231116A (zh) * | 2011-07-04 | 2011-11-02 | 成都市华为赛门铁克科技有限公司 | 应用程序虚拟化安装及加载方法及装置 |
US8578378B2 (en) * | 2011-07-28 | 2013-11-05 | Intel Corporation | Facilitating compatible interaction, at least in part |
JP5779281B2 (ja) * | 2011-09-30 | 2015-09-16 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | コンピュータシステムにおける仮想化装置の制御 |
US8788763B2 (en) * | 2011-10-13 | 2014-07-22 | International Business Machines Corporation | Protecting memory of a virtual guest |
US8782351B2 (en) * | 2011-10-13 | 2014-07-15 | International Business Machines Corporation | Protecting memory of a virtual guest |
US20130117006A1 (en) * | 2011-11-07 | 2013-05-09 | Microsoft Corporation | Simulated boot process to detect introduction of unauthorized information |
US9054865B2 (en) * | 2011-11-16 | 2015-06-09 | V-Key, Inc. | Cryptographic system and methodology for securing software cryptography |
RU2472215C1 (ru) * | 2011-12-28 | 2013-01-10 | Закрытое акционерное общество "Лаборатория Касперского" | Способ выявления неизвестных программ с использованием эмуляции процесса загрузки |
WO2013101081A1 (en) | 2011-12-29 | 2013-07-04 | Intel Corporation | Methods and apparatus for trusted boot optimization |
EP2831792B1 (en) | 2012-03-30 | 2020-12-30 | Intel Corporation | Providing an immutable antivirus payload for internet ready compute nodes |
US8918879B1 (en) * | 2012-05-14 | 2014-12-23 | Trend Micro Inc. | Operating system bootstrap failure detection |
US9900157B2 (en) * | 2012-08-16 | 2018-02-20 | Digicert, Inc. | Object signing within a cloud-based architecture |
US9230081B2 (en) | 2013-03-05 | 2016-01-05 | Intel Corporation | User authorization and presence detection in isolation from interference from and control by host central processing unit and operating system |
KR101764197B1 (ko) | 2013-06-27 | 2017-08-02 | 인텔 코포레이션 | 연속적인 다중 인자 인증 |
US9411975B2 (en) | 2014-03-31 | 2016-08-09 | Intel Corporation | Methods and apparatus to securely share data |
US10073964B2 (en) | 2015-09-25 | 2018-09-11 | Intel Corporation | Secure authentication protocol systems and methods |
US9449189B1 (en) | 2015-11-03 | 2016-09-20 | International Business Machines Corporation | Protection of state data in computer system code |
US10019279B2 (en) * | 2015-12-17 | 2018-07-10 | International Business Machines Corporation | Transparent secure interception handling |
ES2827790T3 (es) | 2017-08-21 | 2021-05-24 | Carrier Corp | Sistema antiincendios y de seguridad que incluye bucle accesible por dirección y mejora automática de firmware |
CN110134443A (zh) * | 2018-02-08 | 2019-08-16 | 联想企业解决方案(新加坡)有限公司 | 在计算设备中执行附件的选项rom的方法和设备 |
US11238160B2 (en) * | 2018-09-28 | 2022-02-01 | Apple Inc. | Boot firmware sandboxing |
KR20210112923A (ko) | 2020-03-06 | 2021-09-15 | 삼성전자주식회사 | 시스템 온 칩 및 이의 동작 방법 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55112651A (en) * | 1979-02-21 | 1980-08-30 | Fujitsu Ltd | Virtual computer system |
JPS6095648A (ja) * | 1983-10-28 | 1985-05-29 | Fujitsu Ltd | 仮想fba擬似処理装置 |
US4787031A (en) * | 1985-01-04 | 1988-11-22 | Digital Equipment Corporation | Computer with virtual machine mode and multiple protection rings |
JPS6278642A (ja) * | 1985-10-01 | 1987-04-10 | Hitachi Ltd | メモリ管理ユニツト制御方式 |
JP2708608B2 (ja) * | 1990-05-25 | 1998-02-04 | 富士通株式会社 | 仮想計算機のipl処理方式 |
US5437033A (en) * | 1990-11-16 | 1995-07-25 | Hitachi, Ltd. | System for recovery from a virtual machine monitor failure with a continuous guest dispatched to a nonguest mode |
US5522075A (en) * | 1991-06-28 | 1996-05-28 | Digital Equipment Corporation | Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces |
US5721922A (en) * | 1994-10-13 | 1998-02-24 | Intel Corporation | Embedding a real-time multi-tasking kernel in a non-real-time operating system |
US5844986A (en) * | 1996-09-30 | 1998-12-01 | Intel Corporation | Secure BIOS |
GB9626241D0 (en) * | 1996-12-18 | 1997-02-05 | Ncr Int Inc | Secure data processing method and system |
WO1998029807A1 (en) * | 1996-12-30 | 1998-07-09 | Cirrus Logic, Inc. | Real time services in backwardly compatible operating systems |
EP1013023B1 (en) * | 1997-02-13 | 2005-10-26 | Walter A. Helbig, Sr. | Security coprocessor for enhancing computer system security |
US6075938A (en) | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US6175924B1 (en) * | 1997-06-20 | 2001-01-16 | International Business Machines Corp. | Method and apparatus for protecting application data in secure storage areas |
US6321323B1 (en) * | 1997-06-27 | 2001-11-20 | Sun Microsystems, Inc. | System and method for executing platform-independent code on a co-processor |
US6321337B1 (en) * | 1997-09-09 | 2001-11-20 | Sanctum Ltd. | Method and system for protecting operations of trusted internal networks |
JPH11215120A (ja) * | 1998-01-27 | 1999-08-06 | Fujitsu Ltd | 通信装置 |
US6397242B1 (en) * | 1998-05-15 | 2002-05-28 | Vmware, Inc. | Virtualization system including a virtual machine monitor for a computer with a segmented architecture |
US6496847B1 (en) * | 1998-05-15 | 2002-12-17 | Vmware, Inc. | System and method for virtualizing computer systems |
US6609199B1 (en) * | 1998-10-26 | 2003-08-19 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
WO2000048061A1 (en) * | 1999-02-15 | 2000-08-17 | Hewlett-Packard Company | Protection of the configuration of modules in computing apparatus |
US6986137B1 (en) * | 1999-09-28 | 2006-01-10 | International Business Machines Corporation | Method, system and program products for managing logical processors of a computing environment |
US7818808B1 (en) | 2000-12-27 | 2010-10-19 | Intel Corporation | Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor |
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 |
US7272831B2 (en) * | 2001-03-30 | 2007-09-18 | Intel Corporation | Method and apparatus for constructing host processor soft devices independent of the host processor operating system |
US7487330B2 (en) * | 2001-05-02 | 2009-02-03 | International Business Machines Corporations | Method and apparatus for transferring control in a computer system with dynamic compilation capability |
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 |
-
2001
- 2001-09-27 US US09/966,015 patent/US7103529B2/en not_active Expired - Fee Related
-
2002
- 2002-09-27 CN CNB02819232XA patent/CN100533385C/zh not_active Expired - Fee Related
- 2002-09-27 WO PCT/US2002/031156 patent/WO2003027835A2/en active Application Filing
- 2002-09-27 JP JP2003531310A patent/JP2005528665A/ja active Pending
- 2002-09-27 GB GB0404784A patent/GB2397415A/en not_active Withdrawn
- 2002-09-27 KR KR1020047004446A patent/KR100692346B1/ko not_active IP Right Cessation
- 2002-09-27 DE DE10297273T patent/DE10297273B4/de not_active Expired - Fee Related
- 2002-09-27 AU AU2002343467A patent/AU2002343467A1/en not_active Abandoned
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100419681C (zh) * | 2005-09-22 | 2008-09-17 | 联想(北京)有限公司 | 一种网络复制系统与方法 |
CN101273364B (zh) * | 2005-09-23 | 2013-09-18 | 英特尔公司 | 用于计算平台数据保护的方法 |
US8656487B2 (en) | 2005-09-23 | 2014-02-18 | Intel Corporation | System and method for filtering write requests to selected output ports |
CN101373441B (zh) * | 2008-09-19 | 2012-04-18 | 苏州壹世通科技有限公司 | 一种基于固件的虚拟化平台系统 |
CN105074663A (zh) * | 2013-03-12 | 2015-11-18 | 高通股份有限公司 | 按需选择性地启用虚拟机监测器的操作的方法和装置 |
CN105074663B (zh) * | 2013-03-12 | 2018-08-28 | 高通股份有限公司 | 按需选择性地启用虚拟机监测器的操作的方法和装置 |
US10310882B2 (en) | 2013-03-12 | 2019-06-04 | Qualcomm Incorporated | Algorithm and apparatus to deploy virtual machine monitor on demand |
CN104133752A (zh) * | 2013-06-25 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 操作平台的监控方法和装置 |
CN104133752B (zh) * | 2013-06-25 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 操作平台的监控方法和装置 |
CN106687980A (zh) * | 2014-09-17 | 2017-05-17 | 国际商业机器公司 | 管理程序和虚拟机保护 |
US10409978B2 (en) | 2014-09-17 | 2019-09-10 | International Business Machines Corporation | Hypervisor and virtual machine protection |
CN106687980B (zh) * | 2014-09-17 | 2019-10-11 | 国际商业机器公司 | 管理程序和虚拟机保护 |
Also Published As
Publication number | Publication date |
---|---|
WO2003027835A2 (en) | 2003-04-03 |
KR100692346B1 (ko) | 2007-03-09 |
KR20040037148A (ko) | 2004-05-04 |
US7103529B2 (en) | 2006-09-05 |
GB0404784D0 (en) | 2004-04-07 |
DE10297273T5 (de) | 2004-09-16 |
JP2005528665A (ja) | 2005-09-22 |
AU2002343467A1 (en) | 2003-04-07 |
GB2397415A (en) | 2004-07-21 |
DE10297273B4 (de) | 2008-08-21 |
WO2003027835A3 (en) | 2004-07-15 |
CN100533385C (zh) | 2009-08-26 |
US20030061497A1 (en) | 2003-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100533385C (zh) | 用于提供系统完整性和遗留环境模拟的方法及装置 | |
CN108292337B (zh) | 虚拟化环境下安全堡垒区域的可信开启 | |
AU2013297064B2 (en) | Methods, systems, and computer readable medium for active monitoring, memory protection and integrity verification of target devices | |
US8312509B2 (en) | High integrity firmware | |
US8856473B2 (en) | Computer system protection based on virtualization | |
US8341369B2 (en) | Providing protected access to critical memory regions | |
US20050132122A1 (en) | Method, apparatus and system for monitoring system integrity in a trusted computing environment | |
US8327415B2 (en) | Enabling byte-code based image isolation | |
KR20180099682A (ko) | 가상 머신 감사를 위한 시스템 및 방법들 | |
KR20160043134A (ko) | 가상 머신 및 네스티드 가상 머신 매니저의 인증 론치 | |
JP6370098B2 (ja) | 情報処理装置、情報処理監視方法、プログラム、及び記録媒体 | |
US20150379265A1 (en) | Systems And Methods For Preventing Code Injection In Virtualized Environments | |
WO2024040508A1 (en) | Memory preserved warm reset mechanism | |
Mironov et al. | Trusted Boot Mechanisms in Physical and Virtual Environments | |
CN118395415A (zh) | 一种增强移动设备操作系统虚拟内核安全的方法 | |
CN117932689A (zh) | 服务的保护方法、装置、电子设备及可读存储介质 | |
Zhang et al. | A multi-core security architecture based on EFI | |
Parno et al. | How Do We Make Sense of Platform State? |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090826 Termination date: 20150927 |
|
EXPY | Termination of patent right or utility model |