Inventory fails to prohibit standard library access prior to initialization of Rust standard library runtime
Key facts
- Attack vector
- —
- Privileges required
- —
- User interaction
- —
- Attack complexity
- —
- Impact type
- —
- Confidentiality · integrity · availability
- —
- Fix status
- Fixed
No CVSS vector from any source. Fix status from GitHub.
Summary
Affected versions allow arbitrary caller-provided code to execute before the lifetime of `main`. If the caller-provided code accesses particular pieces of the standard library that require an initialized Rust runtime, such as `std::io` or `std::thread`, these may not behave as documented. Panics are likely; UB is possible. The flaw was corrected by enforcing that only code written within the `inventory` crate, which is guaranteed not to access runtime-dependent parts of the standard library, runs before `main`. Caller-provided code is restricted to running at compile time.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | inventory (crates.io) | before 0.2.0 | 0.2.0 | Patch available | GHSA-ghc8-5cgm-5rpf |
- inventory (crates.io) Vendor— Affected before 0.2.0 Fixed in 0.2.0 Patch available GHSA-ghc8-5cgm-5rpf
Remediation
- Fix · GHSA-ghc8-5cgm-5rpf inventory (crates.io) Fixed in 0.2.0 Advisory →
Timeline
- 2026-10-03 Threatist record created from GHSA-ghc8-5cgm-5rpf
References
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences