Security context

What an agent needs to avoid regressing past fixes and find the next vuln in this repo.

rust-embedded/cortex-m
master @ 9bbff92
4
Fixes
0
CVEs
HIGH
Peak severity
100.0%
Coverage
Highlights
Memory Safety: 3 prior fixes. Scrutinize any change in this area.
src/interrupt.rs: most-fixed (2 issues). Treat as high-risk during review.
3 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns

The bug types that recur here, drawn from past fixes, not open vulnerabilities.

Memory Safety: Two separate memory-safety fixes in the interrupt Mutex abstraction show a history of unsound synchronization primitives; both involved bypassing Rust's safety guarantees via unsafe impls or borrow-checker evasion.
Memory Safety: Critical exception handlers (NMI, HardFault, DefaultHandler) were allowed to be safe functions, enabling unsafe memory access without explicit developer acknowledgment. Requiring unsafe fn is a key hardening step for the RT layer.
Information Disclosure: Processor flags (APSR) were not cleared before branching to non-secure mode, leaking condition flag state across security boundaries. This is a state-hygiene issue in the assembly transition path.