RUSTSEC-2026-0185: Remote memory exhaustion in quinn-proto from unbounded out-of-order stream reassembly
- Dominant language
- Rust
- Stars
- 1.4k
- Forks
- 567
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 93
Description
> Remote memory exhaustion in quinn-proto from unbounded out-of-order stream reassembly
| Details | |
| ------------------- | ---------------------------------------------- |
| Package | `quinn-proto` |
| Version | `0.11.14` |
| URL | [https://github.com/quinn-rs/quinn/pull/2694](https://github.com/quinn-rs/quinn/pull/2694) |
| Date | 2026-06-22 |
| Patched versions | `>=0.11.15` |
The `Assembler` component that assembles unordered stream fragments into consecutive chunks of the
stream incurs some overhead for non-contiguous fragments. Readers that read from a RecvStream in
order (through an `AsyncRead` impl for example) will be sensitive to peers that send fragments
while leaving out early parts of the stream, and in particular, fragments with many gaps (because
these cannot be defragmented). In such a scenario, the receiving connection suffers from high
buffer overhead, enabling memory exhaustion.
See [advisory page](https://rustsec.org/advisories/RUSTSEC-2026-0185.html) for additional details.
Contributor guide
Research direction
Review the repository's dependency declarations and lockfile for quinn-proto 0.11.14, using the linked upstream pull request and advisory for context. The work is done when the resolved version is at least 0.11.15 and the repository's dependency checks pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- security
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100