AUGUST 16, 2026
Live Feed
Back to database
Case File

CVE-2026-71847

HIGH · CVSS 8.7 EPSS 0.25% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-08-07 · Last synced 2026-08-16

CyberRota Analysis

AI-Generated

The Ruby JSON library versions 2.20.0 to 2.21.2 are vulnerable due to a heap-use-after-free condition caused by dereferencing stale pointers in the JSON::ResumableParser when handling incomplete JSON objects with duplicate keys. This vulnerability can lead to application crashes, potentially allowing an attacker to disrupt service by supplying malicious JSON data. Organizations using affected versions of Ruby's JSON library should prioritize upgrading to version 2.21.2 to mitigate this high-severity risk.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

GitHub PoC Links

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-71847
Severity
HIGH
CVSS
8.7
EPSS
0.25%

Original NVD Description

Ruby JSON is a JSON implementation for Ruby. From 2.20.0 until 2.21.2, Ruby's JSON native C extension clears the consumed JSON::ResumableParser input buffer but leaves state.start, state.cursor, and state.end pointing into released storage. When partial_value reconstructs an incomplete object containing duplicate keys, the duplicate-key warning path calls cursor_position, which dereferences those stale pointers. This results in a heap-use-after-free and can terminate the Ruby process. An attacker who can supply JSON stream data to an application using JSON::ResumableParser may cause process termination when the application calls partial_value on incomplete attacker-controlled input containing duplicate object keys. This issue has been fixed in version 2.21.2.