All unprivileged memory accesses in uVisor should be centralized
- Dominant language
- C
- Stars
- 135
- Forks
- 72
- PR merge metrics
- No merged PRs in 30d
Description
Every time uVisor reads or writes a memory location belonging to a secure box, it should do so using unprivileged instructions, `ldrt`, `strt`.
We will change every occurrence of these memory accesses to use a `static inline` function, which in turn uses the CMSIS intrinsics for unprivileged access.
A single function helps with security verification and allows a consistent security model. In addition, if assumptions about a piece of code change, the security of the memory accesses is not compromised.
Contributor guide
Research direction
No files, tests, or entry points are named. Locate every uVisor read or write to secure-box memory, inspect the CMSIS unprivileged-access intrinsics, and identify the common static inline function boundary. Done means all such accesses use the centralized helper with unprivileged instructions, with security assumptions remaining consistent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- embedded-iot, security
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100