← Back to CVE Explorer

CVE-2026-54696

Full vulnerability record from the local CVENow database.

Description

Ruby JSON is a JSON implementation for Ruby. Versions 2.9.0 through 2.19.8 are vulnerable to heap buffer overflow when the JSON generator is provided with an oversized streamed object. When streaming to an IO JSON.dump(obj, io) and JSON::State#generate(obj, io) can write past the internal JSON generator buffer when a streamed object contains an attacker-controlled string near 16 KB. Exploitation would result in a reliable process crash/denial of service. This issue has been fixed in version 2.19.9.

Severity
LOW
CVSS score
3.7 (v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-06-30 23:17:28.123000
Last modified
2026-10-25 17:10:00.197000
View original CVE JSON
{
  "id": "CVE-2026-54696",
  "sourceIdentifier": "[email protected]",
  "published": "2026-06-30T23:17:28.123",
  "lastModified": "2026-10-25T17:10:00.197",
  "vulnStatus": "Deferred",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "Ruby JSON is a JSON implementation for Ruby. Versions 2.9.0 through 2.19.8 are vulnerable to heap buffer overflow when the JSON generator is provided with an oversized streamed object. When streaming to an IO JSON.dump(obj, io) and JSON::State#generate(obj, io) can write past the internal JSON generator buffer when a streamed object contains an\nattacker-controlled string near 16 KB. Exploitation would result in a reliable process crash/denial of service. This issue has been fixed in version 2.19.9."
    },
    {
      "lang": "es",
      "value": "Ruby JSON es una implementación de JSON para Ruby. Las versiones 2.9.0 a la 2.19.8 son vulnerables a desbordamiento de búfer de pila cuando el generador de JSON recibe un objeto transmitido sobredimensionado. Al transmitir a un IO, JSON.dump(obj, io) y JSON::State#generate(obj, io) pueden escribir más allá del búfer interno del generador de JSON cuando un objeto transmitido contiene una cadena controlada por el atacante cercana a 16 KB. La explotación resultaría en una caída de proceso fiable/denegación de servicio. Este problema ha sido corregido en la versión 2.19.9."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "ruby",
          "product": "json",
          "versions": [
            {
              "version": ">= 2.9.0, < 2.19.9",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L",
          "baseScore": 3.7,
          "baseSeverity": "LOW",
          "attackVector": "NETWORK",
          "attackComplexity": "HIGH",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "NONE",
          "integrityImpact": "NONE",
          "availabilityImpact": "LOW"
        },
        "exploitabilityScore": 2.2,
        "impactScore": 1.4
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-07-01T13:20:35.390078Z",
          "id": "CVE-2026-54696",
          "options": [
            {
              "exploitation": "poc"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-122"
        },
        {
          "lang": "en",
          "value": "CWE-131"
        },
        {
          "lang": "en",
          "value": "CWE-787"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/ruby/json/releases/tag/v2.19.9",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/ruby/json/security/advisories/GHSA-x2f5-4prf-w687",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/ruby/json/security/advisories/GHSA-x2f5-4prf-w687",
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
    }
  ]
}