{
  "cveId": "CVE-2026-54905",
  "url": "https://patchblox.com/security/cve/CVE-2026-54905",
  "summary": "CVE-2026-54905 is fixed in ruby-concurrent on 1 platform by DEBIAN-CVE-2026-54905 (version 1.3.7-1), released July 3, 2026. It is not reported as exploited. Patch Radar priority: Routine.",
  "title": "concurrent-ruby:  \u0060ReentrantReadWriteLock\u0060 read-count overflow grants a write lock without exclusivity",
  "description": "concurrent-ruby is a modern concurrency tools for Ruby. Prior to 1.3.7, Concurrent::ReentrantReadWriteLock can incorrectly grant a write lock after one thread acquires the read lock 32,768 times. The lock stores a thread\u0027s local read and write hold counts in one integer. The low 15 bits are used for the read hold count, and bit 15 is used as WRITE_LOCK_HELD. After 32,768 reentrant read acquisitions, the local read count crosses into the write-lock bit. try_write_lock then treats the thread as already holding a write lock and returns true without setting the global RUNNING_WRITER bit. This breaks the core mutual-exclusion guarantee: the caller is told it has a write lock, but other threads can still hold or acquire read locks at the same time. This vulnerability is fixed in 1.3.7.",
  "published": "2026-06-24T17:17:29Z",
  "severity": "Low",
  "cvss": 5.5,
  "cvssVector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
  "cwe": "Wrap-around Error",
  "epss": 0.00153,
  "epssPercentile": 0.04469,
  "priority": "Routine",
  "priorityTier": 4,
  "exploited": false,
  "vendorExploited": false,
  "disclosed": false,
  "vendorAdvisory": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-54905",
  "fixes": [
    {
      "platform": "linux",
      "product": "ruby-concurrent",
      "release": "Debian 14",
      "fixedVersion": "1.3.7-1",
      "fix": "DEBIAN-CVE-2026-54905",
      "url": "https://patchblox.com/security/fix/linux/debian-cve-2026-54905",
      "released": "2026-07-03T14:54:39Z"
    }
  ],
  "noFixYet": [],
  "dataAsOf": "2026-11-08T13:06:02Z",
  "attribution": {
    "text": "Data: Patchblox Patch Radar",
    "url": "https://patchblox.com/security/patch-radar",
    "terms": "https://patchblox.com/security/patch-radar/use-the-data"
  }
}