Skip to main content

Comparing Security in eBPF and WebAssembly

Abstract
This paper examines the security of eBPF and WebAssembly (Wasm), two technologies that have gained widespread adoption in recent years, despite being designed for very different use cases and environments. While eBPF is a technology primarily used within operating system kernels such as Linux, Wasm is a binary instruction format designed for a stack-based virtual machine with use cases extending beyond the web. Recognizing the growth and expanding ambitions of eBPF, Wasm may provide instructive insights, given its design around securely executing arbitrary untrusted programs in complex and hostile environments such as web browsers and clouds. We analyze the security goals, community evolution, memory models, and execution models of both technologies, and conduct a comparative security assessment, exploring memory safety, control flow integrity, API access, and side-channels. Our results show that eBPF has a history of focusing on performance first and security second, while Wasm puts more emphasis on security at the cost of some runtime overheads. Considering language-based restrictions for eBPF and a security model for API access are fruitful directions for future work.
 
Reference
Dejaeghere, J., Gbadamosi, B., Pulls, T., & Rochet, F. (2023). Comparing Security in eBPF and WebAssembly. In eBPF 2023 - Proceedings of the ACM SIGCOMM 2023 Workshop on eBPF and Kernel Extensions (pp. 35–41). (eBPF 2023 - Proceedings of the ACM SIGCOMM 2023 Workshop on eBPF and Kernel Extensions). ACM Press. https://doi.org/10.1145/3609021.3609306

Author(s)

Digital Object Identifier (DOI)
https://doi.org/10.1145/3609021.3609306
Author(s) not member of CyberExcellence
Jules Dejaeghere
Bolaji Gbadamosi
Tobias Pulls
Florentin Rochet