首页|期刊导航|高技术通讯|基于编译的Linux内核地址空间布局控制方法

基于编译的Linux内核地址空间布局控制方法OA

A compilation-based method for controlling the address space layout of the Linux kernel

中文摘要英文摘要

随着即时返回导向编程攻击(just-in-time return-oriented programming,JIT-ROP)等控制流劫持攻击技术的出现,内核地址空间布局随机化(kernel address space layout randomi-zation,KASLR)面临严峻挑战,正朝着细粒度和持续化的方向发展.现有方法普遍基于源码修改或二进制重写,效率低且不够灵活.为了解决这一问题,本文设计了一种基于编译的地址空间布局控制方法(compile-based address space layout control,CAC).CAC 为目标文件的函数引入固定入口,通过编译生成能够支撑函数粒度持续随机化的目标文件,具备自动化和灵活控制的特征.实验结果表明,CAC可以正常编译和装载1 700余个内核模块;与现有方法相比,不仅单个模块的目标文件生成效率更高,而且CAC所生成的目标文件在运行时的随机化开销降低了至少15.0%.

With the emergence of control-flow hijacking techniques such as just-in-time return-oriented programming(JIT-ROP),kernel address space layout randomization(KASLR)faces severe challenges and is evolving towards finer granularity and continuous randomization.Existing methods are generally based on source code modifications or bi-nary rewriting,which is inefficient and lacks flexibility.To address this issue,this paper designs a compilation-based address space layout control method(CAC).CAC introduces fixed entry points for functions in object files,and through compilation,generates object files that support function-level continuous randomization,featuring auto-mation and flexible control.Experimental results show that CAC successfully compiles and loads over 1 700 kernel modules.Compared with existing methods,the object file generation for individual modules is more efficient,and the runtime randomization overhead of CAC-generated object files is reduced by at least 15.0%.

李润宽;胡斌;赵小芳;史骁;蒋德钧

中国科学院计算技术研究所 北京 100190||中国科学院大学 北京 100049||北京中关村实验室 北京 100194中国科学院计算技术研究所 北京 100190||中国科学院大学 北京 100049||北京中关村实验室 北京 100194中国科学院计算技术研究所 北京 100190||北京中关村实验室 北京 100194||中科苏州智能计算技术研究院 苏州 215028中国科学院计算技术研究所 北京 100190||中科南京信息高铁研究院 南京 211135||中国科学院大学南京学院 南京 211135中国科学院计算技术研究所 北京 100190||中国科学院大学 北京 100049||北京中关村实验室 北京 100194

操作系统内核控制流劫持内核地址空间布局随机化编译器插件

operating system kernelcontrol flow hijackingkernel address space layout randomizationcom-pile plugin

《高技术通讯》 2026 (1)

1-14,14

中国科学院计算技术研究所创新课题(E361060)资助项目.

10.3772/j.issn.1002-0470.2026.01.001

评论