CN111259386A - 内核安全检测方法、装置、设备及存储介质 - Google Patents
内核安全检测方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111259386A CN111259386A CN201811467100.XA CN201811467100A CN111259386A CN 111259386 A CN111259386 A CN 111259386A CN 201811467100 A CN201811467100 A CN 201811467100A CN 111259386 A CN111259386 A CN 111259386A
- Authority
- CN
- China
- Prior art keywords
- kernel
- data related
- permission
- data
- authority
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 120
- 230000008569 process Effects 0.000 claims abstract description 106
- 230000004044 response Effects 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 34
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- 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/52—Monitoring 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/54—Monitoring 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 adding security routines or objects to 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/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- 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
-
- 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/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提出了一种内核安全检测方法、装置、设备及存储介质。响应于系统调用,对与进程权限相关的至少部分数据进行检测;以及根据检测结果,判断进程的权限是否被恶意修改。通过在攻击者对系统执行进一步操作时检测其权限是否合法,使得攻击者即使获取到高于自身的权限也很难对内核形成根本的危害,从而可以一定程度上提升内核漏洞攻击的难度,降低内核漏洞攻击的成功率。
Description
技术领域
本发明涉及内核安全领域,特别是涉及一种内核安全检测方法、装置、设备及存储介质。
背景技术
近年来,Linux系统应用范围不断扩大,现已广泛应用于服务器、桌面以及嵌入式设备等领域,随着Linux系统在全世界范围内的普及与使用,系统的安全问题也日益受到关注。
目前攻击者主要是通过内核漏洞获取高于自身的权限,然后利用此权限对系统执行进一步的危害以达到其目的。现有的内核保护方案主要是将内核cred结构体分为只读和可写两部分分别保护,但内核进程结构体中保存着cred结构体的指针(而不是结构体本身),虽然对cred关键数据形成了只读保护,但若进程结构体中cred的指针被修改,则可绕过该方案。
因此,需要一种更为有效的内核安全检测方案。
发明内容
本发明的一个目的在于提供一种更为有效的内核安全检测方法、装置、设备及存储介质,以增强内核安全。
根据本发明的第一个方面,提供了一种内核安全检测方法,包括:响应于系统调用,对与进程权限相关的至少部分数据进行检测;以及根据检测结果,判断进程的权限是否被恶意修改。
可选地,至少部分数据包括以下至少一项:进程可访问的地址空间;组ID;用户ID;有效用户ID;能力;安全上下文。
可选地,响应于系统调用对与进程权限相关的至少部分数据进行检测的步骤包括:在由用户态模式进入内核态模式,且在内核处理函数调用前,对与进程权限相关的至少部分数据进行检测;并且/或者在内核处理函数内部插入权限检查模块,以对与进程权限相关的至少部分数据进行检测;并且/或者在内核处理函数调用后,对与进程权限相关的至少部分数据进行检测。
可选地,对与进程权限相关的至少部分数据进行检测的步骤包括:将与进程权限相关的至少部分数据与预先生成的检测集中的相应部分进行比较,以确定至少部分数据是否被恶意修改。
可选地,检测集是基于安全方式对与进程权限相关的至少部分数据进行修改后得到的白名单,或者检测集是对基于安全方式对与进程权限相关的至少部分数据进行修改后得到的数据,分别进行哈希计算得到的哈希表。
可选地,安全方式为调用标准接口函数。
可选地,该方法还包括:在判定进程的权限被恶意修改的情况下,结束进程或者使系统崩溃。
根据本发明的第二个方面,还提供了一种内核安全检测装置,包括:检测模块,用于响应于系统调用,对与进程权限相关的至少部分数据进行检测;和判断模块,用于根据检测结果,判断进程的权限是否被恶意修改。
可选地,至少部分数据包括以下至少一项:进程可访问的地址空间;组ID;用户ID;有效用户ID;能力;安全上下文。
可选地,检测模块在由用户态模式进入内核态模式,且在内核处理函数调用前,对与进程权限相关的至少部分数据进行检测;并且/或者检测模块在内核处理函数内部插入权限检查模块,以对与进程权限相关的至少部分数据进行检测;并且/或者检测模块在内核处理函数调用后,对与进程权限相关的至少部分数据进行检测。
可选地,检测模块将与进程权限相关的至少部分数据与预先生成的检测集中的相应部分进行比较,以确定至少部分数据是否被恶意修改。
可选地,检测集是基于安全方式对与进程权限相关的至少部分数据进行修改后得到的白名单,或者检测集是对基于安全方式对与进程权限相关的至少部分数据进行修改后得到的数据,分别进行哈希计算得到的哈希表。
可选地,安全方式为调用标准接口函数。
可选地,该装置还包括提权处理模块,用于在检测到存在被恶意修改的字段的情况下,结束进程或者使系统崩溃。
根据本发明的第三个方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如本发明第一个方面述及的方法。
根据本发明的第四个方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如本发明第一个方面述及的方法。
本发明会在攻击者对系统执行进一步操作时检测其权限是否合法,使得攻击者即使获取到高于自身的权限也很难对内核形成根本的危害,从而可以一定程度上提升内核漏洞攻击的难度,降低内核漏洞攻击的成功率。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了内存地址空间的一种示意图。
图2是示出了根据本发明一实施例的内核安全检查方法的示意性流程图。
图3是示出了根据本发明一实施例的内核安全检测装置的结构的示意性方框图。
图4示出了根据本发明一实施例可用于实现上述内核安全检测方法的数据处理的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
【术语解释】
内核提权:利用内核漏洞为进程获取高于系统指定权限的攻击方法。
内核结构体:每个进程在内核均有一个task_struct结构体的实例对应,在内核看来,此结构体即代表此进程。
cred结构体:每个进程的内核结构体中都有两个cred结构体指针,cred结构体内记录了当前进程作为主/客体的身份与权限,包括uid、gid、euid、capability、安全上下文等。
uid为UserId,即用户ID,用来标识每个用户的唯一标示符。
gid为GroupId,即组ID,用来标识用户组的唯一标识符。
euid为有效用户ID,表示进程对于文件和资源的访问权限。
capability:能力,从2.1版开始,Linux内核有了能力(capability)的概念,它打破了UNIX/LINUX操作系统中超级用户/普通用户的概念,由普通用户也可以做只有超级用户可以完成的工作。
addr_limit:进程可访问的地址空间。
在操作系统(如Linux操作系统)中,代码执行模式通常至少包括两种:用户态模式和内核态模式,内核态模式拥有高于用户态模式的权限。在操作系统中,内存的虚拟地址空间通常也被分为用户态地址空间和内核态地址空间两部分。通常用户态地址空间在低地址空间,内核态地址空间在高地址空间,硬件单元MMU及页表保证用户态模式只能访问用户态地址空间,内核态模式可以访问用户态及内核态地址空间。以4G内存,3:1模式为例,内存地址空间可以表示为图1所示。
系统调用是内核提供给用户态进程的访问接口,内核态的代码、数据存在于内核态地址空间,由于用户态不能访问内核态地址空间,用户态进程与系统的所有交互,如命令执行、文件访问最终又均需通过内核态处理,所以操作系统提供系统调用作为用户态与内核态的接口,用户态可以通过一条指令(如ARM的SWI指令)将当前状态转换为内核态,但此时硬件会保证,之后的指令流程一定是从指定的内核态代码入口开始执行的,内核态代码入口根据用户态传入的不同系统调用号调用相应的内核代码,并最终将结果返回给用户态,此过程即称为系统调用。
【方案概述】
攻击者通过内核漏洞获取高于自身的权限后会利用此权限对系统执行进一步的危害以达到其目的,通常攻击者获取高于自身的权限并不是对系统造成危害的根源,凭借此权限的额外操作才是造成系统危害的根源所在。而用户态与系统的所有交互,如命令执行、文件访问等均需通过系统调用来实现,攻击者在获取高权限后若不调用系统调用,则无法对系统造成实质性的危害。
基于此原理,本发明提出,可以在系统调用过程中,对进程权限相关的至少部分数据结构(如可以包括并不限于:addr_limit、uid/gid/euid,capability,安全上下文等)进行检查,确保攻击者即使获取了高于自身的权限,也很难实现对进程关键数据结构的修改。
本发明提出的内核安全检测方案,不能阻止攻击者通过内核漏洞来获取高于自身的权限,但会在攻击者对系统执行进一步操作时检测其权限是否合法,使得攻击者即使获取到高于自身的权限也很难对内核形成根本的危害,从而可以在一定程度上提升了内核漏洞攻击的难度,降低内核漏洞攻击的成功率。
【内核安检检测方法】
图2是示出了根据本发明一实施例的内核安全检查方法的示意性流程图。其中,图2所示的方法可以用于检测Linux操作系统(或者类似Linux操作系统的其他操作系统)环境下运行的进程的权限是否被恶意修改,即内核提权。
参见图2,在步骤S210,响应于系统调用,对与进程权限相关的至少部分数据进行检测。
以Linux内核为例,内核提权方式如下:攻击者通过内核漏洞修改进程的关键字段addr_limit,从而获取内核态基于页表的虚拟地址任意读写权限;攻击者通过内核漏洞修改进程的关键字段uid/euid/gid,从而改变自身的身份为高权限用户(如root);攻击者通过内核漏洞修改进程的关键字段capability,从而改变自身的cap权限;攻击者通过内核漏洞修改进程的关键字段安全上下文,从而绕过seLinux的强制访问控制。
因此,与进程权限相关的至少部分数据可以包括但不限于进程可访问的地址空间(addr_limit)、组ID(gid)、用户ID(uid)、有效用户ID(euid)、能力(capability)、安全上下文等进程关键字段。
作为示例,可以在由用户态进入内核态,且在内核处理函数调用前,对与进程权限相关的至少部分数据进行检测;并且/或者也可以在内核处理函数内部插入权限检查模块,以对与进程权限相关的至少部分数据进行检测法;并且/或者还可以在内核处理函数调用后,对与进程权限相关的至少部分数据进行检测。并且,在不同阶段所检测的与进程权限相关的至少部分数据可以相同,也可以不同。
在对与进程权限相关的至少部分数据进行检测时,可以将数据与预先生成的检测集中的相应部分进行比较,以确定与进程权限相关的至少部分数据的权限是否合法。
例如,检测集可以是之前基于安全方式对与进程权限相关的至少部分数据进行修改后得到的白名单。另外,检测集也可以是对之前基于安全方式对与进程权限相关的至少部分数据进行修改后得到的数据,分别进行哈希计算得到的哈希表。其中,安全方式为调用标准接口函数。
在步骤S220,根据检测结果,判断进程的权限是否被恶意修改,也即提权。
可以在检测到存在权限不合法的字段情况下,判定进程的权限被恶意修改,即内核提权。并且,在判定进程的权限被恶意修改的情况下,可以结束进程或者使系统崩溃,来主动阻止攻击者对系统的进一步的破坏。
应用例
以Linux系统为例,系统调用的基本流程可描述如下。
1.用户态执行SWI指令进入内核态模式,并从执行特定地址开始执行(这里可以称之为系统调用入口函数syscall_entry,在arm中实际上是vector_swi)。
2.syscall_entry中通过用户态传入的系统调用号(syscall number),系统调用表决定要调用的内核函数地址,并调用相应的内核处理函数。
3.内核处理函数执行完毕返回syscall_entry。
4.syscall_entry将结果写入寄存器,并最终通过一条跳转执行(如ARM的BX)返回到用户态的下一条指令,同时切换当前为用户态模式。
根据系统调用的执行流程,本发明可以在步骤2(系统调用入口),或步骤3(内核函数调用中)或步骤4(系统调用返回前)插入代码,对与进程权限相关的关键数据结构进行检查,插入后的流程可描述如下。
1.用户态执行SWI指令进入内核态模式,并从执行特定地址开始执行(这里称之为syscall_entry,在arm中实际上是vector_swi)。
2.具体函数调用前的权限检查。
3.syscall_entry中通过用户态传入的系统调用号(syscall number),系统调用表决定要调用的内核函数地址,并调用相应的内核处理函数。
4.对关键内核处理函数内部插入权限检查模块,执行完毕返回syscall_entry。
5.具体函数调用后的权限检查。
6.syscall_entry将结果写入寄存器,并最终通过一条跳转执行(如ARM的BX)返回到用户态的下一条指令,同时切换当前为用户态模式。
步骤2、4、5中检查的内容可以包括但不限于addr_limit是否正确、进程的uid/gid/euid是否正确、进程的capability是否正确、进程的安全上下文是否正确。其中,对于addr_limit,返回用户态时应有一个固定的值(在部分系统中为0xbf000000),若在syscall检测中发现非此固定值,则可认为存在攻击。uid/gid/euid、capability、安全上下文等均是与进程相关的,可利用hash表,或白名单等手段在内核生成一个检测集,在系统调用入口、返回时根据进程结构体地址找到对应的检测集,并检测与预期是否相符。
综上,本发明可以在系统调用入口对与进程权限相关的关键数据结构进行检查,也可以在系统调用返回时对与进程权限相关的关键数据结构进行检查,或者在关键的内核函数中(对于addr_limit来说如sys_read/sys_write等)对与进程权限相关的关键数据结构进行检查。若检测到当前进程的以上关键字段,若与预期值不符,则代表攻击者权限过高,从而结束进程或使系统崩溃来主动阻止攻击者对系统的进一步的破坏。其中,检查内容可以包括但不限于addr_limit、uid/gid/euid,capability、安全上下文等等。
【内核安全检测装置】
图3是示出了根据本发明一实施例的内核安全检测装置的结构的示意性方框图。其中,内核安全检测装置的功能模块可以由实现本发明原理的硬件、软件或硬件和软件的结合来实现。本领域技术人员可以理解的是,图3所描述的功能模块可以组合起来或者划分成子模块,从而实现上述发明的原理。因此,本文的描述可以支持对本文描述的功能模块的任何可能的组合、或者划分、或者更进一步的限定。
内核安全检测装置可以具有的功能模块以及各功能模块可以执行的操作做简要说明,对于其中涉及的细节部分可以参见上文描述,这里不再赘述。
参见图3,内核安全检测装置300包括检测模块310和判断模块320。检测模块310用于响应于系统调用,对与进程权限相关的至少部分数据进行检测,判断模块320用于根据检测结果,判断进程的权限是否被恶意修改。其中,与进程权限相关的至少部分数据可以包括以下至少一项:进程可访问的地址空间;组ID;用户ID;有效用户ID;能力;安全上下文。
在本发明中,检测模块310可以在由用户态模式进入内核态模式,且在内核处理函数调用前,对与进程权限相关的至少部分数据进行检测;并且/或者检测模块310也可以在内核处理函数内部插入权限检查模块,以对与进程权限相关的至少部分数据进行检测;并且/或者检测模块310也可以在内核处理函数调用后,对与进程权限相关的至少部分数据进行检测。
作为示例,检测模块310可以将与进程权限相关的至少部分数据与预先生成的检测集中的相应部分进行比较,以确定至少部分数据是否被恶意修改。其中,检测集可以是基于安全方式对与进程权限相关的至少部分数据进行修改后得到的白名单,或者检测集也可以是对基于安全方式对与进程权限相关的至少部分数据进行修改后得到的数据,分别进行哈希计算得到的哈希表。其中,安全方式为调用标准接口函数。
作为示例,内核安全检测装置300还可以包括提权处理模块(图中未示出),用于在检测到存在被恶意修改的字段的情况下,结束进程或者使系统崩溃,以主动阻止攻击者对系统的进一步的破坏。
【计算设备】
图4示出了根据本发明一实施例可用于实现上述内核安全检测方法的数据处理的计算设备的结构示意图。
参见图4,计算设备400包括存储器410和处理器420。
处理器420可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器420可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器420可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器410可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器420或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器410可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器410可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器410上存储有可执行代码,当可执行代码被处理器420处理时,可以使处理器420执行上文述及的内核安全检测方法。
上文中已经参考附图详细描述了根据本发明的内核安全检测方法、装置及设备。
此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本发明的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种内核安全检测方法,其特征在于,包括:
响应于系统调用,对与进程权限相关的至少部分数据进行检测;以及
根据检测结果,判断进程的权限是否被恶意修改。
2.根据权利要求1所述的内核安全检测方法,其特征在于,所述至少部分数据包括以下至少一项:
进程可访问的地址空间;
组ID;
用户ID;
有效用户ID;
能力;
安全上下文。
3.根据权利要求1所述的内核安全检测方法,其特征在于,所述响应于系统调用对与进程权限相关的至少部分数据进行检测的步骤包括:
在由用户态模式进入内核态模式,且在内核处理函数调用前,对与进程权限相关的至少部分数据进行检测;并且/或者
在内核处理函数内部插入权限检查模块,以对与进程权限相关的至少部分数据进行检测;并且/或者
在内核处理函数调用后,对与进程权限相关的至少部分数据进行检测。
4.根据权利要求1所述的内核安全检测方法,其特征在于,所述对与进程权限相关的至少部分数据进行检测的步骤包括:
将与进程权限相关的至少部分数据与预先生成的检测集中的相应部分进行比较,以确定所述至少部分数据是否被恶意修改。
5.根据权利要求4所述的内核安全检测方法,其特征在于,
所述检测集是基于安全方式对与进程权限相关的至少部分数据进行修改后得到的白名单,或者
所述检测集是对基于安全方式对与进程权限相关的至少部分数据进行修改后得到的数据,分别进行哈希计算得到的哈希表。
6.根据权利要求5所述的内核安全检测方法,其特征在于,
所述安全方式为调用标准接口函数。
7.根据权利要求1所述的内核安全检测方法,其特征在于,还包括:
在判定进程的权限被恶意修改的情况下,结束进程或者使系统崩溃。
8.一种内核安全检测装置,其特征在于,包括:
检测模块,用于响应于系统调用,对与进程权限相关的至少部分数据进行检测;和
判断模块,用于根据检测结果,判断进程的权限是否被恶意修改。
9.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-7中任何一项所述的方法。
10.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至7中任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811467100.XA CN111259386A (zh) | 2018-12-03 | 2018-12-03 | 内核安全检测方法、装置、设备及存储介质 |
TW108129791A TW202101262A (zh) | 2018-12-03 | 2019-08-21 | 內核安全檢測方法、裝置、設備及儲存媒體 |
PCT/CN2019/120133 WO2020114262A1 (zh) | 2018-12-03 | 2019-11-22 | 内核安全检测方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811467100.XA CN111259386A (zh) | 2018-12-03 | 2018-12-03 | 内核安全检测方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111259386A true CN111259386A (zh) | 2020-06-09 |
Family
ID=70946607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811467100.XA Pending CN111259386A (zh) | 2018-12-03 | 2018-12-03 | 内核安全检测方法、装置、设备及存储介质 |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN111259386A (zh) |
TW (1) | TW202101262A (zh) |
WO (1) | WO2020114262A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112199673A (zh) * | 2020-10-10 | 2021-01-08 | 北京微步在线科技有限公司 | 权限提升行为的检测方法、装置及可读存储介质 |
CN112784274A (zh) * | 2021-03-16 | 2021-05-11 | 斑马网络技术有限公司 | 基于Linux平台的恶意样本检测收集方法及系统、存储介质、设备 |
CN113407933A (zh) * | 2021-06-16 | 2021-09-17 | 成都欧珀通信科技有限公司 | 内核函数加固方法、装置、存储介质及电子设备 |
CN114691220A (zh) * | 2020-12-30 | 2022-07-01 | 网神信息技术(北京)股份有限公司 | 保护进程的方法、装置、电子设备、介质和程序产品 |
CN115033889A (zh) * | 2022-06-22 | 2022-09-09 | 中国电信股份有限公司 | 非法提权检测方法和装置、存储介质、计算机设备 |
CN117522601A (zh) * | 2024-01-04 | 2024-02-06 | 山东保医通信息科技有限公司 | 一种基于接口统一管理的核保业务执行方法、设备及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016283A (zh) * | 2017-02-15 | 2017-08-04 | 中国科学院信息工程研究所 | 基于完整性验证的Android权限提升攻击安全防御方法和装置 |
CN107908958A (zh) * | 2017-11-30 | 2018-04-13 | 中国人民解放军国防科技大学 | SELinux安全标识符防篡改检测方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7874001B2 (en) * | 2005-07-15 | 2011-01-18 | Microsoft Corporation | Detecting user-mode rootkits |
CN105245543B (zh) * | 2015-10-28 | 2018-04-13 | 中国人民解放军国防科学技术大学 | 一种基于安全标记随机化的操作系统强制访问控制方法 |
-
2018
- 2018-12-03 CN CN201811467100.XA patent/CN111259386A/zh active Pending
-
2019
- 2019-08-21 TW TW108129791A patent/TW202101262A/zh unknown
- 2019-11-22 WO PCT/CN2019/120133 patent/WO2020114262A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107016283A (zh) * | 2017-02-15 | 2017-08-04 | 中国科学院信息工程研究所 | 基于完整性验证的Android权限提升攻击安全防御方法和装置 |
CN107908958A (zh) * | 2017-11-30 | 2018-04-13 | 中国人民解放军国防科技大学 | SELinux安全标识符防篡改检测方法及系统 |
Non-Patent Citations (1)
Title |
---|
左玉丹: "基于SELinux的内核提权攻击防御技术研究" * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112199673A (zh) * | 2020-10-10 | 2021-01-08 | 北京微步在线科技有限公司 | 权限提升行为的检测方法、装置及可读存储介质 |
CN114691220A (zh) * | 2020-12-30 | 2022-07-01 | 网神信息技术(北京)股份有限公司 | 保护进程的方法、装置、电子设备、介质和程序产品 |
CN112784274A (zh) * | 2021-03-16 | 2021-05-11 | 斑马网络技术有限公司 | 基于Linux平台的恶意样本检测收集方法及系统、存储介质、设备 |
CN113407933A (zh) * | 2021-06-16 | 2021-09-17 | 成都欧珀通信科技有限公司 | 内核函数加固方法、装置、存储介质及电子设备 |
CN115033889A (zh) * | 2022-06-22 | 2022-09-09 | 中国电信股份有限公司 | 非法提权检测方法和装置、存储介质、计算机设备 |
CN115033889B (zh) * | 2022-06-22 | 2023-10-31 | 中国电信股份有限公司 | 非法提权检测方法和装置、存储介质、计算机设备 |
CN117522601A (zh) * | 2024-01-04 | 2024-02-06 | 山东保医通信息科技有限公司 | 一种基于接口统一管理的核保业务执行方法、设备及介质 |
CN117522601B (zh) * | 2024-01-04 | 2024-03-22 | 山东保医通信息科技有限公司 | 一种基于接口统一管理的核保业务执行方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020114262A1 (zh) | 2020-06-11 |
TW202101262A (zh) | 2021-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111259386A (zh) | 内核安全检测方法、装置、设备及存储介质 | |
CN107066311B (zh) | 一种内核数据访问控制方法与系统 | |
US10460099B2 (en) | System and method of detecting malicious code in files | |
US10073986B2 (en) | Regulating access to and protecting portions of applications of virtual machines | |
ES2792912T3 (es) | Sistemas y métodos de seguridad informática que utilizan excepciones de introspección asíncronas | |
CN111291364B (zh) | 内核安全检测方法、装置、设备及存储介质 | |
US8990934B2 (en) | Automated protection against computer exploits | |
US9037873B2 (en) | Method and system for preventing tampering with software agent in a virtual machine | |
US7367062B2 (en) | Method for BIOS security of computer system | |
US9516056B2 (en) | Detecting a malware process | |
US7251735B2 (en) | Buffer overflow protection and prevention | |
KR101064164B1 (ko) | 리눅스 커널 기반 스마트 플랫폼 내에서의 커널 무결성 검사 및 변조된 커널 데이터 복구 방법 | |
WO2017172190A1 (en) | Trusted execution of called function | |
CN109933986B (zh) | 恶意代码检测方法及装置 | |
CN113448682B (zh) | 一种虚拟机监控器加载方法、装置及电子设备 | |
CN115688106A (zh) | 一种Java agent无文件注入内存马的检测方法及装置 | |
CN112948863B (zh) | 敏感数据的读取方法、装置、电子设备及存储介质 | |
US10691586B2 (en) | Apparatus and method for software self-test | |
JP2011164972A (ja) | プログラムローダ、データ処理装置、プログラムロード方法及びロードプログラム | |
EP3293660A1 (en) | System and method of detecting malicious code in files | |
US20220245244A1 (en) | Secure peripheral component access | |
WO2015052831A1 (ja) | 情報処理装置、方法およびプログラム | |
WO2013074071A1 (en) | Regulating access to and protecting portions of applications of virtual machines |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20201123 Address after: Room 603, 6 / F, Roche Plaza, 788 Cheung Sha Wan Road, Kowloon, China Applicant after: Zebra smart travel network (Hong Kong) Ltd. Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands Applicant before: Alibaba Group Holding Ltd. |
|
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200609 |