CVE-2026-54906
Publiée le 2026-06-24 · Dernière modification le 2026-10-25
Les applications Ruby utilisant la gem `concurrent-ruby` (avant la version 1.3.7) sont affectées par une erreur de synchronisation dans la gestion des verrous d'écriture. Un attaquant disposant d'un accès local au système pourrait potentiellement forcer plusieurs threads à écrire simultanément dans les mêmes données ou provoquer le plantage du mécanisme de verrouillage, entraînant une corruption des données ou une instabilité de l'application. Comme cela nécessite la possibilité d'exécuter du code localement ainsi qu'un timing précis, l'exploitation est difficile et le risque est faible pour la plupart des utilisateurs.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
Description officielle du NVD (en anglais)
concurrent-ruby is a modern concurrency tools for Ruby. Prior to 1.3.7, Concurrent::ReadWriteLock#release_write_lock does not verify that the calling thread acquired the write lock. Any thread with access to the lock object can release an active write lock held by another thread. A second writer can then enter its critical section while the first writer is still running. Concurrent::ReadWriteLock#release_read_lock also decrements the shared counter even when no read lock is held. Calling it on a fresh lock changes the counter from 0 to -1, after which normal read acquisition raises Concurrent::ResourceLimitError. This is a synchronization correctness issue in the public Concurrent::ReadWriteLock API. This vulnerability is fixed in 1.3.7.