DEBIAN-CVE-2026-71847
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.
DEBIAN-CVE-2026-71847
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: osv:DEBIAN-CVE-2026-71847
ruby-json
Source reference: /affected/0/package/name
- Affected versions
- 2.15.2+dfsg-1
Source reference:
/affected/0/versions2.18.1+dfsg-1Source reference:
/affected/0/versions2.19.1+dfsg-1Source reference:
/affected/0/versions2.19.2+dfsg-1Source reference:
/affected/0/versions2.19.4+dfsg-1Source reference:
/affected/0/versions2.19.9+dfsg-1Source reference:
/affected/0/versions2.21.1+dfsg-1Source reference:
/affected/0/versions2.21.2+dfsg-1Source reference:
/affected/0/versions2.9.1+dfsg-1Source reference:
/affected/0/versions3.0.2+dfsg-1Source reference:
/affected/0/versions - Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
ruby-json
Source reference: /affected/1/package/name
- Affected versions
- 2.15.2+dfsg-1
Source reference:
/affected/1/versions2.18.1+dfsg-1Source reference:
/affected/1/versions2.19.1+dfsg-1Source reference:
/affected/1/versions2.19.2+dfsg-1Source reference:
/affected/1/versions2.19.4+dfsg-1Source reference:
/affected/1/versions2.19.9+dfsg-1Source reference:
/affected/1/versions2.21.1+dfsg-1Source reference:
/affected/1/versions2.9.1+dfsg-1Source reference:
/affected/1/versions - Fixed versions
- 2.21.2+dfsg-1
Source reference:
/affected/1/ranges - Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "ruby-json",
"purl": "pkg:deb/debian/ruby-json?arch=source&distro=trixie",
"ecosystem": "Debian:13"
},
"versions": [
"2.15.2+dfsg-1",
"2.18.1+dfsg-1",
"2.19.1+dfsg-1",
"2.19.2+dfsg-1",
"2.19.4+dfsg-1",
"2.19.9+dfsg-1",
"2.21.1+dfsg-1",
"2.21.2+dfsg-1",
"2.9.1+dfsg-1",
"3.0.2+dfsg-1"
],
"database_specific": {
"source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-71847.json"
},
"ecosystem_specific": {
"urgency": "not yet assigned"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2.21.2+dfsg-1"
}
]
}
],
"package": {
"name": "ruby-json",
"purl": "pkg:deb/debian/ruby-json?arch=source&distro=forky",
"ecosystem": "Debian:14"
},
"versions": [
"2.15.2+dfsg-1",
"2.18.1+dfsg-1",
"2.19.1+dfsg-1",
"2.19.2+dfsg-1",
"2.19.4+dfsg-1",
"2.19.9+dfsg-1",
"2.21.1+dfsg-1",
"2.9.1+dfsg-1"
],
"database_specific": {
"source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-71847.json"
},
"ecosystem_specific": {
"urgency": "not yet assigned"
}
}
]- Related CVEs
- CVE-2026-71847
Source reference:
/upstream
Publisher severity
high
Source reference: /severity/0/score
- Event
- #81617 · Revision 1
- Added to Heist Feed
- Publisher date