GHSA-36xm-35qq-795w json
Inventory exposes reference to non-Sync data to an arbitrary thread
published 3y ago modified 2y ago also RUSTSEC-2023-0058
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
Affected versions do not enforce a `Sync` bound on the type of caller-provided value held in the plugin registry. References to these values are made accessible to arbitrary threads other than the one that constructed them.
A caller could use this flaw to submit thread-unsafe data into inventory, then access it as a reference simultaneously from multiple threads.
The flaw was corrected by enforcing that data submitted by the caller into inventory is `Sync`.
Patch / fix
- crates.io inventory 0.2.0
- github.com/dtolnay/inventory@e1e347d commit
- github.com/dtolnay/inventory#42 pull request
Is GHSA-36xm-35qq-795w in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerAffected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | inventory | <0.2.0 >=0.0.0-0, <0.2.0 |
0.2.0 |
References
Sources
- GitHub Advisory GHSA-36xm-35qq-795w
- OSV RUSTSEC-2023-0058
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.