Email me

Rust advisories / quinn-proto

VulnerabilityRUSTSEC-2026-0339 · quinn-proto

RUSTSEC-2026-0339: Unbounded growth of pending connection ID retirements in quinn-proto

Short answerA security vulnerability in the quinn-proto crate: Unbounded growth of pending connection ID retirements in quinn-proto. No severity score was published. Fixed in 0.11.17: update to a fixed version.

Cratequinn-proto
TypeVulnerability (denial-of-service)
Affected versionsFrom 0.6.0 before 0.11.17.
Fixed in0.11.17
Severitynot scored
Published2026-08-17
Last changed2026-10-12
Also known asGHSA-hmxj-32vh-65vr

What to do

  1. See which version you have: cargo tree -i quinn-proto (it also shows which of your dependencies pulls it in).
  2. Update within your version requirement: cargo update -p quinn-proto. If the fix is a newer major or minor than your requirement allows, raise it in Cargo.toml (for example quinn-proto = "0.11.17") or update the dependency that pulls it in.
  3. Check again with cargo audit, or paste your Cargo.lock into our Cargo.toml checker.

Details from the advisory

When processing a NEW_CONNECTION_ID frame, quinn-proto queues a RETIRE_CONNECTION_ID frame for each connection ID that the peer asked it to retire. The normal path bounds this queue and closes the connection with a CONNECTION_ID_LIMIT_ERROR if the bound would be exceeded. However, the path handling a connection ID that had already been retired pushed onto the queue without applying the limit and without deduplicating.

A peer that has completed the handshake can first send a NEW_CONNECTION_ID frame with a large retire_prior_to value to advance the receiver's connection ID window, and then repeatedly send NEW_CONNECTION_ID frames with sequence numbers below that window. Each such frame adds another entry to the queue. The queue is only drained by sending RETIRE_CONNECTION_ID frames, which are subject to congestion control, so a peer that withholds acknowledgements can stall the drain while continuing to flood, growing the victim's memory use without bound.

The flaw was corrected in 0.11.17 by applying the same limit on the already-retired path.

Thanks to @scadastrangelove for reporting this issue.

References

From the RustSec Advisory Database (CC0-1.0) via the OSV export, downloaded Oct 24, 2026. Severity score computed from the published CVSS vector.

Other advisories for quinn-proto

Full security history of quinn-proto

Up next

Same cratequinn-proto: security historyEvery advisory for this crate, and whether it is safe to use today.Read it next →

Did this answer your question?

Get the receipts by email.

What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.

No spam, never sold. Every email has a one-click unsubscribe.

Popular in the shop

All 124 tools →

Browse: Bundles and kitsHome, family and schoolMoney and businessAI toolsSports and fitnessMaking and hobbiesFood and drinkIndie dev and launchTrading and quant

Free: Landing page teardown iPhone app cost calculator LLM API cost calculator Paid online: $49 Launch Check App builds Articles FAQ