Kernel Code Integrity Protection at the Physical Address Level on RISC-V

被引:1
作者
Ha, Seon [1 ]
Yu, Minsang [2 ]
Moon, Hyungon [1 ]
Lee, Jongeun [2 ]
机构
[1] Ulsan Natl Inst Sci & Technol UNIST, Dept Comp Sci & Engn, Ulsan 44919, South Korea
[2] Ulsan Natl Inst Sci & Technol UNIST, Dept Elect Engn, Ulsan 44919, South Korea
基金
新加坡国家研究基金会;
关键词
System security; operating system security; RISC-V; linux; code-injection attack;
D O I
10.1109/ACCESS.2023.3285876
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
An operating system kernel has the highest privilege in most computer systems, making its code integrity critical to the entire system's security. Failure to protect the kernel code integrity allows an attacker to modify the kernel code pages directly or trick the kernel into executing instructions stored outside the kernel code pages. Existing prevention mechanisms rely on the memory management unit in which certain memory pages are marked as not-executable in supervisor mode to prevent such attacks. However, an attacker can bypass these existing mechanisms by directly manipulating the page table contents to mark the memory pages with malicious code as supervisor-executable. This paper shows that a small architectural extension enables a physical address-level mechanism to stop this threat without relying on page table integrity. PRIV LOCK lets, at boot time, the kernel specifies the physical address ranges containing its code. At run time, PRIV LOCK ensures that the content within the range is not manipulated and that only the instructions from those pages are executed while the processor runs in supervisor mode. Despite this protection, the kernel can still create new code pages (e.g., for loadable kernel modules) and make them executable with the help of PRIV LOCK 's secure loader. The experimental results show that PRIV LOCK incurs low performance (<0.5%), area (0.14-0.3%), and energy/power (0.053-2%) overhead.
引用
收藏
页码:62358 / 62367
页数:10
相关论文
共 40 条
[11]   PT-Rand: Practical Mitigation of Data-only Attacks against Page Tables [J].
Davi, Lucas ;
Gens, David ;
Liebchen, Christopher ;
Sadeghi, Ahmad-Reza .
24TH ANNUAL NETWORK AND DISTRIBUTED SYSTEM SECURITY SYMPOSIUM (NDSS 2017), 2017,
[12]  
Ermolov M., 2014, MICROSOFT WINDOWS 8
[13]  
Ge XY, 2014, Arxiv, DOI arXiv:1410.7747
[14]  
Golden B., 2021, HYPERVISOR PROTECTED
[15]   Prefetch Side-Channel Attacks: Bypassing SMAP and Kernel ASLR [J].
Gruss, Daniel ;
Maurice, Clementine ;
Fogh, Anders ;
Lipp, Moritz ;
Mangard, Stefan .
CCS'16: PROCEEDINGS OF THE 2016 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2016, :368-379
[16]  
Hwang D, 2019, DES AUT TEST EUROPE, P740, DOI [10.23919/DATE.2019.8715277, 10.23919/date.2019.8715277]
[17]   False Sense of Security: A Study on the Effectivity of Jailbreak Detection in Banking Apps [J].
Kellner, Ansgar ;
Horlboge, Micha ;
Rieck, Konrad ;
Wressnegger, Christian .
2019 4TH IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY (EUROS&P), 2019, :1-14
[18]  
Kossifidis N., 2022, PMP ENHANCEMENTS MEM
[19]  
Krstic I., 2019, SCENES IOS MAC SECUR, P1
[20]  
Krysiuk P., 2021, CVE202129154