CN112395599B - 系统内核数据的攻击检测方法及装置、存储介质、计算机设备 - Google Patents

系统内核数据的攻击检测方法及装置、存储介质、计算机设备 Download PDF

Info

Publication number
CN112395599B
CN112395599B CN201910755437.9A CN201910755437A CN112395599B CN 112395599 B CN112395599 B CN 112395599B CN 201910755437 A CN201910755437 A CN 201910755437A CN 112395599 B CN112395599 B CN 112395599B
Authority
CN
China
Prior art keywords
access request
access
behavior
head
kernel
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
CN201910755437.9A
Other languages
English (en)
Other versions
CN112395599A (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.)
Qax Technology Group Inc
Qianxin Safety Technology Zhuhai Co Ltd
Original Assignee
Qax Technology Group Inc
Qianxin Safety Technology Zhuhai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qax Technology Group Inc, Qianxin Safety Technology Zhuhai Co Ltd filed Critical Qax Technology Group Inc
Priority to CN201910755437.9A priority Critical patent/CN112395599B/zh
Publication of CN112395599A publication Critical patent/CN112395599A/zh
Application granted granted Critical
Publication of CN112395599B publication Critical patent/CN112395599B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures

Landscapes

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

Abstract

本申请公开了系统内核数据的攻击检测方法及装置、存储介质、计算机设备,该方法包括:当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。本申请能够通过对访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为的拦截,实现针对未知的攻击行为的有效攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。

Description

