Modernizing Android BPF and the Android Security Model
summary
Proposal to enable modern BPF features like libbpf CO-RE and iterators on Android while keeping release devices secure; current stack uses a single early BPF loader, networking Apex, and supports devices running kernels back to 4.9, which forces ABI and memory constraints. Plan uses native libbpf in userland with kernel-side access control — either an attach-time LSM/check on load or a BPF-program-access map tied to KMI — prototype approach drafted but not yet landed; vendors currently limited to socket filters.
AI-written summary · about
chapters (12)
- 0:00Introduction to Android BPF
- 1:48Android Security Model Basics
- 4:21BPF in Release vs Debug
- 6:28Current BPF Restrictions
- 8:54Challenges with BPF Loader
- 10:21Modernizing BPF Approach
- 13:14Kernel Access Control Proposal
- 15:06Q&A Session Part 1
- 16:30Q&A Session Part 2
- 18:16Vendor Use Cases for BPF
- 19:20Boot Time and Enforcement
- 20:23Closing Remarks
related talks
27mBPF LSM - Updates and What next?
28mDeveloping Modern eBPF Applications
34mWhat's new in the BPF world?
36mThe journey of BPF from restricted C language towards extended and safe C.
21mPortable BPF with CO:RE
36meBPF for Runtime Security
16mBPF Based Telemetry, Metrics, and Accounting on Android
45mSupporting BPF in the GNU Toolchain
