[发明专利]一种LINUX的内核级进程动态度量方法在审
申请号: | 202111445262.5 | 申请日: | 2021-11-30 |
公开(公告)号: | CN114168934A | 公开(公告)日: | 2022-03-11 |
发明(设计)人: | 郭皓;吴春光;刘步权;齐璇;战茅 | 申请(专利权)人: | 麒麟软件有限公司 |
主分类号: | G06F21/52 | 分类号: | G06F21/52 |
代理公司: | 天津诺德知识产权代理事务所(特殊普通合伙) 12213 | 代理人: | 栾志超 |
地址: | 300450 天津市滨海新区滨海*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 linux 内核 进程 动态 度量 方法 | ||
1.一种LINUX的内核级进程动态度量方法,其特征在于,包括如下步骤:
S1、将度量文件导入LINUX的内核态,所述度量文件包括预设的可执行ELF文件;
S2、执行一程序,获取该程序的可执行ELF文件的第一代码时,同时获取所述度量文件中与所述第一代码对应的第一预设代码,若所述第一代码与所述第一预设代码不一致,则生成告警日志,反之不生成;
S3、运行该程序并验证该程序的bprm文件的正确性时,将从可执行ELF文件中读取的第二代码和所述度量文件中与所述第二代码对应的第二预设代码进行对比,若不一致,则生成告警日志,反之不生成;
S4、该程序调用__schedule()函数结束后,将current宏指向的进程所包括的第三代码和所述度量文件中与所述第三代码对应的第三预设代码进行对比,若不一致,则生成告警日志,反之不生成。
2.根据权利要求1所述的LINUX的内核级进程动态度量方法,其特征在于,所述度量文件中预设的可执行ELF文件的代码段和数据段进行哈希计算,得到每一代码段和数据段的哈希值并储存。
3.根据权利要求2所述的LINUX的内核级进程动态度量方法,其特征在于,通过对所述第一代码、所述第二代码和所述第三代码进行哈希计算,得到各自哈希值,并与所述度量文件中储存的哈希值进行对比,从而找到对应的所述第一预设代码、所述第二预设代码和所述第三预设代码。
4.根据权利要求1所述的LINUX的内核级进程动态度量方法,其特征在于,所述将度量文件导入LINUX的内核态具体包括:
在基于LINUX的机器启动时,通过procfs接口,使用mmap()函数把所述度量文件导入到LINUX的内核态中。
5.根据权利要求1所述的LINUX的内核级进程动态度量方法,其特征在于,所述获取该程序的可执行ELF文件的第一代码具体包括:
在sched_exec()函数之前,使用get_user_pages()函数获取该程序的可执行ELF文件的第一代码。
6.根据权利要求1所述的LINUX的内核级进程动态度量方法,其特征在于,所述验证bprm文件的正确性指调用Linux安全模块的security_bprm_check函数指针指向的函数来验证bprm文件的正确性。
7.根据权利要求1所述的LINUX的内核级进程动态度量方法,其特征在于,所述该程序调用__schedule()函数指该程序的周期性调度器和/或负载均衡调用所述__schedule()函数。
8.一种电子设备,其特征在于,包括处理器和存储器,所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,实现权利要求1至7中任一项所述的方法。
9.一种可读存储介质,其特征在于,所述可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1至7中任一项所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于麒麟软件有限公司,未经麒麟软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111445262.5/1.html,转载请声明来源钻瓜专利网。