Microsoft’s November 9 FORGE Lab report brings together memory-safety findings in Rust’s standard libraries. Researchers combined AI-assisted discovery with manual investigation and reproduction.
The report groups failures into three patterns: panics interrupting unsafe operations, inconsistent caller-provided implementations, and assumptions about operating-system state. Safe Rust can trigger undefined behaviour when the unsafe implementation beneath a safe API violates its contract.
Fix status and practical impact are separate questions
The signal-stack issue illustrates the distinction. Calling process::exit from a child thread could unmap the main thread’s alternate signal stack. Its fix merged on August 14; this is a newly published research account, not a claim that every finding was disclosed in November.
The CommandExt::exec environment issue remains open, with a proposed change under review. Its report records that Rust’s security team did not consider the demonstrated concurrent-exec behaviour grounds for a security announcement.
FORGE assessed practical exploitation of the signal-stack case as unlikely under the tested conditions. That assessment does not extend automatically to the other findings. A soundness defect becomes an application security problem when a reachable execution path satisfies its triggering conditions; the report does not establish that every Rust application is vulnerable.
Image: AI-generated editorial illustration created for DaySec.