系统内核数据的攻击检测方法及装置、存储介质、计算机设备
技术领域
本申请涉及计算机技术领域,尤其是涉及到系统内核数据的攻击检测方法及装置、存储介质、计算机设备。
背景技术
随着互联网技术的发展,网络安全显得尤为重要,但在现有的数据保护方案中,针对系统内核数据的攻击检测一直是业界难题,因为系统未知漏洞,甚至后门是确定存在的,仅通过漏洞发掘及漏洞封堵等技术手段并不能从根本上实现对漏洞的安全防御。具体地,漏洞发掘存在一定的盲目性,无法针对漏洞进行全方位的挖掘,存在一定的局限性;而漏洞堵封是在漏洞出现之后进行的后续补救,及时性较差。
可见,在未知的威胁前,仅通过漏洞发掘及漏洞封堵等技术手段是无法达到较好的安全防护效果的。因此,系统内核数据的访问安全仍然存在较大的隐患,系统内核数据的安全性较低。
发明内容
有鉴于此,本申请提供了系统内核数据的攻击检测方法及装置、存储介质、计算机设备,能够针对未知的攻击行为进行有效的攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。
根据本申请的一个方面,提供了一种系统内核数据的攻击检测方法,包括:
当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
根据本申请的另一方面,提供了一种系统内核数据的攻击检测装置,包括:
监测模块,用于当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
拦截模块,用于当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
判断模块,用于根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述系统内核数据的攻击检测方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述系统内核数据的攻击检测方法。
借由上述技术方案,本申请提供的系统内核数据的攻击检测方法及装置、存储介质、计算机设备,当系统内核接收到访问请求时,对该访问请求的调用路径进行实时监测,在实时监测的过程中,当监测到该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应该访问请求的欲调用行为,以便根据拦截到的对应该访问请求的欲调用行为,判断该访问请求是否为针对内核数据的攻击行为。其中,该欲调用行为即该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为。可见,通过对该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为的拦截,实现针对未知的攻击行为的有效攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的系统内核数据的攻击检测方法的流程示意图;
图2示出了本申请实施例提供的另一种系统内核数据的攻击检测方法的流程示意图;
图3示出了本申请实施例提供的一种系统内核数据的攻击检测装置的结构示意图;
图4示出了本申请实施例提供的另一种系统内核数据的攻击检测装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
针对现有的漏洞发掘的技术方案无法针对漏洞进行全方位的挖掘,存在一定的盲目性以及局限性的技术问题,以及漏洞堵封的技术方案在漏洞出现之后进行后续补救,及时性较差的技术问题。本实施例提供了一种系统内核数据的攻击检测方法,能够有效避免现有技术仅通过漏洞发掘及漏洞封堵等技术手段无法达到较好的安全防护效果,导致系统内核数据的访问安全仍然存在较大的隐患,系统内核数据的安全性较低的技术问题,如图1所示,该方法包括:
步骤101,当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测。
在本实施例中,访问请求为试图访问核心数据的请求,例如,用户的密钥、Shellcode等。以Shellcode为例,利用CPU提供的调试断点机制,在系统内核中实现对Shellcode的执行行为的监测。其中,执行行为即Shellcode试图定位关键的内核支持函数的定位路径。
步骤102,当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
在本实施例中,预先启动调试断点机制,以便在系统内核接收到Shellcode后,Shellcode根据其所包含的调用路径中的调用指令,试图调用其所对应的系统服务时,触发调试断点机制,从而利用硬件虚拟化机制拦截Shellcode试图执行的欲调用行为,防止被第三方程序占用或修改。
需要说明的是,利用调试断点机制在指定的内存位置(例如,1个字节、4个字节或者8个字节)处预先设置用于生成访问异常中断信息的访问断点,以及利用硬件虚拟化机制预先在指定的内存位置处注册回调响应,因此,在触发访问断点并生成上报事件(例如,访问异常中断信息)后,将生成的访问异常中断信息发送给虚拟监控器。其中,访问断点属于硬件断点。
步骤103,根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
在本实施例中,对拦截到的对应访问请求的欲调用行为进行解析,判断该欲调用行为是否存在对应的内存模块,若该欲调用行为存在对应的内存模块,则确定该访问请求为合法的访问行为,对所拦截到的对应访问请求的欲调用行为进行放行;若该欲调用行为不存在对应的内存模块,则确定该访问请求为非法的访问行为,即针对内核数据的攻击行为,从而实现该访问请求无法继续进行访问行为,同时针对所拦截到的对应访问请求的欲调用行为生成相应的告警信息。
通过应用本实施例的技术方案,当系统内核接收到访问请求时,对该访问请求的调用路径进行实时监测,在实时监测的过程中,当监测到该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应该访问请求的欲调用行为,以便根据拦截到的对应该访问请求的欲调用行为,判断该访问请求是否为针对内核数据的攻击行为。其中,该欲调用行为即该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为。与现有的漏洞发掘及漏洞封堵等技术方案相比,本实施例通过对访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为的拦截,实现针对未知的攻击行为的有效攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种系统内核数据的攻击检测方法,如图2所示,该方法包括:
步骤201,当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测。
为了说明步骤201的具体实施方式,作为一种优选实施例,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
具体实施中,当访问请求为Shellcode代码时,其定位内核支持函数的定位路径有别于合法数据访问时定位内核支持函数的合法定位路径。因此,通过对Shellcode代码的调用路径进行实时监测,并结合调试断点机制的方式,能够有效拦截Shellcode代码的访问行为,从而进一步实现对Shellcode代码的阻断及告警。
根据实际应用场景的需要,内核支持函数可以为用于提供系统服务的应用程序编程接口(API:Application Programming Interface),此处不对内核支持函数进行具体限定。
为了说明步骤201的具体实施方式,作为一种优选实施例,所述系统内核为Windows内核。
具体实施中,在windows内核中,访问请求根据其包含的调用路径中的调用指令,试图调用与访问请求对应的系统服务的欲调用行为,是指在windows内核中,监测访问请求根据其包含的调用路径中的调用指令,试图访问windows内核的PE头,或者根据访问到的PE头访问对应该PE头的系统函数导出表的访问行为,即试图调用系统函数导出表中与访问请求对应的系统服务的欲调用行为。
需要说明的是,利用调试断点机制在指定的内存位置(例如,指定的硬件寄存器)处预先设置用于生成访问异常中断信息的访问断点,该访问断点设置为访问PE头或者访问对应该PE头的系统函数导出表的访问行为。
步骤202,利用调试断点机制预设中断条件,所述中断条件为访问PE头或者对应所述PE头的导出表的访问行为。
具体实施中,当中断条件为访问PE头的访问行为时,触发调试断点机制中的访问断点并生成访问异常中断信息,根据访问异常中断信息获取执行访问请求的起始地址,通过预先加载具有PE文件格式的模块列表中所有内核模块(例如,驱动),判断执行访问请求的起始地址是否在具有PE文件格式的模块列表中内核模块的地址范围内,从而进一步判断所述访问请求是否为针对内核数据的攻击行为。
具体地,若执行访问请求的起始地址在具有PE文件格式的模块列表中内核模块的地址范围内,则确定该访问请求为合法访问行为;若执行访问请求的起始地址超出具有PE文件格式的模块列表中内核模块的地址范围,则确定该访问请求为针对内核数据的攻击行为。其中,内核模块包括ntoskrnl.exe。
步骤203,将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对。
为了说明步骤203的具体实施方式,作为一种优选实施例,在步骤203之前,具体还包括:对访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行监测,具体包括:
所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;以及,根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
具体实施中,当访问请求为Shellcode代码时,Shellcode代码根据其所包含的调用路径中的调用指令,查询与调用指令对应的内核模块,并根据查询到的内核模块访问PE头,并根据访问到的PE头中的MZ标识进一步访问对应PE头的导出表,从而通过调用导出表中的系统函数执行相应的系统服务。其中,内核模块即PE格式的文件。
根据实际场景的需要,此处的系统服务可以为文件操作(例如,访问行为),也可以为用于提供创建文件,连接网络等系统服务,此处不对试图调用的系统服务进行具体限定。需要说明的是,根据设置的访问断点,当监测到Shellcode代码访问PE头或者对应PE头的导出表时,即Shellcode代码试图调用系统函数执行相应的系统服务,例如,网络传播或者本地破坏等,利用调试断点机制触发访问断点并生成访问异常中断信息,以便确定Shellcode代码为针对内核数据的攻击行为。
步骤204,若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
为了说明步骤204的具体实施方式,作为一种优选实施例,在步骤204具体包括:
步骤2041,若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致。
步骤2042,利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
具体实施中,将调试断点机制应用于部署模式,其监测范围设定为1个字节、4个字节或者8个字节,以便在对系统内核影响最小的前提下,利用调试断点机制监测访问请求访问PE头或者对应PE头的导出表,从而触发访问断点并生成访问异常中断信息发送给虚拟监控器。
步骤2043,利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
具体实施中,若调试断点机制设定的访问断点为访问请求访问PE头的访问行为,则当访问请求执行到访问PE头,即获取访问PE头的内存地址时,触发调试断点机制,并生成访问异常中断信息发送给虚拟监控器,以便虚拟监控器根据访问异常中断信息中执行访问请求的起始地址,判断执行访问请求的起始地址是否在模块列表中内核模块的地址范围内,即判断访问请求是否为通过系统内核提供的函数定位功能进行合法加载并执行的,从而进一步判断访问请求是否为针对内核数据的攻击行为。
具体为,若执行访问请求的起始地址在模块列表中内核模块的地址范围内,则对该访问请求进行放行;若执行访问请求的起始地址不在模块列表中内核模块的地址范围内,则拦截该访问请求,并修改该访问请求访问的RIP寄存器。
步骤205,根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
具体实施中,当确定访问请求为针对内核数据的攻击行为后,通过比对的方式判断该访问请求是否为已知攻击代码,若该访问请求为已知攻击代码,则通过篡改后续指令、标志位、寄存器等方式对所拦截的访问请求进行阻断;若该访问请求为未知攻击代码,则利用伪造数据替换内核支持函数的方式控制未知攻击代码的执行行为,从而化解攻击行为。
通过应用本实施例的技术方案,当系统内核接收到访问请求时,对该访问请求的调用路径进行实时监测,在实时监测的过程中,当监测到该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应该访问请求的欲调用行为,以便根据拦截到的对应该访问请求的欲调用行为,判断该访问请求是否为针对内核数据的攻击行为。其中,该欲调用行为即该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为。与现有的漏洞发掘及漏洞封堵等技术方案相比,本实施例通过对访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为的拦截,实现针对未知的攻击行为的有效攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种系统内核数据的攻击检测装置,如图3所示,该装置包括:监测模块31、拦截模块33和判断模块34。
监测模块31,用于当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测。
拦截模块33,用于当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
判断模块34,用于根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
在具体的应用场景中,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
在具体的应用场景中,如图4所示,还包括:预设模块32。
预设模块32,用于利用调试断点机制预设中断条件,所述中断条件为访问PE头或者对应所述PE头的导出表的访问行为。
在具体的应用场景中,如图4所示,所述拦截模块33具体还包括:比对单元332。
比对单元331,用于将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对;以及,若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
在具体的应用场景中,所述若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体还包括:
若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致;
利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为;
利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
在具体的应用场景中,如图4所示,所述拦截模块33具体还包括:访问监测单元331。
访问监测单元331,用于所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;以及,根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
在具体的应用场景中,所述系统内核为Windows内核。
需要说明的是,本申请实施例提供的一种系统内核数据的攻击检测装置所涉及各功能单元的其他相应描述,可以参考图1和图2中的对应描述,在此不再赘述。
基于上述如图1和图2所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述如图1和图2所示的系统内核数据的攻击检测方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1、图2所示的方法,以及图3、图4所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1和图2所示的系统内核数据的攻击检测方法。
可选地,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理和保存计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现当系统内核接收到访问请求时,对该访问请求的调用路径进行实时监测,在实时监测的过程中,当监测到该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应该访问请求的欲调用行为,以便根据拦截到的对应该访问请求的欲调用行为,判断该访问请求是否为针对内核数据的攻击行为。其中,该欲调用行为即该访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为。与现有的漏洞发掘及漏洞封堵等技术方案相比,本实施例通过对访问请求根据其所包含的调用路径中的调用指令,试图调用与该访问请求对应的系统服务的欲调用行为的拦截,实现针对未知的攻击行为的有效攻击检测,从而提高系统内核数据的安全性,保障系统内核数据的访问安全。
本发明实施例提供了以下技术方案:
A1、一种系统内核数据的攻击检测方法,包括:
当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
A2、根据权利要求A1所述的方法,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
A3、根据权利要求A1所述的方法,所述当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为的步骤之前,具体还包括:
利用调试断点机制预设中断条件,所述中断条件为访问PE头或者对应所述PE头的导出表的访问行为。
A4、根据权利要求A1或A3所述的方法,所述当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体包括:
将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对;
若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
A5、根据权利要求A4所述的方法,所述若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体包括:
若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致;
利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为;
利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
A6、根据权利要求A1或A3所述的方法,所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务,具体包括:
所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;
根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
A7、根据权利要求A1所述的方法,所述系统内核为Windows内核。
B8、一种系统内核数据的攻击检测装置,包括:
监测模块,用于当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
拦截模块,用于当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
判断模块,用于根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为。
B9、根据权利要求B8所述的装置,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
B10、根据权利要求B8所述的装置,具体还包括:
预设模块,用于利用调试断点机制预设中断条件,所述中断条件为访问PE头或者对应所述PE头的导出表的访问行为。
B11、根据权利要求B8或B10所述的装置,所述拦截模块包括比对单元,具体包括:
将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对;
若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
B12、根据权利要求B11所述的装置,所述若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体还包括:
若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致;
利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为;
利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
B13、根据权利要求B8或B10所述的装置,所述拦截模块包括访问监测单元,具体包括:
所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;
根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
B14、根据权利要求B8所述的装置,所述系统内核为Windows内核。
C15、一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现权利要求A1至A7中任一项所述的系统内核数据的攻击检测装置方法。
D16、一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求A1至A7中任一项所述的系统内核数据的攻击检测装置方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

