Chaos: Function Granularity Runtime Address Layout Space Randomization for Kernel Module

The return-oriented programming (ROP) is a prevalent code reuse attack. It exploits vulnerabilities such as stack overflows to hijack the execution flow into the carefully chosen instruction snippet (called gadget) chain already in the memory. Address Space Layout Randomization (ASLR) is widely used to defend against code reuse attacks like ROP from hijacking control flow. However, the Linux kernel, especially the most vulnerable kernel module, only applies basic coarsegrained load-time ASLR methods. This is far from sufficient to defend against new ROP attacks. In this paper, we propose Chaos, a fine-grained runtime architecture-independent ASLR for the kernel module. Chaos adopts function granularity randomization to increase randomization entropy. It continuously performs randomization during runtime to invalidate memory disclosure. To reduce overhead, Chaos only suspends the kernel module and minimizes the running state migration efforts. We implement Chaos based on Linux 5.10 LTS on ARM64 and evaluate it using two common benchmarks. The result demonstrates that Chaos achieves fine-grained runtime ASLR for protecting kernel modules with 5% performance overhead degradation at most.

Authors

Institutions

Publication Details

Published
2024-08-29
DOI
https://doi.org/10.1145/3678015.3680476
Citations
2
Primary Topic
Security and Verification in Computing
Type
article
Field-Weighted Citation Impact
0.69
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Chaos: Function Granularity Runtime Address Layout Space Randomization for Kernel Module

Bin Hu, Sa Wang, Ying Wang, Xiaofang Zhao et al.
2 citations
Security and Verification in Computing
0.69
article

Chaos: Function Granularity Runtime Address Layout Space Randomization for Kernel Module

Bin Hu, Sa Wang, Ying Wang, Xiaofang Zhao, Ninghui Sun, Haifeng Sun, Dejun Jiang, Zihao Chang, J.X. Lin, Runkuang Li
article en
2 citations

Abstract

The return-oriented programming (ROP) is a prevalent code reuse attack. It exploits vulnerabilities such as stack overflows to hijack the execution flow into the carefully chosen instruction snippet (called gadget) chain already in the memory. Address Space Layout Randomization (ASLR) is widely used to defend against code reuse attacks like ROP from hijacking control flow. However, the Linux kernel, especially the most vulnerable kernel module, only applies basic coarsegrained load-time ASLR methods. This is far from sufficient to defend against new ROP attacks. In this paper, we propose Chaos, a fine-grained runtime architecture-independent ASLR for the kernel module. Chaos adopts function granularity randomization to increase randomization entropy. It continuously performs randomization during runtime to invalidate memory disclosure. To reduce overhead, Chaos only suspends the kernel module and minimizes the running state migration efforts. We implement Chaos based on Linux 5.10 LTS on ARM64 and evaluate it using two common benchmarks. The result demonstrates that Chaos achieves fine-grained runtime ASLR for protecting kernel modules with 5% performance overhead degradation at most.

Chinese Academy of Sciences (CN), Peking University (CN), Institute of Computing Technology (CN), University of Chinese Academy of Sciences (CN)
Openalex Percentile: Top 25%
Security and Verification in Computing
0.69
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Chaos: Function Granularity Runtime Address Layout Space Randomization for Kernel Module — Bin Hu, Sa Wang, et al. · (2024) | TGRS Research Map | TGRS