Skip to content
VulniPulse
Advisory severityMedium5.9Red Hat Linux

Medium [CVE-2026-54904] Denial of Service due to infinite loop in AtomicReference#update

This medium-severity Red Hat Linux advisory covers CVE-2026-54904.

Aggregated and source-linked by VulniPulse. Data sources, validation and limitations.

CVE-2026-54904 Source published Source updated

VulniPulse record published Record updated

CVE-2026-54904
Affected products & platforms
Red Hat LinuxUnclassified
Open source advisory

Summary

concurrent-ruby is a modern concurrency tools for Ruby. Prior to 1.3.7, Concurrent::AtomicReference#update can enter a permanent busy retry loop when the current value is Float::NAN.

The issue is caused by the interaction between AtomicReference#update, which retries until compare_and_set(old_value, new_value) succeeds; Numeric compare_and_set, which checks old == old_value before attempting the underlying atomic swap.; and Ruby NaN semantics, where Float::NAN == Float::NAN is always false.

As a result, once an AtomicReference contains Float::NAN, calling #update repeatedly evaluates the caller's block and never returns. In services that store externally derived numeric values in an AtomicReference, this can cause CPU exhaustion or permanent request/job hangs.

This vulnerability is fixed in 1.3.7. This occurs when the current value is a special 'Not a Number' (Float::NAN) floating-point value, causing the method to repeatedly attempt an operation without success.

This can lead to a Denial of Service (DoS), where the affected application experiences CPU exhaustion or becomes unresponsive. The issue arises when the `AtomicReference#update` method encounters a `Float::NAN` value, leading to an infinite retry loop and potential CPU exhaustion.

Is CVE-2026-54904 exploited?

No exploitation is reported in the sources VulniPulse tracks: CVE-2026-54904 is not in the CISA KEV catalog (checked ) and this advisory does not report exploitation. That is not proof the vulnerability cannot be exploited.

How do I fix CVE-2026-54904?

Upgrade to a fixed release named by Red Hat:

  • 1.3.7

Confirm against the vendor advisory before you patch.

Affected versions
  • < 1.3.7

Official advisory · high-confidence parse· fetched 14 days ago·verify at source

Fixed versions
  • 1.3.7

Official advisory · high-confidence parse· fetched 14 days ago·verify at source

Mitigation checklist

Recommended fix / mitigation
  • The vulnerable `AtomicReference#update` code path is not exercised with externally-derived numeric values, making exploitation not possible in this context. Updating to concurrent-ruby 1.3.7 when available in upstream dependencies will fully resolve this issue.

Official advisory · high-confidence parse· fetched 14 days ago·verify at source

Get an email when Red Hat publishes the next one.

See Red Hat's last 90 days of advisories first. Then choose one product with live alerts free for life, or a free month of real-time alerts on everything with the severity, the fixed version and the vendor's link (card needed, then US$15/month; we email you before the first charge).

Alert me about Red Hat
All Red Hat Linux advisories

iPhone and Android apps · New on the App Store

Monitor future Red Hat Linux CVEs from your phone.

Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 34 official vendor sources and 160+ reviewed platform categories.

Discussion(0)

No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.

Sign in to join the discussion.