Claims (16)

1.一种系统内核数据的攻击检测方法,其特征在于,包括:
当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
利用调试断点机制预设中断条件,所述中断条件为访问PE头;当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为;
其中,所述当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为的步骤包括:
当访问请求执行到访问PE头时,触发调试断点机制,生成访问异常中断信息并发送给虚拟监控器,以便所述虚拟监控器根据所述访问异常中断信息中执行访问请求的起始地址,判断执行所述访问请求的起始地址是否在模块列表中内核模块的地址范围内,所述模块列表是预先加载的具有PE文件格式的模块列表中所有内核模块。
2.根据权利要求1所述的方法,其特征在于,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
3.根据权利要求1所述的方法,其特征在于,所述中断条件还包括对应所述PE头的导出表的访问行为。
4.根据权利要求1或3所述的方法,其特征在于,所述当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体包括:
将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对;
若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
5.根据权利要求4所述的方法,其特征在于,所述若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体包括:
若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致;
利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为;
利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
6.根据权利要求1或3所述的方法,其特征在于,所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务,具体包括:
所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;
根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
7.根据权利要求1所述的方法,其特征在于,所述系统内核为Windows内核。
8.一种系统内核数据的攻击检测装置,其特征在于,包括:
监测模块,用于当系统内核接收到访问请求时,对所述访问请求的调用路径进行实时监测;
预设模块,用于利用调试断点机制预设中断条件,所述中断条件为访问PE头;
拦截模块,用于当所述访问请求根据所述调用路径中的调用指令,试图调用与所述访问请求对应的系统服务时,利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为;
判断模块,用于根据拦截到的对应所述访问请求的欲调用行为,判断所述访问请求是否为针对内核数据的攻击行为;
所述拦截模块和所述判断模块,具体用于执行:
当访问请求执行到访问PE头时,触发调试断点机制,生成访问异常中断信息并发送给虚拟监控器,以便所述虚拟监控器根据所述访问异常中断信息中执行访问请求的起始地址,判断执行所述访问请求的起始地址是否在模块列表中内核模块的地址范围内,所述模块列表是预先加载的具有PE文件格式的模块列表中所有内核模块。
9.根据权利要求8所述的装置,其特征在于,所述调用路径是指,访问请求定位内核支持函数的定位路径,所述内核支持函数为与所述访问请求对应的系统服务。
10.根据权利要求8所述的装置,其特征在于,具体还包括:
所述中断条件还包括对应所述PE头的导出表的访问行为。
11.根据权利要求8或10所述的装置,其特征在于,所述拦截模块包括比对单元,具体包括:
将所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为进行比对;
若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为。
12.根据权利要求11所述的装置,其特征在于,所述若所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致,则利用硬件虚拟化机制拦截对应所述访问请求的欲调用行为,具体还包括:
若监测到所述访问请求访问PE头或者对应所述PE头的导出表,则确定所述调试断点机制预设的中断条件与所述访问请求试图调用与所述访问请求对应的系统服务的欲调用行为一致;
利用调试断点机制中断所述访问请求访问PE头或者对应所述PE头的导出表的访问行为;
利用硬件虚拟化机制获取通过中断得到的所述访问请求访问PE头或者对应所述PE头的导出表的访问行为。
13.根据权利要求8或10所述的装置,其特征在于,所述拦截模块包括访问监测单元,具体包括:
所述访问请求根据所述调用路径中的调用指令,查询与所述调用指令对应的内核模块;
根据查询到的内核模块访问PE头以及对应所述PE头的导出表,其中,对应所述PE头的导出表用于所述访问请求调用与所述访问请求对应的系统服务。
14.根据权利要求8所述的装置,其特征在于,所述系统内核为Windows内核。
15.一种存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现权利要求1至7中任一项所述的系统内核数据的攻击检测装置方法。
16.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7中任一项所述的系统内核数据的攻击检测装置方法。
CN201910755437.9A 2019-08-15 2019-08-15 系统内核数据的攻击检测方法及装置、存储介质、计算机设备 Active CN112395599B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910755437.9A CN112395599B (zh) 2019-08-15 2019-08-15 系统内核数据的攻击检测方法及装置、存储介质、计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910755437.9A CN112395599B (zh) 2019-08-15 2019-08-15 系统内核数据的攻击检测方法及装置、存储介质、计算机设备

