Runtime Struct Type-Based Access Control for eBPF Programs using LLVM

The collection of statistics and events within the kernel, a core component of an operating system, has seen a significant shift towards the use of eBPF (Extended Berkeley Packet Filter) programs. These programs, crafted in user-mode, operate within kernel-mode without compromising the kernel's memory coherence or execution flow. Once loaded, eBPF programs are linked to specific hooks in the kernel's execution path, activating when the kernel interacts with these hooks and deactivating seamlessly to allow the kernel's usual operational procedures to continue. eBPF programs are uniquely capable of accessing both kernel and user memory spaces, which, while powerful, can introduce security concerns. Particularly when an operating system incorporates an untrusted eBPF program for data collection, there is a risk that it could access and transmit sensitive information. Given the potential threats, enhancing the security measures of eBPF programs is imperative. This study introduces a novel methodology for bolstering the security of eBPF programs by incorporating automatic security checks within the LLVM (Low-Level Virtual Machine) Intermediate Representation (IR) stage. The approach utilizes an LLVM pass, a programmable step in the LLVM compilation process, to integrate security measures during the compilation of eBPF programs.

Publication Details

Journal
Electronic Theses and Dissertations Repository (University of Pisa)
Published
2024-11-21
Primary Topic
Security and Verification in Computing
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Runtime Struct Type-Based Access Control for eBPF Programs using LLVM

Electronic Theses and Dissertations Repository (University of Pisa)
Security and Verification in Computing
article

Runtime Struct Type-Based Access Control for eBPF Programs using LLVM

article en

Abstract

The collection of statistics and events within the kernel, a core component of an operating system, has seen a significant shift towards the use of eBPF (Extended Berkeley Packet Filter) programs. These programs, crafted in user-mode, operate within kernel-mode without compromising the kernel's memory coherence or execution flow. Once loaded, eBPF programs are linked to specific hooks in the kernel's execution path, activating when the kernel interacts with these hooks and deactivating seamlessly to allow the kernel's usual operational procedures to continue. eBPF programs are uniquely capable of accessing both kernel and user memory spaces, which, while powerful, can introduce security concerns. Particularly when an operating system incorporates an untrusted eBPF program for data collection, there is a risk that it could access and transmit sensitive information. Given the potential threats, enhancing the security measures of eBPF programs is imperative. This study introduces a novel methodology for bolstering the security of eBPF programs by incorporating automatic security checks within the LLVM (Low-Level Virtual Machine) Intermediate Representation (IR) stage. The approach utilizes an LLVM pass, a programmable step in the LLVM compilation process, to integrate security measures during the compilation of eBPF programs.

Electronic Theses and Dissertations Repository (University of Pisa)
Openalex Percentile: Top 53%
Security and Verification in Computing
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.