cargo package report

Is ringbuf safe?

1 known vulnerability.

cvss
not scored

severity out of 10

epss
not scored

chance of exploitation in 30 days

xyz score
not scored

CyberXYZ composite out of 10

fig. 01 — RUSTSEC-2026-0293, the advisory selected below

// 1 advisories

RUSTSEC-2026-0293

UNKNOWN

Consumer::skip() and Consumer::clear() are not panic-safe. They drop the consumed elements in place and only afterwards call advancereadindex() to move the ring buffer's read index past them. If an element's Drop panics mid-loop, advancereadindex() is never reached, so the read index still points at the already-dropped elements. When the ring buffer is later dropped, its destructor re-visits those slots and drops the same elements a second time — a double free (CWE-415) / use-after-free (CWE-416) reachable from safe Rust, confirmed under AddressSanitizer.

Consumer::clear() delegates to Consumer::skip(self.len()), so both share the same root cause and the same fix.

// mitigation

Update to 0.5.2 or later (fixed in agerasev/ringbuf#60).

Affected
>=0.0.0-0, <0.5.2
Fixed in
not stated
Published
2026-09-21
Sources
osv
// references

// dependencies

0 direct

Create a free accountfor dependency paths and remediation
// ai model usage

Tracked for PyPI packages. HuggingFace models declare Python dependencies, so cargo packages are not covered.


Checked 2026-09-22 at 17:35 UTC. The most recent advisory here was published 2026-09-21. Updated continuously from NVD, GHSA, OSV and CNA feeds.

Think a verdict here is wrong? Tell us — we respond within 2 business days.
Is ringbuf safe? cargo package security report | CyberXYZ