Unchecked vector pre-allocationGHSA-mcrf-7hf9-f6q5
GHSA-mcrf-7hf9-f6q5 is a remote code execution vulnerability in rmpv. A fix is available for rmpv — see the affected versions and patch details below.
Real-World Exposure
rmpvReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects crates.io packages — download data is not available via public APIs for these ecosystems.
Description
Affected versions of this crate pre-allocate memory on deserializing raw buffers without checking whether there is sufficient data available. This allows an attacker to do denial-of-service attacks by sending small msgpack messages that allocate gigabytes of memory.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🦀crates.io | rmpv | all versions | 0.4.2cargo update -p rmpv --precise 0.4.2 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for rmpv, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update rmpv to 0.4.2 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-mcrf-7hf9-f6q5 is resolved across your whole dependency graph.
Workarounds
Do not deserialise data from untrusted sources: where the format allows it, restrict deserialisation to an explicit allowlist of expected types, and prefer a data-only format (JSON, Protobuf) over one that can reconstruct arbitrary objects until you can upgrade.
Frequently Asked Questions
Is GHSA-mcrf-7hf9-f6q5 in your dependencies?
Find it across crates.io, including transitive dependencies.