The invention relates to a lightweight structure protection method and device for Linux kernel. This method will be structured as a key to protect the Linux kernel structure and non key protection structure, focus on the protection of key protection structure, for selective protection of non key protection structure; the key protection structure comprises a Linux security module and structure is closely related with the Linux security module; and monitoring for the key protection structure modification action, to intercept the protected data change, check on the protected code change and / or change the page table to determine its legitimacy, if judged to be non rule to intercept, if judged by legal instruction simulation to complete the corresponding modification. The invention can enhance the overall security of the Linux kernel with a small performance cost.
【技术实现步骤摘要】
一种Linux内核轻量级结构化保护方法及装置
本专利技术属于计算机操作系统内核安全
,具体涉及一种基于虚拟化技术针对Linux内核的轻量级结构化的保护方法及装置。
技术介绍
随着计算机系统越来越广泛的使用,计算机系统的安全问题被广泛关注。计算机系统的安全有多个层次和方面,而在传统的软件栈中操作系统内核是处于最底层,是整个计算机系统的基础,因此操作系统内核安全尤为重要。Linux操作系统内核是极其庞大和复杂的,对其进行全方位保护需要的开销极大,并且保护方案难以实现和确保全面性。已有的技术多是针对抵御特定类型的攻击和防护特定类型的结构,提供单一侧面的内核保护。
技术实现思路
本专利技术要解决的技术问题是以较小的性能代价提升Linux内核整体的安全性而不仅仅是某个单一侧面的保护。为了解决上述问题,本专利技术提出了一种基于虚拟化技术针对Linux内核的轻量级结构化的保护方法,包括:将Linux内核结构化为两个部分——关键保护结构和非关键保护结构。对关键保护结构进行重点保护,而对非关键保护结构进行可选择性保护。对于Linux内核结构化的划分,本专利技术以Linux安全模块(LinuxSecurityModule,LSM)为基础,将其作为关键保护结构的重点,然后以此展开,将与LSM密切相关的结构都作为关键保护结构。这些结构包括LSM框架中的security_hook_heads、各个安全模块中的security_hook_list、系统调用表sys_call_table与ia32_sys_call_table、中断向量表idt_table与debug_idt_tab ...
【技术保护点】
一种Linux内核轻量级结构化保护方法,其特征在于,包括以下步骤:1)将Linux内核结构化为关键保护结构和非关键保护结构,对关键保护结构进行重点保护,对非关键保护结构进行可选择性保护;所述关键保护结构包括Linux安全模块及与Linux安全模块密切相关的结构;2)监控针对所述关键保护结构的修改动作,对被保护的数据变更进行拦截,对被保护的代码变更和/或页表项变更进行检查以判定其合法性,如果判定为非法则进行拦截,如果判定为合法则通过指令模拟完成相应的修改。
【技术特征摘要】
1.一种Linux内核轻量级结构化保护方法,其特征在于,包括以下步骤:1)将Linux内核结构化为关键保护结构和非关键保护结构,对关键保护结构进行重点保护,对非关键保护结构进行可选择性保护;所述关键保护结构包括Linux安全模块及与Linux安全模块密切相关的结构;2)监控针对所述关键保护结构的修改动作,对被保护的数据变更进行拦截,对被保护的代码变更和/或页表项变更进行检查以判定其合法性,如果判定为非法则进行拦截,如果判定为合法则通过指令模拟完成相应的修改。2.如权利要求1所述的方法,其特征在于,所述关键保护结构包括包括LSM框架中的security_hook_heads、各个安全模块中的security_hook_list、系统调用表sys_call_table与ia32_sys_call_table、中断向量表idt_table与debug_idt_table以及trace_idt_table、内核中所有代码和与前述结构相关的页表项。3.如权利要求1所述的方法,其特征在于,步骤2)通过清除虚拟机扩展页表EPT里受保护数据结构相关页表项中的写权限位,防止security_hook_heads、security_hook_list、系统调用表、中断向量表被更改。4.如权利要求1所述的方法,其特征在于,步骤2)通过清除EPT里内核代码相关页表项中的写权限位,捕捉对内核代码的更改行为,对更改进行检查,当认为符合内核中任意特性对内核代码的修改行为后,模拟指令使对内核代码的修改生效。5.如权利要求1所述的方法,其特征在于,步骤2)通过清除与受保护页表项相关的EPT里的页表项中的写权限,捕捉对受保护页表项的修改,并检查该修改是否保证了其映射不被改变以及权限设置满足代码完整性的要求,对经过检查的修改经过指令模拟,完成相应的...
【专利技术属性】
技术研发人员:涂碧波,王博实,
申请(专利权)人:中国科学院信息工程研究所,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。