CVE-2026-33210: 
Ruby vulnerability analysis and mitigation

Overview

CVE-2026-33210 is a format string injection vulnerability in the Ruby json gem (RubyGems) that can lead to denial of service or information disclosure. It affects versions 2.14.0 through 2.15.2.0, 2.16.0 through 2.17.1.1, and 2.18.0 through 2.19.1 of the library. The vulnerability is only triggered when the non-default allow_duplicate_key: false parsing option is used to process user-supplied documents; applications that have not explicitly opted into this option are not affected. It was published on March 18, 2026, with a CVSS v3.1 base score of 9.1 (Critical) and a CVSS v4.0 base score of 8.3 (High) (GitHub Advisory, Red Hat Bugzilla).

Technical details

The root cause is classified as CWE-134 (Use of Externally-Controlled Format String): the library passes user-supplied content from a parsed document as a format string argument without proper sanitization when the allow_duplicate_key: false option is active. An unauthenticated remote attacker can craft a malicious JSON/YAML document containing format string specifiers (e.g., %s, %n) that, when parsed by the vulnerable code path, are interpreted by the underlying format string function rather than treated as literal data. No authentication or user interaction is required, though the attack requires the target application to have explicitly enabled the allow_duplicate_key: false option, which constitutes the "Attack Requirements: Present" condition in the CVSS v4.0 scoring (GitHub Advisory, ruby/json Advisory). The vulnerability was reported by DavidKorczynski (GitHub Advisory).

Impact

Successful exploitation can result in two primary outcomes: denial of service (application crash or excessive memory consumption) and information disclosure (leaking sensitive data from process memory). Availability impact is rated High, as an attacker can crash or destabilize the affected Ruby application by submitting a crafted document. Confidentiality impact is rated Low to High depending on scoring version, as format string specifiers may allow reading arbitrary memory contents from the running process, potentially exposing secrets, credentials, or other sensitive runtime data. Integrity is not directly impacted (GitHub Advisory, Red Hat Bugzilla).

Exploitability

As of the time of reporting, there is no public proof-of-concept exploit and no evidence of in-the-wild exploitation (Feedly). The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. The EPSS score is approximately 0.016% (0.000160), placing it in the 12th percentile for exploitation probability within 30 days (GitHub Advisory). No threat actor attribution has been reported.

Mitigation and workarounds

Patches were released on March 18, 2026. Users should upgrade to the following fixed versions based on their current branch: 2.15.2.1 (for the 2.14.x–2.15.x branch), 2.17.1.2 (for the 2.16.x–2.17.x branch), or 2.19.2 (for the 2.18.x and newer branch) (GitHub Advisory). As a workaround, applications can avoid the vulnerability entirely by not using the allow_duplicate_key: false parsing option when processing untrusted input (ruby/json Advisory). Red Hat Enterprise Linux 9 and 10 users should apply the errata RHSA-2026:20596 and RHSA-2026:20606 respectively (Red Hat Bugzilla). IBM API Connect users should consult the relevant IBM support pages for updated packages (IBM Advisory).

Community reactions

Red Hat triaged the vulnerability as High severity and issued errata for both RHEL 9 and RHEL 10 (Red Hat Bugzilla). IBM acknowledged the issue in multiple API Connect advisories (IBM Advisory). The vulnerability received coverage in Linux security news outlets and was noted in weekly threat intelligence digests, though no significant researcher controversy or broad social media discussion has been observed (Feedly).

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

Debian

Fixed

bookworm

ruby-json

Fixed

sid

ruby-json: 2.19.2+dfsg-1

Fixed

trixie

ruby-json

Fixed

Ubuntu

Unknown

bionic (esm-apps)

ruby-json

Unknown

devel

ruby-json

Unknown

focal (esm-apps)

ruby-json

Unknown

jammy

ruby-json

Unknown

jammy (esm-apps)

ruby-json

Unknown

noble

ruby-json

Unknown

noble (esm-apps)

ruby-json

Unknown

resolute

ruby-json

Unknown

RHEL / CentOS

Fixed

OpenShift

Not Affected

RHEL 8

Not Affected

RHEL 9

:appstream:ruby:4.0:9080020260513131334:9/rubygem-mysql2-0:4.0-9080020260513131334.9.src

Fixed

RHEL 10

ruby4.0-0:4.0.3-34.el10_2.src

Fixed

Source: This report was generated using AI

Related Ruby vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-110264CRITICAL10
  • Ruby logoRuby
  • rubygem-rdoc
NoYesOct 22, 2026
GHSA-h7x6-9mqf-vgmxHIGH8.2
  • Ruby logoRuby
  • avo
NoYesOct 22, 2026
GHSA-x65r-p6hf-94hvMEDIUM6.5
  • Ruby logoRuby
  • avo
NoYesOct 22, 2026
GHSA-58rx-96gf-w92xMEDIUM6.1
  • Ruby logoRuby
  • ransack
NoYesOct 25, 2026
CVE-2026-63183LOWN/A
  • Ruby logoRuby
  • omniauth
NoNoOct 22, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Additional Wiz resources

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management