Read the docs
TI-2026-39678 Aliases CVE-2026-54906GHSA-6wx8-w4f5-wwcr

concurrent-ruby: ReadWriteLock allows wrong-thread write release and stray read-release counter corruption

Priority MEDIUM 44CWE-414Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
None
Attack complexity
High
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · Low · Low
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.

Summary

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.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.0016 5th percentileScored 2026-11-07
Fix Fixed concurrent-ruby (ruby-concurrency): 1.3.7concurrent-ruby (RubyGems): 1.3.7

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ruby-concurrencyconcurrent-rubybefore 1.3.71.3.7Patch availableCNA
—concurrent-ruby (RubyGems)before 1.3.71.3.7Patch availableGHSA-6wx8-w4f5-wwcr
  • concurrent-ruby Vendorruby-concurrency Affected before 1.3.7 Fixed in 1.3.7 Patch available CNA
  • concurrent-ruby (RubyGems) Vendor— Affected before 1.3.7 Fixed in 1.3.7 Patch available GHSA-6wx8-w4f5-wwcr

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:rubyconcurrency:concurrent_ruby:*:*:*:*:*:ruby:*:*before 1.3.7Vulnerableruby-concurrency
  • cpe:2.3:a:rubyconcurrency:concurrent_ruby:*:*:*:*:*:ruby:*:* Versions before 1.3.7 Vulnerable ·ruby-concurrency

Remediation

  • Fix · CNA concurrent-ruby (ruby-concurrency) Fixed in 1.3.7
  • Fix · GHSA-6wx8-w4f5-wwcr concurrent-ruby (RubyGems) Fixed in 1.3.7 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Low. Red Hat's page for this CVE →

Not affected: 3 products
  • Red Hat 3scale API Management Platform 2
  • Red Hat OpenStack Platform 17.1
  • Red Hat Satellite 6

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-54906
  2. 2026-10-03 Alias added: GHSA-6wx8-w4f5-wwcr

References

  • TI-2026-39676 concurrent-ruby: `AtomicReference#update` livelocks when the stored value is `Float::NAN` CVSS 4.0HIGH 8.2
  • TI-2026-39677 concurrent-ruby: `ReentrantReadWriteLock` read-count overflow grants a write lock without exclusivity CVSS 4.0LOW 2.0

Sources