Publications (2)

Publication Number Publication Date
CN112395599A CN112395599A (zh) 2021-02-23
CN112395599B true CN112395599B (zh) 2024-04-05

Family

ID=74601725

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910755437.9A Active CN112395599B (zh) 2019-08-15 2019-08-15 系统内核数据的攻击检测方法及装置、存储介质、计算机设备

Country Status (1)

Country Link
CN (1) CN112395599B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464829A (zh) * 2007-12-18 2009-06-24 珠海金山软件股份有限公司 确定代码覆盖率的方法、测试装置
US10033759B1 (en) * 2015-09-28 2018-07-24 Fireeye, Inc. System and method of threat detection under hypervisor control

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464829A (zh) * 2007-12-18 2009-06-24 珠海金山软件股份有限公司 确定代码覆盖率的方法、测试装置
US10033759B1 (en) * 2015-09-28 2018-07-24 Fireeye, Inc. System and method of threat detection under hypervisor control

Also Published As

Publication number Publication date
CN112395599A (zh) 2021-02-23

Similar Documents

Publication Publication Date Title
US10503904B1 (en) Ransomware detection and mitigation
US10599841B2 (en) System and method for reverse command shell detection
US10893068B1 (en) Ransomware file modification prevention technique
US11797677B2 (en) Cloud based just in time memory analysis for malware detection
US10210329B1 (en) Method to detect application execution hijacking using memory protection
RU2646352C2 (ru) Система и способ для применения индикатора репутации для облегчения сканирования на наличие вредоносных программ
US7647637B2 (en) Computer security technique employing patch with detection and/or characterization mechanism for exploit of patched vulnerability
US7665139B1 (en) Method and apparatus to detect and prevent malicious changes to tokens
AU2018229557A1 (en) Methods and apparatus for identifying and removing malicious applications
US20100306851A1 (en) Method and apparatus for preventing a vulnerability of a web browser from being exploited
US9516056B2 (en) Detecting a malware process
JP2016534479A (ja) マルウェアのランタイム中の自動検出
CN109783316B (zh) 系统安全日志篡改行为的识别方法及装置、存储介质、计算机设备
Ramachandran et al. Android anti-virus analysis
Vella et al. Volatile memory-centric investigation of SMS-hijacked phones: a Pushbullet case study
US20150172310A1 (en) Method and system to identify key logging activities
CN112395599B (zh) 系统内核数据的攻击检测方法及装置、存储介质、计算机设备
CN115292707A (zh) 基于动态类调用序列的可信度判断方法及装置
Beijnum Haly: Automated evaluation of hardening techniques in Android and iOS apps
CN111177726A (zh) 一种系统漏洞检测方法、装置、设备及介质
CN112395609A (zh) 应用层shellcode的检测方法及装置
CN118158000B (zh) 一种容器安全检测方法、系统、电子设备、芯片及介质
CN115758339A (zh) 开源组件访问检测方法、装置及计算机可读存储介质
CN116684161A (zh) 程序运行方法、装置、电子设备及存储介质
CN114363006A (zh) 基于WinRM服务的防护方法及装置

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