内核安全检测方法、装置、设备及存储介质制造方法及图纸

技术编号:24517876 阅读:20 留言:0更新日期:2020-06-17 06:53
本发明专利技术提出了一种内核安全检测方法、装置、设备及存储介质。在进程权限凭证集的使用路径上,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,进程权限凭证集包括与进程权限相关的信息;以及根据比较结果,判断当前进程权限凭证集是否被恶意修改。由此,通过在路径上对进程权限凭证集进行完整性检测,虽然相对真正的攻击,检查的时机有所延缓,但很难被攻击者绕过。

Kernel security detection methods, devices, devices and storage media

【技术实现步骤摘要】
内核安全检测方法、装置、设备及存储介质
本专利技术涉及内核安全领域,特别是涉及一种内核安全检测方法、装置、设备及存储介质。
技术介绍
近年来,Linux系统应用范围不断扩大,现已广泛应用于服务器、桌面以及嵌入式设备等领域,随着Linux系统在全世界范围内的普及与使用,系统的安全问题也日益受到关注。目前攻击者主要是通过内核漏洞获取高于自身的权限,然后利用此权限对系统执行进一步的危害以达到其目的。现有的内核保护方案主要是将内核cred结构体分为只读和可写两部分分别保护,但内核进程结构体中保存着cred结构体的指针(而不是结构体本身),虽然对cred关键数据形成了只读保护,但若进程结构体中cred的指针被修改,则可绕过该方案。因此,需要一种更为有效的内核安全检测方案。
技术实现思路
本专利技术的一个目的在于提供一种更为有效的内核安全检测方法、装置、设备及存储介质,以增强内核安全。根据本专利技术的第一个方面,提供了一种内核安全检测方法,包括:在进程权限凭证集的使用路径上,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,进程权限凭证集包括与进程权限相关的信息;以及根据比较结果,判断当前进程权限凭证集是否被恶意修改。可选地,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较的步骤包括:在进程权限凭证集的使用路径上,计算当前进程权限凭证集的哈希值,以得到第一哈希值;将第一哈希值与第二哈希值进行比较,其中,第二哈希值是对预先存储的进程权限凭证集进行哈希计算得到的。>可选地,判断当前进程权限凭证集是否被恶意修改的步骤包括:在第一哈希值与第二哈希值不一致的情况下,判定进程权限凭证集被恶意修改。可选地,该方法还包括:响应于通过安全方式对进程权限凭证集进行修改,为修改后的进程权限凭证集计算哈希值,以得到第二哈希值。可选地,预先存储的进程权限凭证集是之前基于安全方式对进程权限凭证集进行修改后得到的进程权限凭证集。可选地,安全方式为调用与进程权限凭证集对应的标准接口函数。可选地,进程权限凭证集包括以下至少一项:组ID;用户ID;有效用户ID;能力;安全指针;安全上下文;当前进程权限凭证集地址;启动随机数。可选地,在进程权限凭证集的使用路径上将当前进程权限凭证集与预先存储的进程权限凭证集进行比较的步骤包括:在系统调用入口将当前进程权限凭证集与预先存储的进程权限凭证集进行比较;并且/或者在fork/exec函数执行时将当前进程权限凭证集与预先存储的进程权限凭证集进行比较。根据本专利技术的第二个方面,还提供了一种内核安全检测装置,包括:比较模块,用于在进程权限凭证集的使用路径上,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,进程权限凭证集包括与进程权限相关的信息;和判断模块,用于根据比较结果,判断当前进程权限凭证集是否被恶意修改。可选地,比较模块包括:第一计算模块,用于在进程权限凭证集的使用路径上,计算当前进程权限凭证集的哈希值,以得到第一哈希值;比较子模块,用于将第一哈希值与第二哈希值进行比较,其中,第二哈希值是对预先存储的进程权限凭证集进行哈希计算得到的。可选地,判断模块在第一哈希值与第二哈希值不一致的情况下,判定进程权限凭证集被恶意修改。可选地,该装置还包括:第二计算模块,用于响应于通过安全方式对进程权限凭证集进行修改,为修改后的进程权限凭证集计算哈希值,以得到第二哈希值。可选地,预先存储的进程权限凭证集是之前基于安全方式对进程权限凭证集进行修改后得到的进程权限凭证集。可选地,安全方式为调用与进程权限凭证集对应的标准接口函数。可选地,进程权限凭证集包括以下至少一项:组ID;用户ID;有效用户ID;能力;安全指针;安全上下文;当前进程权限凭证集地址;启动随机数。可选地,比较模块在系统调用入口将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,并且/或者比较模块在fork/exec函数执行时将当前进程权限凭证集与预先存储的进程权限凭证集进行比较。根据本专利技术的第三个方面,还提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如本专利技术第一个方面述及的方法。根据本专利技术的第四个方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如本专利技术第一个方面述及的方法。本专利技术是根据进程权限凭证集在内核中被使用的情景,找到攻击者修改进程权限凭证集后很难被绕过的路径,在路径上对进程权限凭证集进行完整性检测。如可以基于系统调用,fork/exec的被动检查,虽然相对真正的攻击,检查的时机有所延缓,但很难被攻击者绕过。附图说明通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。图1示出了进程的内核结构体的数据结构示意图。图2是示出了根据本专利技术一实施例的内核安全检测方法的示意性流程图。图3示出了加入哈希计算的字段的示意图。图4是示出了根据本专利技术一实施例的内核安全检测装置的结构的示意性方框图。图5示出了根据本专利技术一实施例可用于实现上述内核安全检测方法的数据处理的计算设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。【术语解释】内核提权:利用内核漏洞为进程获取高于系统指定权限的攻击方法。内核结构体:每个进程在内核均有一个task_struct结构体的实例对应,在内核看来,此结构体即代表此进程。cred结构体:每个进程的内核结构体中都有两个cred结构体指针,cred结构体内记录了当前进程作为主/客体的身份与权限,包括uid、gid、euid、capability、安全上下文等。uid为UserId,即用户ID,用来标识每个用户的唯一标示符。gid为GroupId,即组ID,用来标识用户组的唯一标识符。euid为有效用户ID,表示进程对于文件和资源的访问权限。capability:能力,从2.1版开始,Linux内核有了能力(capability)的概念,它打破了UNIX/LINUX操作系统中超级用户/普通用户的概念,由普通用户也可以做只有超级用户可以完成的工作。【方案概述】下面以Linux操作系统为例,就本专利技术的内核安全检测方案的实现原理进行示例性说明。应该知道,本专利技术也可以适用于其他与Linux操作系统类似的操作系统。Linux操作系统中各个进程对系统资源拥有不同的访问权限,随本文档来自技高网...

