ManageIQ / ManageIQ/httpd_configmap_generator

CVE-2026-54904 (High) detected in concurrent-ruby-1.3.5.gem

Open Beginner friendly
#129 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Mend: dependency security vulnerability
Dominant language
Ruby
Stars
3
Forks
16
PR merge metrics
No merged PRs in 30d

Description

## CVE-2026-54904 - High Severity Vulnerability
Vulnerable Library - concurrent-ruby-1.3.5.gem

Modern concurrency tools including agents, futures, promises, thread pools, actors, supervisors, and more.
Inspired by Erlang, Clojure, Go, JavaScript, actors, and classic concurrency patterns.


Library home page: https://rubygems.org/gems/concurrent-ruby-1.3.5.gem


Path to dependency file: /Gemfile.lock


Path to vulnerable library: /vendor/cache/concurrent-ruby-1.3.5.gem


Dependency Hierarchy:
- manageiq-style-1.5.9.gem (Root Library)
- rubocop-rails-2.29.1.gem
- activesupport-7.2.2.2.gem
- :x: **concurrent-ruby-1.3.5.gem** (Vulnerable Library)

Found in base branch: master



Vulnerability Details



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.

Publish Date: 2026-06-24

URL: CVE-2026-54904



CVSS 3 Score Details (7.5)

Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: High


For more information on CVSS3 Scores, click here.


Suggested Fix

Type: Upgrade version


Release Date: 2026-06-19


Fix Resolution: https://github.com/ruby-concurrency/concurrent-ruby.git - v1.3.7

***
Step up your Open Source Security Game with Mend [here](https://www.whitesourcesoftware.com/full_solution_bolt_github)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with Gemfile.lock and the vendored dependency at vendor/cache/concurrent-ruby-1.3.5.gem, then inspect how the dependency hierarchy brings concurrent-ruby in through activesupport. Update the resolved version to 1.3.7 and refresh the vendored dependency; done means the vulnerable 1.3.5 package is no longer present.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
security
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
75/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.