CN111295644A - 保障硬件初始化 - Google Patents

保障硬件初始化 Download PDF

Info

Publication number
CN111295644A
CN111295644A CN201780096424.4A CN201780096424A CN111295644A CN 111295644 A CN111295644 A CN 111295644A CN 201780096424 A CN201780096424 A CN 201780096424A CN 111295644 A CN111295644 A CN 111295644A
Authority
CN
China
Prior art keywords
memory
physical memory
dma
protected
management tool
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
CN201780096424.4A
Other languages
English (en)
Other versions
CN111295644B (zh
Inventor
M·维拉泰尔
克里斯·道尔顿
卡雷·胡斯克罗夫特
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN111295644A publication Critical patent/CN111295644A/zh
Application granted granted Critical
Publication of CN111295644B publication Critical patent/CN111295644B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1052Security improvement

Landscapes

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

Abstract

一种用于在启动进程期间保障硬件初始化的方法,包括:激活物理存储器的受保护部分,分配物理存储器的受保护部分的一部分供直接存储器访问DMA驱动和与DMA不相关的硬件初始化指令使用,以及使用存储器管理工具分配物理存储器的由装置经由存储器管理工具可访问的第一部分以由数据使用。

Description

保障硬件初始化
背景技术
直接存储器访问(DMA)是装置在没有CPU干预的情况下直接访问存储器的一种方式。这可以显著减小CPU负荷,因为CPU不需要读取动态随机访问存储器(DRAM)中的数据并随后将其推送至装置,也不需要相反方向的操作。行为良好的装置将通常完全在运行于操作系统(OS)中的驱动的控制之下,且将仅当驱动希望时、在驱动希望的位置进行DMA。
附图说明
某些示例的各个特征将在随后结合附图的详细说明书中显而易见,附图仅借由示例方式一起图示多个特征,并且附图中:
图1是根据示例的引导进程的流程图;
图2是根据示例的引导进程的流程图;
图3是根据示例的用于在启动进程期间进行保障硬件初始化的方法的流程图;
图4是根据示例的系统的示意图;
图5是根据示例的引导进程的示意图;以及
图6示出了根据示例的与存储器相关联的处理器的示例。
具体实施方式
在以下说明书中,为了解释说明的目的,阐述某些示例的数个具体细节。说明书涉及“示例”或类似语言意味着结合示例所述的特定特征、结构或特性包括在至少该一个示例中,但是不必包括在其他示例中。
DMA攻击是计算机安全中的增长关注点。由于外部DMA端口例如Thunderbolt的引入,DMA攻击非常强大、廉价并日益易于执行,使得它们对于潜在的攻击者非常有吸引力。
已经存在越来越多的使用欺诈DMA装置攻击系统的攻击。这些攻击通常涉及攻击者会插入系统中的欺诈PCIe装置。PCIe(外围部件快速互联)是(其中)允许PCIe装置发起DMA事项的高速总线。例如,其用在台式机中以将分立的图形卡连接至母板。
由于设计DMA的方式,装置能随后读取或写入存储器的任何部分(显然除了系统管理RAM SMRAM之外)而系统软件并未知晓其发生,因此允许攻击者破解系统和/或从存储器获取加密密钥和其他敏感秘密。
作为运行在平台上的第一软件,基本输入/输出系统(BIOS)在使能针对潜在欺诈DMA装置的保护并随后将该保护传递至操作系统中具有关键作用。该操作的失败将使得攻击者绕过诸如例如联合可扩展固件接口(UEFI)安全引导的安全技术。近来,EFI固件开始成为这些攻击的目标。
历史上,(除了在微核的情形中)所有装置的驱动作为具有非常高特权的操作系统的一部分而运行。然而,随着虚拟化和管理程序变得普及,系统开始在由管理程序所分隔的多个相互未受信操作系统之中共享。在那些不同操作系统之间共享装置招致不可忽略的性能代价,这是希望能够将一些外围设备指派给一个单一访客的原因,因此访客可以获得该装置的全部性能。
然而,如果该装置能够发起DMA事项,则这将允许访客读取或写入属于其他访客或属于管理程序的存储器。结果,芯片制造者开始研发输入-输出存储器管理单元(IOMMU)技术,该技术允许特权软件(管理程序)限制给定的有DMA能力的装置能够访问什么存储器。这允许管理程序确保指派给特定访客的装置应该仅能读取或写入属于该访客的存储器。更通常地,通过确保低特权驱动无法命令装置对不属于该驱动的存储器进行DMA,这允许对有DMA能力的装置的驱动进行“去特权”。
根据示例,提供了一种针对DMA攻击而保障装置以防止DMA装置采用恶意代码替换存储器中的可执行代码的方法。例如,在引导进程中,BIOS可以将自身加载至存储器中并在那里继续其执行。然而,有DMA能力的攻击者可以潜在地修改存储器中BIOS的该映像并将其替换为他们自己的恶意BIOS。当BIOS在初始化并锁定SMM之前开始从存储器执行时,攻击者可以甚至获得SMM的控制。
类似地,信任了受信平台模块(TPM)的引导模块会预期:软件对映像进行检测,将该检测结果发送至TPM,并随后执行该映像。然而,攻击者可以潜在地使用DMA在映像已经被检测的时刻与其被执行的时刻之间修改映像。他也可以更简单地攻击负责检测映像并向TPM发送检测结果的代码。这接着影响了由依赖于受信引导和TPM来确保仅当预期进程已被引导时才发布加密密钥的技术所提供的安全性。
类似于对受信引导的攻击,攻击者可以通过在UEFI映像被认证的时刻与其被执行的时刻之间修改UEFI映像而攻击UEFI安全引导,或者攻击负责进行该认证的代码并使其无效。
根据示例,没有留下DRAM不被保护免受DMA攻击使得依赖于DRAM存储代码、数据等的BIOS/EFI固件和操作系统能被破解的窗口。
存在数个可应用的DMA保护性能:
Intel DPR(“DMA受保护范围”)寄存器,存在于所有近来的Intel芯片集中。其允许针对所有DMA而保护在主存储器段顶部(TESG)以下最多256MB的物理存储器。这确保仅处理器可以访问该存储器区域,且该寄存器也可以被锁定直至下一次重启。由TSEG所占据的存储器区域形成了相对于OS的存储器空洞因而OS无法看到TSEG区域。
Intel TV-d-PMR(“受保护存储器寄存器”)包括可以将低速存储器中一个区域和高速存储器中一个区域定义为针对来自下游装置的DMA而被保护的寄存器。这些寄存器被描述为一种安全地启动以在存储器中设置VT-d页面表的方式。
Intel VT-d-页面表定义了下游装置能够访问存储器的什么部分。因此将针对来自这些装置的DMA而保护存储器的所有其他部分。然而页面表必须设置在存储器中,这暗示了在初始化存储器之前无法使用它们,且当正在设置它们时必须使用PMR来保护它们免受DMA。
类似于以上,IOMMU(输入-输出存储器管理单元)可以用于提供存储器管理,且可以将有直接存储器访问能力(有DMA能力)的I/O总线连接至系统的主存储器。也即,存在可以使用的不同IOMMU规范。例如,原本称作IOMMU的I/O虚拟化技术“AMD-Vi”以及用于定向I/O的虚拟化技术(VT-d)。
根据示例,提供了一种在启动进程期间用于保障硬件初始化的方法。初始地,当CPU结束复位时,存在针对DMA保护存储器的两种方式:DPR和PMR。在示例中,DPR用于早期BIOS保护,因为它们被保留供BIOS使用(BIOS可以锁定它们),所以它们与任何IOMMU转换无关,且并未依赖于具有在平台上可应用的VT-d。然而,它们仅能保护紧接TSEG之下的256M存储器。因此,在示例中,当BIOS仍然从作为RAM的闪存/高速缓存原位执行时(也即在预EFI初始化阶段PEI期间),将那些寄存器设置为使得DRAM中BIOS将要使用的区域被保护免受DMA。
因为对有DMA能力的装置进行控制的一些驱动(例如平台初始化驱动)会分配受保护区域之外的存储器(否则装置将不工作),所以在示例中在已经锁定了SMRAM之后禁用DPR保护。
因而,存在更强的担保,使得甚至在恶意DMA装置的事件中,SMRAM也保持其应有状态。
随后,根据示例,保护扩展至整个BIOS,直至当OS准备好启动时。在示例中,同一DPR寄存器可以继续被用于保护BIOS。因而,驱动应当在被保护免受DMA的区域中分配“正常”存储器,且DMA装置的驱动应当分配在该区域之外的存储器。
在另一示例中,可以提供在BIOS中使能VT-d的驱动执行环境(DXE)驱动。这可以设置VT-d映射使得整个BIOS能够被保护免受DMA,并随后禁用DPR保护。这使得当进行DMA事项时能够接入进DMA驱动调用的现有Map()和Unmap()函数中,且设置会允许仅针对这些特殊区域的DMA的特殊VT-d映射。
根据示例,为了向OS移交,OS可以使得VT-d PMR(受保护存储器范围)寄存器可用,这使得OS能够获得VT-d的全部控制。
图1是根据示例的引导进程的流程图。在方框101中,系统的CPU结束复位(例如系统被上电)。在方框103中,在DPR寄存器中激活DMA保护,且在方框105中初始化DRAM。方框103和105中的进程可以反转。也即,可以在已经使用了DPR(或类似)之前初始化DRAM。在示例中,为了安全,在DRAM不被保护时,不应依赖DRAM中的一些事物(例如CPU指令、关键数据)的完整性。作为替代,以下流程有效:初始化DRAM;激活保护;开始依赖DRAM中的事物。
在该时刻,可以正常地(在DMA受保护区域内)使用DRAM,但是DMA驱动代码和数据在DMA受保护区域中分配,因为装置不应接触那些,且可以分配未保护存储器的专用部分以便于使能与装置的通信。
在方框107中,启动OS,且在方框109中OS针对OS所控制的存储器部分而在VT-d“PMR”寄存器中激活DMA保护。OS会在此设置VT-d页面表从而仅保护其自身,因为BIOS仍然在DPR保护之下。在示例中,OS可以替代PMR/除了PMR之外使用VT-d页面表。
图2是根据示例的引导进程的流程图。更具体地,图2是根据示例的使用VT-d页面表以最小化中断改变的引导进程的流程图。在方框201中系统的CPU结束复位(例如系统被上电)。在方框203中,在DPR寄存器中激活DMA保护,且在方框205中初始化DRAM。如之前,在该时刻,可以正常地(在DMA受保护区域内)使用DRAM。在方框207中,设置VT-d页面表(在DMA受保护存储器中)以确保二次保护包含了BIOS代码和VT-d映射的DRAM区域且在期望的情况下装置相互隔离。一旦设置了那些映射,就在方框209中去激活提供了早期DMA保护的DPR寄存器。
在方框211中启动OS,且在方框213中OS针对OS所控制的存储器部分在VT-d“PMR”寄存器中激活DMA保护。也即,OS在此设置VT-d页面表,其保护包含运行时BIOS代码的存储器区域,例如ACPI表和UEFI运行时服务(SMRAM不应是问题,因为其总是DMA受保护的)。如果在该时刻OS仍然依赖于进行DMA的UEFI驱动,则其所设置的页面表应该将此情况考虑在内。
图3是根据示例的用于在启动进程期间保障硬件初始化的方法的流程图。在方框301中,物理存储器的受保护部分被激活。例如,如上所述,可以在DPR寄存器中激活DMA保护。在方框303中,为直接存储器访问驱动的执行而分配物理存储器的受保护部分的一部分。在方框305中,使用存储器管理工具为数据执行而分配物理存储器的由装置经由存储器管理工具可访问的第一部分。例如,存储器管理工具可以是IOMMU或Vt-d控制器。
图4是根据示例的系统的示意图。示出了装置403的DRAM 401的一部分。示出了RAM401的受保护(DPR)区域405。在示例中,如上所述,可以在区域405中执行BIOS和驱动指令。存储器管理工具(MMT)407可用于分配存储器401的仅可以由装置403经由工具407访问的第一受保护区域409。存储器401的未受保护区域411可以保留供装置403使用。在示例中,从装置403接收数据(例如可执行的)。随后可以将其复制至受保护区域(405/409),在这里数据可以获得认证。如果认证成功,则可以执行数据。
在示例中,因为VT-d页面表是动态的,所以可以随意重新指派受保护/未保护部分。因此,装置可以对未保护存储器进行DMA,随后保护该存储器,并对其进行认证。
图5是根据示例的引导进程的示意图。在当装置(例如装置403)BIOS从上电501开始执行的时间段期间,根据示例存在所提供的两个进程以在启动进程期间保障硬件初始化。在BIOS进程的503中,使用DPR,且在BIOS进程的505中,使用DPR/IOMMU页面表直至当移交至OS时507。
本公开中的示例可以被提供为方法、系统或机器可读指令。这种机器可读指令可以包括在其中或其上具有计算机可读程序代码的计算机可读存储介质(包括但不限于磁盘存储、CD-ROM、光学存储等)上。
参照根据本公开示例的方法、装置和系统的流程图和/或方框图描述了本公开。尽管以上所述流程图示出了特定执行顺序,但是执行顺序可以不同于所示。关于一个流程图描述的方框可以与另一流程图的方框组合。在一些示例中,流程图的一些方框可以不是必须的和/或可以添加额外的方框。应该理解,流程图和/或方框图中每个流程和/或方框、以及流程图和/或方框图中流程和/或图的组合可以由机器可读指令实现。
机器可读指令可以例如由通用计算机、专用计算机、嵌入式处理器、或者其他可编程数据处理装置的处理器执行以实现说明书和附图中所述的功能。具体地,处理器或处理设备可以执行机器可读指令。因此,设备的模块可以由执行了存储在存储器中的机器可读指令的处理器、或根据嵌入在逻辑电路中的指令而工作的处理器来实施。术语“处理器”应该广义地解释为包括CPU、处理单元、ASIC、逻辑器件、或可编程门集合等。方法和模块均可以由单个处理器执行或者分布在数个处理器之中。
这种机器可读指令也可以存储在可以引导计算机或其他可编程数据处理装置以特定模式工作的计算机可读存储装置中。
例如,指令可以提供在编码有处理器可执行的指令的非临时性计算机可读存储介质上。
图6示出了与存储器152相关联的处理器150的示例。存储器152包括由处理器150可执行的计算机可读指令154。指令154可以包括用以激活物理存储器的受保护部分的指令,用于为直接存储器访问驱动的执行而分配物理存储器的受保护部分的一部分的指令,以及用以使用存储器管理工具为数据执行而分配物理存储器的由装置经由存储器管理工具可访问的第一部分的指令。
这种机器可读指令也可以加载至计算机或其他可编程数据处理装置上,使得计算机或其他可编程数据处理装置执行一系列操作以产生计算机实施的处理,因此运行在计算机或其他可编程装置上的指令提供了用于实现由流程图中的流程和/或方框图中的方框所指明的功能的操作。
进一步,在此的教导可以以计算机软件产品的形式实施,计算机软件产品存储在存储介质中并包括用于使计算机装置实施本公开示例中所述的方法的多个指令。
尽管已经参照某些示例描述了方法、设备和相关特征方面,但可以做出各种修改、改变、省略和替换而并未脱离本公开的精神。具体地,来自一个示例的特征或方框可以与另一示例的特征/方框组合或者由其所替换。
词语“包括”并未排除除了权利要求中所列那些之外其他元件的存在,“一”并未排除多个,并且单个处理器或另一单元可以实现权利要求中所述数个单元的功能。
任何从属权利要求的特征可以与任何独立权利要求或其他从属权利要求中任一个的特征组合。

Claims (15)

1.一种用于在启动进程期间保障硬件初始化的方法,所述方法包括:
激活物理存储器的受保护部分;
分配所述物理存储器的所述受保护部分的一部分,供直接存储器访问DMA驱动和与DMA不相关的硬件初始化指令使用;以及
使用存储器管理工具为数据而分配所述物理存储器的由装置经由所述存储器管理工具可访问的第一部分。
2.根据权利要求1所述的方法,进一步包括以下之一:
将位于所述物理存储器的所述第一部分中的所述数据的至少一部分复制和移至所述受保护部分中。
3.根据权利要求1所述的方法,进一步包括:
在所述受保护部分中认证位于所述物理存储器的所述第一部分中的所述数据。
4.根据权利要求2所述的方法,其中,在移至所述受保护部分之前、期间或之后,所述数据被修改。
5.根据权利要求1所述的方法,进一步包括:
在所述物理存储器的所述受保护部分内提供至所述物理存储器的所述第一部分的映射,所述映射使所述装置能够经由所述存储器管理工具访问所述第一部分。
6.根据权利要求1所述的方法,进一步包括:
在所述物理存储器的所述受保护部分中执行操作系统。
7.根据权利要求6所述的方法,进一步包括:
在所述物理存储器的所述第一部分中提供所述操作系统的DMA可访问部分。
8.一种包括物理存储器的系统,所述系统用于:
通过在系统启动进程期间激活所述物理存储器的受保护部分,以通过保护共享存储器资源的使用,而自引导至安全启动位置;
指派所述物理存储器的所述受保护部分的一部分,供直接存储器访问DMA驱动和与DMA不相关的硬件初始化指令使用,所述系统进一步包括存储器管理工具,所述存储器管理工具用于:
分配所述物理存储器的由装置经由所述存储器管理工具可访问的第一部分以由数据使用。
9.根据权利要求8所述的系统,进一步包括处理器,所述处理器用于以下之一:
将位于所述物理存储器的所述第一部分中的所述数据的至少一部分复制并移至所述受保护部分中。
10.根据权利要求9所述的系统,所述处理器进一步用于:
在所述受保护部分中认证位于所述物理存储器的所述第一部分中的所述数据。
11.根据权利要求8所述的系统,所述处理器进一步用于:
生成至所述物理存储器的所述第一部分的区域的映射;以及
在所述受保护部分内存储所述映射。
12.根据权利要求11所述的系统,所述存储器管理工具进一步用于:
控制对所述区域和所述受保护部分的访问。
13.一种非临时性机器可读存储介质,编码有指令,所述指令由装置的处理器可执行以用于在启动进程期间保障装置硬件初始化,所述机器可读存储介质包括用于执行以下操作的指令:
分配所述物理存储器的受保护部分的一部分,供直接存储器访问DMA驱动和与DMA不相关的硬件初始化指令使用;以及
使用存储器管理工具为数据而分配所述物理存储器的由装置经由所述存储器管理工具可访问的第一部分。
14.根据权利要求13所述的非临时性机器可读存储介质,进一步编码有用于执行以下操作的指令:
在所述受保护部分中认证在所述物理存储器的所述第一部分中执行的数据。
15.根据权利要求13所述的非临时性机器可读存储介质,进一步编码有用于执行以下操作的指令:
在所述物理存储器的所述受保护部分内生成至所述物理存储器的所述第一部分的映射,所述映射使所述装置能够经由所述存储器管理工具访问所述第一部分。
CN201780096424.4A 2017-10-30 2017-10-30 保障硬件初始化 Active CN111295644B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2017/059070 WO2019088978A1 (en) 2017-10-30 2017-10-30 Secure hardware initialization

Publications (2)

Publication Number Publication Date
CN111295644A true CN111295644A (zh) 2020-06-16
CN111295644B CN111295644B (zh) 2024-06-21

Family

ID=66332682

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780096424.4A Active CN111295644B (zh) 2017-10-30 2017-10-30 保障硬件初始化

Country Status (4)

Country Link
US (1) US11119947B2 (zh)
EP (1) EP3682335A4 (zh)
CN (1) CN111295644B (zh)
WO (1) WO2019088978A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114968855A (zh) * 2021-02-18 2022-08-30 西部数据技术公司 对持久性存储区域范围的一致访问

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11768691B2 (en) * 2020-09-18 2023-09-26 Intel Corporation Boot process for early display initialization and visualization
CN113051576A (zh) * 2021-03-31 2021-06-29 联想(北京)有限公司 控制方法和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103842976A (zh) * 2011-09-25 2014-06-04 超威半导体公司 具有保护模式以防止i/o装置进行存储器访问的输入/输出存储器管理单元
US20140173236A1 (en) * 2012-12-19 2014-06-19 Advanced Micro Devices, Inc. Secure computer system for preventing access requests to portions of system memory by peripheral devices and/or processor cores
US20150154031A1 (en) * 2013-12-04 2015-06-04 Insyde Software Corp. System and method to store data securely for firmware using read-protected storage
US20170177909A1 (en) * 2015-12-17 2017-06-22 Nitin Sarangdhar Method and apparatus for protecting a pci device controller from masquerade attacks by malware

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6131165A (en) * 1998-06-18 2000-10-10 Sun Microsystems, Inc. Permit for controlling access to services in protected memory systems
US7478235B2 (en) * 2002-06-28 2009-01-13 Microsoft Corporation Methods and systems for protecting data in USB systems
US7974416B2 (en) 2002-11-27 2011-07-05 Intel Corporation Providing a secure execution mode in a pre-boot environment
US20050114687A1 (en) * 2003-11-21 2005-05-26 Zimmer Vincent J. Methods and apparatus to provide protection for firmware resources
US20060117156A1 (en) 2004-12-01 2006-06-01 Chai Jesse C Method and apparatus for dual protection of a protected memory block
US7305544B2 (en) 2004-12-10 2007-12-04 Intel Corporation Interleaved boot block to support multiple processor architectures and method of use
US20060179308A1 (en) * 2005-02-07 2006-08-10 Andrew Morgan System and method for providing a secure boot architecture
US7380049B2 (en) * 2005-09-06 2008-05-27 Intel Corporation Memory protection within a virtual partition
US7921286B2 (en) 2007-11-14 2011-04-05 Microsoft Corporation Computer initialization for secure kernel
US9086913B2 (en) 2008-12-31 2015-07-21 Intel Corporation Processor extensions for execution of secure embedded containers
US10061718B2 (en) 2012-06-28 2018-08-28 Microsoft Technology Licensing, Llc Protecting secret state from memory attacks
US9075751B2 (en) 2012-08-09 2015-07-07 Intel Corporation Secure data protection with improved read-only memory locking during system pre-boot
US9323932B2 (en) 2012-12-19 2016-04-26 Advanced Micro Devices, Inc. Protecting memory contents during boot process
US9767044B2 (en) * 2013-09-24 2017-09-19 Intel Corporation Secure memory repartitioning
US9195404B2 (en) * 2013-12-17 2015-11-24 Intel Corporation Exposing protected memory addresses
US9363087B2 (en) 2014-10-02 2016-06-07 Microsoft Technology Licensing, Inc. End-to-end security for hardware running verified software
US9710651B2 (en) 2015-04-10 2017-07-18 Vixs Systems Inc. Secure processor for SoC initialization
FR3035528B1 (fr) * 2015-04-22 2017-05-26 Thales Sa Procede de controle systematique des adresses de zones memoire dans le cadre d'un transfert par acces direct

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103842976A (zh) * 2011-09-25 2014-06-04 超威半导体公司 具有保护模式以防止i/o装置进行存储器访问的输入/输出存储器管理单元
US20140173236A1 (en) * 2012-12-19 2014-06-19 Advanced Micro Devices, Inc. Secure computer system for preventing access requests to portions of system memory by peripheral devices and/or processor cores
US20150154031A1 (en) * 2013-12-04 2015-06-04 Insyde Software Corp. System and method to store data securely for firmware using read-protected storage
US20170177909A1 (en) * 2015-12-17 2017-06-22 Nitin Sarangdhar Method and apparatus for protecting a pci device controller from masquerade attacks by malware

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114968855A (zh) * 2021-02-18 2022-08-30 西部数据技术公司 对持久性存储区域范围的一致访问

Also Published As

Publication number Publication date
EP3682335A1 (en) 2020-07-22
WO2019088978A1 (en) 2019-05-09
US20200387458A1 (en) 2020-12-10
EP3682335A4 (en) 2021-03-31
CN111295644B (zh) 2024-06-21
US11119947B2 (en) 2021-09-14

Similar Documents

Publication Publication Date Title
EP2606450B1 (en) Method and apparatus for enforcing a mandatory security policy on an operating system (os) independent anti-virus (av) scanner
CN109918919B (zh) 认证变量的管理
US8726364B2 (en) Authentication and access protection of computer boot modules in run-time environments
US7827371B2 (en) Method for isolating third party pre-boot firmware from trusted pre-boot firmware
US10146962B2 (en) Method and apparatus for protecting a PCI device controller from masquerade attacks by malware
US20150178497A1 (en) Strongly Isolated Malware Scanning Using Secure Virtual Containers
US10552345B2 (en) Virtual machine memory lock-down
JP5308522B2 (ja) ハイパーバイザ・ローディングのためのメモリ管理
US10360386B2 (en) Hardware enforcement of providing separate operating system environments for mobile devices
US8205197B2 (en) Apparatus, system, and method for granting hypervisor privileges
Wojtczuk et al. Following the White Rabbit: Software attacks against Intel VT-d technology
US8627315B2 (en) Apparatus and method for cooperative guest firmware
US8843742B2 (en) Hypervisor security using SMM
CN111295644B (zh) 保障硬件初始化
US10565141B1 (en) Systems and methods for hiding operating system kernel data in system management mode memory to thwart user mode side-channel attacks
CN113467850A (zh) 管理程序移除
US20080104711A1 (en) System and method for an isolated process to control address translation
CN113449292B (zh) 一种可信应用的运行方法、装置及设备
Yao et al. A tour beyond BIOS: Using IOMMU for DMA protection in UEFI firmware
US11397602B2 (en) Processor control register configuration support
Chernov et al. The task of building a trusted computing environment on the Intel hardware platform
US20220222340A1 (en) Security and support for trust domain operation
US20240244034A1 (en) Computing system with dynamic firewall mechanism and associated method
Yefremov et al. An approach to on the fly activation and deactivation of virtualization-based security systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant