`pnet_packet` buffer overrun in `set_payload` settersGHSA-cf4g-fcf8-3cr9
MEDIUMGHSA-cf4g-fcf8-3cr9 is a medium-severity (CVSS 6) vulnerability in pnet_packet. A fix is available for pnet_packet — see the affected versions and patch details below.
Real-World Exposure
pnet_packetReal-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
As indicated by this issue, a buffer overrun is possible in the set_payload setter of the various mutable "Packet" struct setters. The offending set_payload functions were defined within the struct impl blocks in earlier versions of the package, and later by the packet macro.
Fixed in the packet macro by this PR.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🦀crates.io | pnet_packet | all versions | 0.27.2cargo update -p pnet_packet --precise 0.27.2 |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for pnet_packet, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update pnet_packet to 0.27.2 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-cf4g-fcf8-3cr9 is resolved across your whole dependency graph.
Workarounds
Constrain what reaches the vulnerable code: limit the size and shape of untrusted input, isolate the affected component in a sandboxed or least-privileged process, and enable the platform's memory-safety mitigations (ASLR, stack protector, hardened allocator) so an out-of-bounds access is more likely to fail closed than to be exploitable.
Frequently Asked Questions
Is GHSA-cf4g-fcf8-3cr9 in your dependencies?
Find it across crates.io, including transitive dependencies.