UEFI Setvariable at runtime -- Problems status and solutions
summary
A patchset enables SetVariable at runtime by sandboxing standalone MM inside OP-TEE, using the eMMC RPMB as tamper‑resistant backing store, and running a user‑space supplicant that the kernel discovers and swaps into the runtime callbacks, then remounts efivarfs read‑write. It demonstrably supports secure‑boot variable updates and capsule updates but is slow, complex, and violates the EFI spec because it depends on a userspace path. Proposed fixes: move the supplicant into kernel space or teach OP‑TEE to access MMC directly; fallback is a standardized file/partition backing.
AI-written summary · about
chapters (18)
- 0:00Introduction to UEFI in embedded
- 1:04EFI variables and runtime challenges
- 3:09Runtime variable limitations and use cases
- 4:56RPMB storage and OP-TEE integration
- 7:21Problems with runtime set variable implementation
- 9:06OP-TEE discoverable bus and supplicant tweaks
- 10:51Benefits and drawbacks of the RPMB solution
- 12:58File-based variable storage proposal
- 16:06Comparison with x86 firmware storage
- 21:02Synchronous updates vs staged memory approach
- 23:30Hardware limitations and SPI flash alternatives
- 26:52Security trade-offs and fallback mechanisms
- 29:03EBBR compliance and secure boot considerations
- 31:10Standardized file format for variables
- 33:56Kernel-based file access for variables
- 34:59Hardware support gaps and industry delays
- 36:32Future directions and kernel implementation
- 39:00Q&A and open discussion
related talks
22mBoot Requirements and Strategies for the Edge
27mSecuring Arm Servers
31mSecure Updates for a Memory Constrained XIP System
57mExtreme Privilege Escalation on Windows 8/UEFI Systems
38mUEFI Secure Boot in U-Boot
16mPatchlings: Enabling A/B-Equivalent OTA Updates for Deeply Embedded...
41mProtected Execution Facility
52mSurviving in the Wilderness: Integrity Protection and System Update
