RUSTSEC-2026-0340: Peer minimum ACK delay can panic quinn-proto when ACK_FREQUENCY transmission is enabled
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 1/5
- Tempo stimato
- Meno di un'ora
- Idoneità per principianti
- 70/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- networking, security
Direzione di ricerca
L'avviso riguarda il crate quinn-proto, quindi inizia verificando se compare in Cargo.lock (ad esempio con cargo tree -i quinn-proto). Se compare, esegui cargo update -p quinn-proto per passare alla 0.11.18 o successiva, poi conferma con cargo tree ed esegui la suite di test. È completato quando il lockfile risolve a una versione con patch e build e test continuano a passare.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Peer minimum ACK delay can panic quinn-proto when ACK_FREQUENCY transmission is enabled
| Details | |
|---|---|
| Package | quinn-proto |
| Version | 0.11.17 |
| URL | https://github.com/quinn-rs/quinn/pull/2868 |
| Date | 2026-09-14 |
| Patched versions | >=0.11.18 |
| Unaffected versions | <0.11.0 |
When sending ACK_FREQUENCY frames is enabled through
TransportConfig::ack_frequency_config(Some(..)), the peer's transport parameters could cause
AckFrequencyState::candidate_max_ack_delay to call Duration::clamp with a minimum greater
than its maximum, which panics.
For example, a peer advertising a min_ack_delay of 100,000 microseconds and a max_ack_delay
of 100 milliseconds passes transport parameter validation. At a 5 ms RTT, the lower bound of the
clamp becomes 100 ms while the upper bound is 25 ms, violating the precondition of clamp and
panicking while driving the connection. Both automatically derived and explicitly configured
maximum ACK delays use this calculation.
Sending ACK_FREQUENCY frames is disabled by default, so only endpoints that opt in are affected.
The flaw was corrected in 0.11.18 by computing the delay with explicit minimum and maximum bounds
instead of clamp.
Thanks to @zerox80 for reporting this issue.
See advisory page for additional details.
- Lingua principale
- Rust
- Stelle
- 1
- Fork
- 2
- Merge medio
- 14g 15h
- PR unite (30g)
- 1
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di DiamondLightSource/numtracker
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
DiamondLightSource/numtracker#311 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
DiamondLightSource/numtracker#278 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
DiamondLightSource/numtracker#310 ·
-
Difficoltà 2/5 Meno di un'ora Idoneità per principianti 15/100
DiamondLightSource/numtracker#308 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 58/100
DiamondLightSource/numtracker#304 ·
Tutte le issue di DiamondLightSource/numtracker
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
521xueweihan/HelloGitHub#4023 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
cloudflare/pingora#1055 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno