RUSTSEC-2026-0384: Race condition in `tokio::time::Interval` on Tokio v1.54.0
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 35/100
Línea de trabajo
The issue describes a Tokio timer race and links the fix at tokio-rs/tokio#8692, but it does not identify a stackablectl file or change to make. First check whether stackablectl uses Tokio 1.54.0 and whether that version can be affected; compare its dependency configuration with the advisory’s patched versions. Done means confirming the dependency is unaffected or updating it to a patched version.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Race condition in
tokio::time::Intervalon Tokio v1.54.0
| Details | |
|---|---|
| Package | tokio |
| Version | 1.54.0 |
| URL | https://github.com/tokio-rs/tokio/pull/8692 |
| Date | 2026-10-21 |
| Patched versions | >=1.54.1 |
| Unaffected versions | <1.54.0 |
Summary
On the multi-threaded runtime, there is a race condition between Interval::poll_tick and the runtime's time driver.
This affects Interval only. Sleep and Timeout are not affected.
Details
In Tokio v1.54.0, a race condition between tokio::time::Interval::poll_tick (including .tick().await) and the runtime time driver can drop an internal timer entry without synchronizing with the driver thread that is firing it. This causes a data race and use-after-free on the timer's waker and task state in safe Rust, leading to assertion panics, task reference-count corruption, or heap memory corruption.
This bug was introduced by https://github.com/tokio-rs/tokio/pull/8458, and it was fixed by https://github.com/tokio-rs/tokio/pull/8692.
Impact
This may lead to crashes and use-after-frees in applications using Interval on a multi-threaded runtime.
Since this issue is known to lead to crashes in production systems, the v1.54.0 release of Tokio has been yanked.
Credits
Thank you to creepycode and carabistouille for reporting this privately using the procedure outlined in our security policy. They both reported the issue independently of each other.
See advisory page for additional details.
- Lenguaje dominante
- Rust
- Estrellas
- 11
- Forks
- 5
- Merge medio
- 1 d 6 h
- PR fusionados (30 d)
- 1
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de stackabletech/stackablectl
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
stackabletech/stackablectl#475 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stackabletech/stackablectl#471 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
stackabletech/stackablectl#468 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
stackabletech/stackablectl#456 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
stackabletech/stackablectl#474 ·
Todos los issues de stackabletech/stackablectl
Issues similares
-
yara-x fails to build with rsa 0.10.0: unresolved import rsa::Pkcs1v15SignPosiblemente ocupada @CfirTsabari la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 87/100
VirusTotal/yara-x#865 ·
Los mantenedores suelen responder en 1 día
-
good first issue help wanted program
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
hffgzktbcc-blip/ounce-core#297 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
nautechsystems/nautilus_trader#5631 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
bytecodealliance/rustix#1736 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
longbridge/gpui-kit#3871 ·
Los mantenedores suelen responder en 1 día