CVE-2026-49839 json
jq --rawfile invalid-state reuse after String too long causes heap-buffer-overflow
published 2026-06-25 4 mo ago modified 2026-10-25 14 d ago also EUVD-2026-39500
- cvss
- 7.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 5%
- public exploits
- 0
- none known
Summary
jq is a command-line JSON processor. Prior to 1.8.2,` jq --rawfile` can turn a handled oversized-string error into invalid-state reuse and a real heap out-of-bounds write in assertion-disabled builds. When jv_load_file(raw=1) reads an attacker-controlled file, it repeatedly appends file chunks to the same jv string accumulator. Once jv_string_append_buf() returns jv_invalid_with_msg("String too long"), the raw-file loop does not stop. If the file contains at least one more byte, the next loop iteration appends a new chunk to an object that is already invalid. With assertions enabled this aborts in jvp_string_ptr(). With assertions disabled, the invalid object is interpreted as a string object and ASan reports heap-buffer-overflow. This vulnerability is fixed in 1.8.2.
Patch / fix
- jqlang jq 1.8.2
- jq Debian 12 1.6-2.1+deb12u2
- jq Debian 13 1.7.1-6+deb13u3
- jq Debian 14 1.8.1-8
debian advisories DEBIAN-CVE-2026-49839
- jq hummingbird 1 1.8.2-0.1.hum1
red hat advisories RHSA-2026:29986
- jq SLES for SAP 15 SP6, SLES for SAP 15 SP5, SLES for SAP 15 SP4 +11 more 1.7.1-150000.3.25.1
- jq Linux Micro 6.0 1.7.1-1.1
- jq Linux Micro 6.1 1.7.1-slfo.1.1_4.1
- jq SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 1.7.1-160000.4.1
suse advisories SUSE-SU-2026:4275-1SUSE-SU-2026:23873-1SUSE-SU-2026:22900-1SUSE-SU-2026:22597-1SUSE-SU-2026:22637-1
- jq openSUSE Leap 16.0 1.7.1-160000.4.1
- jq openSUSE Tumbleweed 1.8.2-1.1
opensuse advisories openSUSE-SU-2026:21318-1openSUSE-SU-2026:11133-1
- jq Alpine 3.24, Alpine 3.23, Alpine 3.22 1.8.2-r0
alpine advisories ALPINE-CVE-2026-49839
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-49839 updated cvss 6.6
jq: jq: Heap out-of-bounds write via oversized raw file processing
-
Red Hat Ansible Automation Platform 2 automation-controller, ansible-automation-platform-26/hub-rhel9, ansible-automation-platform-27/hub-rhel9, ansible-automation-platform-26/controller-rhel9, ansible-automation-platform-27/controller-rhel9 Red Hat Ceph Storage 4 jq Red Hat Enterprise Linux 8 jq Red Hat Enterprise Linux 9 jq Red Hat Enterprise Linux 10 jq Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-8, openshift/ose-rhel-coreos-9affected: workaround, no fix available “Avoid using `jq --rawfile` with untrusted or user-controlled files.”
+1 more productsfewer
Red Hat OpenShift Container Platform 5 openshift/ose-rhel-coreos-9 -
Red Hat Hardened Images jq 1.8.2-0.1.hum1fixed: vendor fix “Avoid using `jq --rawfile` with untrusted or user-controlled files.” RHSA-2026:29986
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 4 mo ago
Exploit prediction
0.17% chance of exploitation in the next 30 days, higher than 5% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/jqlang/jq/security/advisories/GHSA-cfh2-vwfq-qfmm referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.1 | CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H |
Affected products
- jqlang jq
Classification
- Weakness
-
- CWE-787 Out-of-bounds Write
References
-
github.com
/jqlang/jq/security/advisories/GHSA-cfh2-vwfq-qfmm
exploit, vendor-advisory
Sources
- CVE List CVE-2026-49839
- NVD CVE-2026-49839
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.