CN107506638B - 一种基于硬件机制的内核控制流异常检测方法 - Google Patents

一种基于硬件机制的内核控制流异常检测方法 Download PDF

Info

Publication number
CN107506638B
CN107506638B CN201710674436.2A CN201710674436A CN107506638B CN 107506638 B CN107506638 B CN 107506638B CN 201710674436 A CN201710674436 A CN 201710674436A CN 107506638 B CN107506638 B CN 107506638B
Authority
CN
China
Prior art keywords
legal
jump
destination address
configuring
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710674436.2A
Other languages
English (en)
Other versions
CN107506638A (zh
Inventor
曾庆凯
焦贺贺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
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 Nanjing University filed Critical Nanjing University
Priority to CN201710674436.2A priority Critical patent/CN107506638B/zh
Publication of CN107506638A publication Critical patent/CN107506638A/zh
Application granted granted Critical
Publication of CN107506638B publication Critical patent/CN107506638B/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种基于硬件机制的内核控制流异常检测方法,包括以下步骤:进入VMM环境;生成合法跳转目的地址集合;配置VMCS区域;配置LBR;配置PMU;进入VM环境;分支记录验证。通过LBR机制能够在内核运行期间自动记录分支跳转的源地址和目标地址,使检测系统的开销显著降低;通过PMU机制能够在LBR记录写满时产生NMI中断,使检测系统不会出现遗漏分支跳转的情况;通过硬件虚拟化机制捕捉NMI中断,并对记录进行验证,提高系统的安全性。相比于传统的检测系统,本发明能显著提高内核异常控制流检测的安全性和完整性。

Description

一种基于硬件机制的内核控制流异常检测方法
技术领域
本发明属于操作系统内核完整性保护领域,具体涉及一种基于硬件机制的内核控制流异常检测方法。
背景技术
操作系统是计算机系统运行的基础,是计算机系统安全运行的根本,如果操作系统的安全得不到保障,那么整个计算机系统都将处于危险之中。当前,典型的计算机操作系统普遍采用不安全的程序语言编写,内核代码量庞大、数据结构复杂,并且包含有大量第三方内核模块,造成现代操作系统普遍存在大量的漏洞和错误,使攻击者有了可乘之机。在针对操作系统内核的攻击方式中,控制流劫持攻击是最为常见的一种形式。控制流劫持攻击利用内核漏洞劫持内核的控制流,使内核控制流转到恶意代码处执行。针对控制流劫持攻击,可以通过检测内核运行是否存在异常控制流来防御。然而,目前的内核异常控制流检测方法在检测过程中普遍存在着系统不安全、检测不完整和性能开销大等问题,影响着检测方法的适用性。
发明内容
本发明的针对现有技术中的不足,提供一种基于硬件机制的内核控制流异常检测方法。
为实现上述目的,本发明采用以下技术方案:
一种基于硬件机制的内核控制流异常检测方法,其特征在于,包括以下步骤:
进入VMM环境:在Intel处理器启动后进行配置,使系统进入VMM环境执行;
生成合法跳转目的地址集合:通过对目标操作系统内核进行解析,并运行预先准备的测试程序,分别产生三种指令的合法跳转目的地址集合,三种指令的合法跳转目的地址集合分别为call指令合法跳转目的地址集合、jump指令合法跳转目的地址集合和ret指令合法跳转目的地址集合;
配置VMCS区域:配置目标操作系统运行的VMCS区域,使其能够捕捉记录写满时产生的不可屏蔽中断,设置此不可屏蔽中断的中断处理程序地址;
配置LBR:配置控制着LBR机制行为方式的IA32_DEBUGCTL寄存器和IA32_LASTBRANCH_TOS寄存器,使LBR在系统运行期间记录所需的分支跳转的源地址和目的地址;
配置PMU:配置控制着PMU机制行为方式的IA32_PMCI寄存器和IA32_PERFEVTSEL1寄存器,使其在LBR写满时产生一个不可屏蔽中断;
进入VM环境:使系统进入VM环境,目标操作系统开始执行,硬件机制自动记录分支跳转;
分支记录验证:根据跳转指令类型的不同,比较跳转目的地址是否在相应的合法跳转目的地址集合中,如果在,则为合法跳转,否则,为异常控制流,系统发出警报。
为优化上述技术方案,采取的具体措施还包括:
所述进入VMM环境的过程包括:检测处理器是否支持VMX架构;开启VMX进入允许;分配VMXON区域地址空间;初始化VMXON区域;进入VMX模式,检查执行是否成功。
所述生成合法跳转目的地址集合的过程包括:收集内核函数入口地址;运行预先准备的测试程序;根据测试程序的执行情况设置白名单;生成call指令合法跳转目的地址集合;生成jump指令合法跳转目的地址集合;生成ret指令合法跳转目的地址集合。
所述配置VMCS区域的过程包括:分配VMCS区域地址空间;写入VMCS ID值;配置I/O位图;配置MSR位图;配置捕捉NMI中断;配置扩展页表;开启扩展页表。
所述配置LBR的过程包括:检测处理器是否支持所需LBR功能;配置分支记录存放地址;配置分支过滤功能;开启LBR机制。
所述配置PMU的过程包括:检测硬件是否支持所需PMU功能;配置监控事件;配置事件计数器溢出条件;开启计数器。
所述进入VM环境的过程包括:执行VMCLEAR指令;执行VMPTRLD指令;执行VMLAUNCH指令。
所述分支记录验证的过程包括:
步骤901:置LBR序号为0;
步骤902:从LBR分支记录中顺序取出一个新的记录,LBR序号加1;
步骤903:判断指令是否为call指令。是转到步骤904,否转到步骤905;
步骤904:验证call指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对call指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在call指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤905:判断指令是否为jump指令。是转到步骤906,否转到步骤907;
步骤906:验证jump指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对jump指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在jump指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤907:判断指令是否为ret指令,是转到步骤908,否转到步骤910;
步骤908:验证ret指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对ret指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在ret指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤909:查看LBR序号是否为16,是转到步骤911,否转到步骤902;
步骤910:系统会向管理员发出警报,内核控制流执行出现异常情况;
步骤911:验证结束,目标操作系统的控制流执行到目前为止是正确的。
本发明的有益效果是:通过LBR机制能够在内核运行期间自动记录分支跳转的源地址和目标地址,使检测系统的开销显著降低;通过PMU机制能够在LBR记录写满时产生NMI中断,使检测系统不会出现遗漏分支跳转的情况;通过硬件虚拟化机制捕捉NMI中断,并对记录进行验证,提高系统的安全性。相比于传统的检测系统,能显著提高内核异常控制流检测的安全性和完整性。
附图说明
图1是内核控制流异常检测系统的结构示意图。
图2是内核控制流异常检测系统的流程示意图。
图3是进入VMM环境的流程示意图。
图4是合法跳转地址收集的流程示意图。
图5是配置VMCS区域的流程示意图。
图6是配置LBR机制的流程示意图。
图7是配置PUM机制的流程示意图。
图8是进入VM环境的流程示意图。
图9是分支记录验证的流程示意图。
具体实施方式
现在结合附图对本发明作进一步详细的说明。
如图1所示,内核控制流异常检测系统位于目标操作系统的下层,直接运行在硬件之上,整个系统主要包括三个操作:配置硬件、收集跳转合法地址集合和验证分支跳转,配置硬件以使硬件机制自动记录内核分支跳转的源地址和目标地址;收集跳转合法地址集合以作为分支跳转验证的依据;对所有的分支跳转进行验证来发现系统执行期间是否存在异常的控制流。
如图2所示的基于硬件机制的内核控制流异常检测方法,包括:
21:进入VMM(虚拟机监管者)环境:Intel处理器启动时默认关闭硬件虚拟化机制,因此为了使系统能够使用处理器提供的硬件虚拟化功能,必须进行相应配置,使系统进入VMM环境执行;
22:生成合法跳转目的地址集合:首先对目标操作系统内核源代码进行解析,找出所有内核函数的入口地址;然后运行预先准备的测试程序,根据测试的执行情况,制定记录特例的白名单;最后,产生三种指令的合法跳转目的地址集合:call指令合法跳转目的地址集合、jump指令合法跳转目的地址集合和ret指令合法跳转目的地址集合,此操作得到的数据是验证阶段的确定跳转是否合法的依据;
23:配置VMCS(虚拟机控制结构)区域:配置目标操作系统运行的VMCS区域,使其能够捕捉记录写满是产生的不可屏蔽中断,而其它类型的中断则由目标操作系统自行处理,并且设置好此不可屏蔽中断的中断处理程序地址;
24:配置LBR(最近分支记录):配置控制着LBR机制行为方式的IA32_DEBUGCTL寄存器和IA32_LASTBRANCH_TOS寄存器,使LBR在系统运行期间记录所需的分支跳转的源地址和目的地址;
25:配置PMU(性能监控部件):配置控制着PMU机制行为方式的IA32_PMCI寄存器和IA32_PERFEVTSEL1寄存器,使其在LBR写满时产生一个不可屏蔽中断;
26:进入VM(虚拟机)环境:使系统进入VM环境,目标操作系统开始执行,硬件机制自动记录分支跳转;
27:分支记录验证:根据跳转指令类型的不同,比较跳转目的地址在是否在相应的合法跳转目的地址集合中,如果在,则为合法跳转,否则,为异常控制流,系统发出警报。
如图3所示,步骤21包括:
31:检测处理器是否支持VMX架构,是转到33,否转到32。对系统是否支持VMX(虚拟机扩展)架构的检测是通过检查CPUID.01H:ECX[5].VMXA位来实现的,该位为1表明处理器支持VMX架构,否则表明处理器不支持VMX架构;
32:系统停止运行;
33:开启VMX进入允许:通过开启CR4.VMXE控制位来开启VMX进入允许;
34:分配VMXON(虚拟机监控器控制结构)区域地址空间:分配一个4K边界对齐的地址空间作为VMXON区域;
35:初始化VMXON区域:VMXON区域的首个双字必须等于IA32_VMX_BASIC[31:0]的值;
36:进入VMX模式:执行VMXON指令,提供一个VMXON区域的物理指针作为操作数;
37:检查执行是否成功,是转到38,否转到32。检查执行是否成功是通过分别检查CF与ZE标志位来实现的,当CF=1或ZF=1时,表明操作失败,否则表明操作成功;
38:进入VMM环境成功:根据37的检查,表明此时系统成功进入VMM环境。
如图4所示,步骤22包括:
41:生成内核函数入口地址集合:对操作系统内核源代码进行分析,找出所有内核函数的入口地址;
42:运行预先准备的测试程序:准备好测试程序,测试程序应尽可能地覆盖所有可能的执行流;
43:根据测试程序的执行情况设置白名单:测试程序的执行跳转有不是内核函数入口地址的,作为特例,生成一个特殊情况的白名单;
44:生成call指令合法跳转目的地址集合:call指令的跳转目标地址必须是内核函数的入口地址,以此为依据生成call指令合法跳转目的地址集合;
45:生成jump指令合法跳转目的地址集合:Jump指令的跳转目标地址可以是内核函数的入口地址,也可以是本函数内的地址,以此为依据生成jump指令合法跳转目的地址集合;
46:生成ret指令合法跳转目的地址集合:Ret指令的跳转目标地址必须是调用本函数的call指令的下一个地址,以此为依据生成ret指令合法跳转目的地址集合。
如图5所示,步骤23包括:
51:分配VMCS区域地址空间:分配一个4K边界对齐的地址空间作为VMCS区域;
52:写入VMCS ID值:VMCS的首个双字值是VMCS ID值,这个值必须等于IA32_VMX_BASIC[31:0]的值;
53:配置I/O位图:把I/O位图设置成禁止non-root模式访问PCI/PCIe配置空间;
54:配置MSR(处理器管理寄存器)位图:把MSR位图设置成禁止non-root模式修改LBR相关的MSR寄存器;
55:配置捕捉NMI(不可屏蔽中断)中断:设置系统使其能够捕捉记录写满时产生的NMI中断,而其它类型的中断则由目标操作系统自行处理,并且设置好此NMI中断的中断处理程序地址;
56:配置扩展页表:为简单起见,配置虚拟物理地址和实际物理地址一一对应;
57:开启扩展页表:开启虚拟物理地址到实际物理地址的映射关系。
如图6所示,步骤24包括:
61:检测处理器是否支持所需LBR功能,是转到63,否转到62。检测处理器是否支持所需LBR功能是通过DisplayFamily的值和DisplyModel的值来确定的;
62:系统停止运行;
63:配置分支记录存放地址:分支记录的基地址是通过IA32_LASTBRANCH_TO寄存器来设定的;
64:配置分支过滤功能:通过设置MSR_LBR_SELECT寄存器来配置分支过滤功能,使LBR只记录内核间接call、内核间接jump和内核ret;
65:开启LBR机制:设置IA32_DEBUGCTL寄存器开始LBR记录功能。
如图7所示,步骤25包括:
71:检测硬件是否支持所需PMU(性能监控部件)功能,是转到73,否转到72。检测硬件是否支持所需PMU功能是通过CPUID指令的0AH leaf来实现的;
72:系统停止运行;
73:配置监控事件:通过设置IA32_PERFEVTSELx寄存器来配置需要监控的事件,即间接call、间接jump和ret;
74:配置事件计数器溢出条件:配置计数器溢出的条件为16,即当计数器计数到16时产生NMI中断;
75:开启事件计数器:通过设置IA32_PERF_GLOBAL_CTRL寄存器和各自对应的控制器来开启事件计数器。
如图8所示,步骤26包括:
81:执行VMCLEAR指令:设置VMCS的launch状态为“clear”,处理器置当前VMCS指针为FFFFFFFF_FFFFFFFFh值;
82:执行VMPTRLD指令:装载这个VMCS指针作为当前的VMCS指针,由处理器维护这个VMCS指针;
83:执行VMLAUNCH指令:执行VMLAUNCH指令系统将进入VM环境,处理器切换到非根模式运行。
如图9所示,步骤27包括:
901:置LBR序号为0;
902:从LBR分支记录中顺序取出一个新的记录,LBR序号加1;
903:判断指令是否为call指令,是转到904,否转到905;
904:验证call指令跳转目的地址是否合法,是转到909,否转到910;对call指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在call指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
905:判断指令是否为jump指令,是转到906,否转到907;
906:验证jump指令跳转目的地址是否合法,是转到909,否转到910;对jump指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在jump指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
907:判断指令是否为ret指令,是转到908,否转到910;
908:验证ret指令跳转目的地址是否合法,是转到909,否转到910;对ret指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在ret指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
909:查看LBR序号是否为16,是转到911,否转到902;
910:系统发出警报,执行到这一步说明内核控制流执行出现异常情况,此时系统会向管理员发出警报;
911:验证结束,执行到这一步说明对16条记录的验证已经结束,系统没有发现异常控制流,目标操作系统的控制流执行到目前为止是正确的。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (4)

1.一种基于硬件机制的内核控制流异常检测方法,其特征在于,包括以下步骤:
进入VMM环境:在Intel处理器启动后进行配置,使系统进入VMM环境执行;
生成合法跳转目的地址集合:通过对目标操作系统内核进行解析,并运行预先准备的测试程序,分别产生三种指令的合法跳转目的地址集合,三种指令的合法跳转目的地址集合分别为call指令合法跳转目的地址集合、jump指令合法跳转目的地址集合和ret指令合法跳转目的地址集合;所述生成合法跳转目的地址集合的过程包括:收集内核函数入口地址;运行预先准备的测试程序;根据测试程序的执行情况设置白名单;生成call指令合法跳转目的地址集合;生成jump指令合法跳转目的地址集合;生成ret指令合法跳转目的地址集合;
配置VMCS区域:配置目标操作系统运行的VMCS区域,使其能够捕捉记录写满时产生的不可屏蔽中断,设置此不可屏蔽中断的中断处理程序地址;所述配置VMCS区域的过程包括:分配VMCS区域地址空间;写入VMCS ID值;配置I/O位图;配置MSR位图;配置捕捉NMI中断:设置系统使其能够捕捉记录写满时产生的NMI中断,而其它类型的中断则由目标操作系统自行处理,并且设置好此NMI中断的中断处理程序地址;配置扩展页表;开启扩展页表;
配置LBR:配置控制着LBR机制行为方式的IA32_DEBUGCTL寄存器和IA32_LASTBRANCH_TOS寄存器,使LBR在系统运行期间记录所需的分支跳转的源地址和目的地址;所述配置LBR的过程包括:检测处理器是否支持所需LBR功能;配置分支记录存放地址:分支记录的基地址是通过IA32_LASTBRANCH_TO寄存器来设定的;配置分支过滤功能:通过设置MSR_LBR_SELECT寄存器来配置分支过滤功能,使LBR只记录内核间接call、内核间接jump和内核ret;开启LBR机制:设置IA32_DEBUGCTL寄存器开始LBR记录功能;
配置PMU:配置控制着PMU机制行为方式的IA32_PMCI寄存器和IA32_PERFEVTSEL1寄存器,使其在LBR写满时产生一个不可屏蔽中断;所述配置PMU的过程包括:检测硬件是否支持所需PMU功能;配置监控事件:通过设置IA32_PERFEVTSELx寄存器来配置需要监控的事件,即间接call、间接jump和ret;配置事件计数器溢出条件:配置计数器溢出的条件为16,即当计数器计数到16时产生NMI中断;开启计数器:通过设置IA32_PERF_GLOBAL_CTRL寄存器和各自对应的控制器来开启事件计数器;
进入VM环境:使系统进入VM环境,目标操作系统开始执行,硬件机制自动记录分支跳转;
分支记录验证:根据跳转指令类型的不同,比较跳转目的地址是否在相应的合法跳转目的地址集合中,如果在,则为合法跳转,否则,为异常控制流,系统发出警报。
2.如权利要求1所述的一种基于硬件机制的内核控制流异常检测方法,其特征在于:所述进入VMM环境的过程包括:检测处理器是否支持VMX架构;开启VMX进入允许;分配VMXON区域地址空间;初始化VMXON区域;进入VMX模式,检查执行是否成功。
3.如权利要求1所述的一种基于硬件机制的内核控制流异常检测方法,其特征在于:所述进入VM环境的过程包括:执行VMCLEAR指令;执行VMPTRLD指令;执行VMLAUNCH指令。
4.如权利要求1所述的一种基于硬件机制的内核控制流异常检测方法,其特征在于:所述分支记录验证的过程包括:
步骤901:置LBR序号为0;
步骤902:从LBR分支记录中顺序取出一个新的记录,LBR序号加1;
步骤903:判断指令是否为call指令,是转到步骤904,否转到步骤905;
步骤904:验证call指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对call指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在call指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤905:判断指令是否为jump指令,是转到步骤906,否转到步骤907;
步骤906:验证jump指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对jump指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在jump指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤907:判断指令是否为ret指令,是转到步骤908,否转到步骤910;
步骤908:验证ret指令跳转目的地址是否合法,是转到步骤909,否转到步骤910;对ret指令跳转目的地址是否合法的验证是通过查看记录的目的地址是否在ret指令合法跳转目的地址集合中,如果在集合中,则跳转目的地址是合法的,否则,跳转目的地址不是合法的;
步骤909:查看LBR序号是否为16,是转到步骤911,否转到步骤902;
步骤910:系统会向管理员发出警报,内核控制流执行出现异常情况;
步骤911:验证结束,目标操作系统的控制流执行到目前为止是正确的。
CN201710674436.2A 2017-08-09 2017-08-09 一种基于硬件机制的内核控制流异常检测方法 Active CN107506638B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710674436.2A CN107506638B (zh) 2017-08-09 2017-08-09 一种基于硬件机制的内核控制流异常检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710674436.2A CN107506638B (zh) 2017-08-09 2017-08-09 一种基于硬件机制的内核控制流异常检测方法

Publications (2)

Publication Number Publication Date
CN107506638A CN107506638A (zh) 2017-12-22
CN107506638B true CN107506638B (zh) 2020-10-16

Family

ID=60689140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710674436.2A Active CN107506638B (zh) 2017-08-09 2017-08-09 一种基于硬件机制的内核控制流异常检测方法

Country Status (1)

Country Link
CN (1) CN107506638B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109144873B (zh) * 2018-08-22 2022-05-06 郑州云海信息技术有限公司 一种linux内核处理方法及装置
CN111400702B (zh) * 2020-03-24 2023-06-27 上海瓶钵信息科技有限公司 一种虚拟化的操作系统内核保护方法
CN114490448A (zh) * 2020-11-13 2022-05-13 华为技术有限公司 一种切换执行环境的方法及其相关设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929747A (zh) * 2012-11-05 2013-02-13 中标软件有限公司 基于龙芯服务器的Linux操作系统崩溃转储的处理方法
CN103309762A (zh) * 2013-06-21 2013-09-18 杭州华三通信技术有限公司 设备异常处理方法及装置
CN104036185A (zh) * 2014-06-23 2014-09-10 常熟理工学院 基于虚拟化的宏内核操作系统载入模块权能隔离方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8479053B2 (en) * 2010-07-28 2013-07-02 Intel Corporation Processor with last branch record register storing transaction indicator
CN102004678B (zh) * 2010-11-11 2013-06-12 青岛普加智能信息有限公司 操作系统性能分析方法及装置
US9405637B2 (en) * 2011-01-18 2016-08-02 Texas Instruments Incorporated Locking/unlocking CPUs to operate in safety mode or performance mode without rebooting
CN102750219B (zh) * 2011-04-22 2015-05-20 清华大学 基于cpu硬件性能监控计数器的cpi精确测量方法
CN104809401B (zh) * 2015-05-08 2017-12-19 南京大学 一种操作系统内核完整性保护方法
CN105260659B (zh) * 2015-09-10 2018-03-30 西安电子科技大学 一种基于qemu的内核级代码重用型攻击检测方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102929747A (zh) * 2012-11-05 2013-02-13 中标软件有限公司 基于龙芯服务器的Linux操作系统崩溃转储的处理方法
CN103309762A (zh) * 2013-06-21 2013-09-18 杭州华三通信技术有限公司 设备异常处理方法及装置
CN104036185A (zh) * 2014-06-23 2014-09-10 常熟理工学院 基于虚拟化的宏内核操作系统载入模块权能隔离方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Efficient and practical control flow monitoring for program security;Nai Xia 等;《Advances in Computer Science - ASIAN 2006. Secure Software and Related Issues. 11th Asian Computing Science Conference. Revised Selected Papers》;20081231;第90-104页 *
可信计算平台动态测试系统的设计与实现;姚伟平;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120315(第3期);第I138-288页 *

Also Published As

Publication number Publication date
CN107506638A (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
US11106792B2 (en) Methods and systems for performing a dynamic analysis of applications for protecting devices from malwares
US10460099B2 (en) System and method of detecting malicious code in files
Kawakoya et al. Memory behavior-based automatic malware unpacking in stealth debugging environment
CN109923546B (zh) 虚拟机安全性应用程序的事件过滤
CN106055385B (zh) 监控虚拟机进程的系统和方法、过滤page fault异常的方法
US10055585B2 (en) Hardware and software execution profiling
KR101759008B1 (ko) 코드 실행의 프로파일링
JP4518564B2 (ja) 不正コード実行の防止方法、不正コード実行の防止用プログラム、及び不正コード実行の防止用プログラムの記録媒体
US10776491B2 (en) Apparatus and method for collecting audit trail in virtual machine boot process
US20070113062A1 (en) Bootable computer system circumventing compromised instructions
US20070074199A1 (en) Method and apparatus for delivering microcode updates through virtual machine operations
CN105260659B (zh) 一种基于qemu的内核级代码重用型攻击检测方法
CN107506638B (zh) 一种基于硬件机制的内核控制流异常检测方法
US10380336B2 (en) Information-processing device, information-processing method, and recording medium that block intrusion of malicious program to kernel
KR20120031745A (ko) 커널 콜백 매커니즘을 이용한 악성코드 자동 분석 방법
CN103955649B (zh) 一种安全启动终端设备的方法
EP3063692B1 (en) Virtual machine introspection
US9536084B1 (en) Systems and methods for delivering event-filtered introspection notifications
US9734330B2 (en) Inspection and recovery method and apparatus for handling virtual machine vulnerability
US9596261B1 (en) Systems and methods for delivering context-specific introspection notifications
CN104715202A (zh) 一种虚拟机中的隐藏进程检测方法和装置
CN110737888B (zh) 虚拟化平台操作系统内核数据攻击行为检测方法
CN111444504A (zh) 一种用于软件运行时自动识别恶意代码的方法及装置
CN107203410B (zh) 一种基于系统调用重定向的vmi方法及系统
JP2015166952A (ja) 情報処理装置、情報処理監視方法、プログラム、及び記録媒体

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