【技术保护点】
1.一种内核安全检测方法,其特征在于,包括:/n在进程权限凭证集的使用路径上,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,所述进程权限凭证集包括与进程权限相关的信息;以及/n根据比较结果,判断所述当前进程权限凭证集是否被恶意修改。/n

【技术特征摘要】
1.一种内核安全检测方法,其特征在于,包括:
在进程权限凭证集的使用路径上,将当前进程权限凭证集与预先存储的进程权限凭证集进行比较,所述进程权限凭证集包括与进程权限相关的信息;以及
根据比较结果,判断所述当前进程权限凭证集是否被恶意修改。


2.根据权利要求1所述的内核安全检测方法,其特征在于,所述将当前进程权限凭证集与预先存储的进程权限凭证集进行比较的步骤包括:
在进程权限凭证集的使用路径上,计算当前进程权限凭证集的哈希值,以得到第一哈希值;
将所述第一哈希值与第二哈希值进行比较,其中,所述第二哈希值是对所述预先存储的进程权限凭证集进行哈希计算得到的。


3.根据权利要求2所述的内核安全检测方法,其特征在于,所述判断所述当前进程权限凭证集是否被恶意修改的步骤包括:
在所述第一哈希值与所述第二哈希值不一致的情况下,判定所述进程权限凭证集被恶意修改。


4.根据权利要求2所述的内核安全检测方法,其特征在于,还包括:
响应于通过安全方式对进程权限凭证集进行修改,为修改后的进程权限凭证集计算哈希值,以得到所述第二哈希值。


5.根据权利要求1所述的内核安全检测方法,其特征在于,所述预先存储的进程权限凭证集是基于安全方式对进程权限凭证集进行修改后得到的进程权限凭证集。


6.根据权利要求4或5所述的内核安全检测方法,其特征在于,
所述安全方式为调用与所述进程权限凭证集对...

【专利技术属性】
技术研发人员:李丹裘绍翔申晨
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1