[发明专利]一种Linux内核轻量级结构化保护方法及装置有效
申请号: | 201710305308.0 | 申请日: | 2017-05-03 |
公开(公告)号: | CN107203716B | 公开(公告)日: | 2020-05-22 |
发明(设计)人: | 涂碧波;王博实 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F21/53 | 分类号: | G06F21/53;G06F21/55;G06F9/455 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 邱晓锋 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 linux 内核 轻量级 结构 保护 方法 装置 | ||
1.一种Linux内核轻量级结构化保护方法,其特征在于,包括以下步骤:
1)将Linux内核结构化为关键保护结构和非关键保护结构,对关键保护结构进行重点保护,对非关键保护结构进行可选择性保护;所述关键保护结构包括Linux安全模块及与Linux安全模块密切相关的结构;所述关键保护结构包括LSM框架中的security_hook_heads、各个安全模块中的security_hook_list、系统调用表sys_call_table与ia32_sys_call_table、中断向量表idt_table与debug_idt_table以及trace_idt_table、内核中所有代码和与前述结构相关的页表项;
2)监控针对所述关键保护结构的修改动作,对被保护的数据变更进行拦截,对被保护的代码变更和/或页表项变更进行检查以判定其合法性,如果判定为非法则进行拦截,如果判定为合法则通过指令模拟完成相应的修改;
步骤2)通过清除虚拟机扩展页表EPT里受保护数据结构相关页表项中的写权限位,防止security_hook_heads、security_hook_list、系统调用表、中断向量表被更改;
步骤2)通过清除EPT里内核代码相关页表项中的写权限位,捕捉对内核代码的更改行为,对更改进行检查,当认为符合内核中任意特性对内核代码的修改行为后,模拟指令使对内核代码的修改生效;
步骤2)通过清除与受保护页表项相关的EPT里的页表项中的写权限,捕捉对受保护页表项的修改,并检查该修改是否保证了其映射不被改变以及权限设置满足代码完整性的要求,对经过检查的修改经过指令模拟,完成相应的修改。
2.如权利要求1所述的方法,其特征在于,根据页表项对应结构的不同,将页表项进行分类,包括:代码相关页表项、代码无关数据相关页表项、受限页表项、非受限页表项、用户相关页表项、非受控页表项。
3.如权利要求2所述的方法,其特征在于,对于代码无关数据相关页表项,确保其保存的下一级物理地址不变以及权限位总是可读、可写、不可执行;对于代码相关页表项,确保其保存的下一级物理地址不变以及权限位可读、可写、可执行;对于受限页表项,确保其权限位可读、可写、不可执行;对于全局页目录表PGD中的用户相关页表项,确保其权限为用户可访问;对非受控页表项,不做任何限制。
4.一种采用权利要求1所述方法的Linux内核轻量级结构化保护装置,其特征在于,包括:
启动模块,用于启动过程和初始化的管理;
虚拟机管理模块,用于维护虚拟机的虚拟执行环境,处理虚拟机状态记录以及根据虚拟机退出原因进行任务分发,并维护和更改EPT中权限设置;
保护结构管理模块,用于记录被保护结构在虚拟机中的虚拟地址和物理地址以及虚拟地址与物理地址的关系,管理被保护结构的增加与删除,维护保护结构与策略函数关系;
指令解析与模拟模块,用于对机器指令进行解析,辅助策略函数判断指令会对内存产生的修改,模拟指令让指令生效;
数据策略模块,用于对被保护的数据变更进行拦截;
代码策略模块,用于对被保护的代码变更进行检查,判定修改的合法性,拦截非法的修改,模拟合法的修改以使修改生效;
页表策略模块,用于对被保护的页表项变更进行检查,判定修改的合法性,拦截非法的修改,模拟合法的修改以使修改生效。
5.如权利要求4所述的装置,其特征在于,所述启动模块在启动阶段初始化执行环境,并将关键保护数据和内核代码在内的关键保护结构的地址范围、相应的EPT页表权限与各关键保护结构的策略函数加入到所述保护结构管理模块中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710305308.0/1.html,转载请声明来源钻瓜专利网。