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.
CVE-2026-71847
This high-severity CVE scores 8.7 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.3%, top 83% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 8.7
- EG Score
- 8.7(medium)
- EG Risk
- 70(Attend)EG Risk 70/100SSVC: Attend
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity87% × 45%Exploitation40% × 40%Automatability100% × 15%Action: Remediate soon — notable exploitation risk. - EPSS PROB
- 0%
- EPSS %ILE
- 17%
- KEV
- Not listed
Published
August 7, 2026
Last Modified
August 7, 2026
Advisory Details (1)
Auto-updated Aug 7, 2026JSON::ResumableParser#partial_value dereferences a freed input buffer and crashes on truncated duplicate-key streams · Advisory · ruby/json · GitHub
https://github.com/ruby/json/security/advisories/GHSA-9hj4-r449-hfvcVendor Advisories for CVE-2026-71847(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Affected Packages
(5 across 5 ecosystems)
Debian:11(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| ruby-json | 2.15.2+dfsg-1 ... 2.9.1+dfsg-1 (15 versions) | — | — |
Debian:12(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| ruby-json | 2.15.2+dfsg-1 ... 2.9.1+dfsg-1 (11 versions) | — | — |
Debian:13(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| ruby-json | 2.15.2+dfsg-1 ... 2.9.1+dfsg-1 (8 versions) | — | — |
Debian:14(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| ruby-json | 2.15.2+dfsg-1 ... 2.9.1+dfsg-1 (8 versions) | — | — |
RubyGems(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| json | 2.20.0, 2.21.0, 2.21.1 | 2.21.2 | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 16× in last 7d / 32× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-08-21 03:27 UTCEG score recompute
- 2026-08-20 22:56 UTCEPSS rescore
- 2026-08-20 00:04 UTCEG score recompute
- 2026-08-19 17:04 UTCEPSS rescore
- 2026-08-18 21:45 UTCEG score recompute
- 2026-08-18 13:49 UTCEPSS rescore
- 2026-08-18 13:49 UTCEPSS rescore
- 2026-08-17 19:24 UTCEG score recompute
- 2026-08-17 13:47 UTCEPSS rescore
- 2026-08-16 17:00 UTCEG score recompute
- 2026-08-16 14:56 UTCEPSS rescore
- 2026-08-16 14:56 UTCEPSS rescore
- 2026-08-16 03:51 UTCEG score recompute
- 2026-08-16 02:15 UTCEPSS rescore
- 2026-08-15 01:32 UTCEG score recompute
- 2026-08-15 01:31 UTCEPSS rescore
- 2026-08-13 23:13 UTCEG score recompute
- 2026-08-13 22:00 UTCEPSS rescore
- 2026-08-12 20:54 UTCEG score recompute
- 2026-08-12 13:51 UTCEPSS rescore
- 2026-08-11 18:36 UTCEG score recompute
- 2026-08-11 05:27 UTCEG score recompute
- 2026-08-11 00:00 UTCEPSS rescore
- 2026-08-09 14:00 UTCEG score recompute
- 2026-08-09 13:47 UTCEPSS rescore
Show 7 moreShow fewer
- 2026-08-09 00:51 UTCEG score recompute
- 2026-08-08 16:37 UTCEPSS rescore
- 2026-08-07 22:33 UTCEG score recompute
- 2026-08-07 21:22 UTCEG score recompute
- 2026-08-07 19:28 UTCEG score recompute
- 2026-08-07 18:47 UTCEG score recompute
- 2026-08-07 18:47 UTCMITRE cvelistV5first tracked
Related CVEs(same CWE)
Frequently asked(5)
What is CVE-2026-71847?
When was CVE-2026-71847 disclosed?
Is CVE-2026-71847 actively exploited?
What is the CVSS score of CVE-2026-71847?
How do I remediate CVE-2026-71847?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-71847
Is Your Infrastructure Affected by CVE-2026-71847?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.