PT-2026-51090 · Rubygems · Concurrent-Ruby
CVE-2026-54904
·
Publicado
2026-06-17
·
Atualizado
2026-08-05
CVSS v4.0
8.2
Alta
| Vetor | AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
Nome do Software Vulnerável e Versões Afetadas
concurrent-ruby versões anteriores a 1.3.7
Description
A função
Concurrent::AtomicReference#update pode entrar em um loop de repetição ocupado permanente quando o valor atual é Float::NAN. Isso ocorre devido à interação entre AtomicReference#update, que tenta novamente até que compare and set(old value, new value) seja bem-sucedido, e a função numérica compare and set, que verifica se old == old value antes de tentar uma troca atômica. Como a semântica NaN (Not a Number) do Ruby determina que Float::NAN == Float::NAN é sempre falso, a comparação falha todas as vezes, fazendo com que a função avalie repetidamente o bloco do chamador sem retornar. Em serviços que armazenam valores numéricos derivados externamente em um AtomicReference, isso pode levar ao esgotamento da CPU ou travamentos permanentes de requisições e tarefas.Recommendations
Atualize para a versão 1.3.7.
Exploit
Correção
DoS
Infinite Loop
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Concurrent-Ruby