Reference page — cumulative record through Sunday, October 4, 2026 UTC. Reference pages update as the archive grows; only dated daily editions are immutable pages of record.
CVE-2026-39956
jqlang jq — jq: Missing runtime type checks for _strindices lead to crash and limited memory disclosure
AV AC PR UI S C I A CVSS EPSS %ile KEV
L L N R U L N H 6.1 .0016 5.1 —
AFFECTED
Product Versions Fixed
jq < 1.8.2 – —
TIMELINE
Apr 7 Reserved by GitHub_M
Apr 13 Published (CNA: GitHub_M)
Sep 4 EXPLOIT PUBLISHED — CVE-2026-39956 (jqlang jq). Public exploit reference added.
Description
jq is a command-line JSON processor. Prior to version 1.8.2, the _strindices builtin in jq's src/builtin.c passes its arguments directly to jv_string_indexes() without verifying they are strings, and jv_string_indexes() in src/jv.c relies solely on assert() checks that are stripped in release builds compiled with -DNDEBUG. This allows an attacker to crash jq trivially with input like _strindices(0), and by crafting a numeric value whose IEEE-754 bit pattern maps to a chosen pointer, achieve a controlled pointer dereference and limited memory read/probe primitive. Any deployment that evaluates untrusted jq filters against a release build is vulnerable. This issue has been patched in commit fdf8ef0f0810e3d365cdd5160de43db46f57ed03, which is part of version 1.8.2.
Lifecycle
Complete event history — 3 events, chronological
| Date | Event | Detail |
| April 7, 2026 | Reserved | Reserved by GitHub_M |
| April 13, 2026 | Published | Published (CNA: GitHub_M) |
| September 4, 2026 | EXPLOIT PUBLISHED | EXPLOIT PUBLISHED — CVE-2026-39956 (jqlang jq). Public exploit reference added. |
Affected
Affected products and packages — 1 row
| Vendor | Product / Package | Ecosystem | Version introduced | Fixed |
| jqlang | jq | — | < 1.8.2 | — |
About this page
This is a reference page, not a dated page of record. It assembles the complete lifecycle of CVE-2026-39956 from the CVE Program record, NVD enrichment, the CISA KEV catalog, EPSS, and OSV advisories. The box score's numbers (CVSS, EPSS, KEV status) are current as of Sunday, October 4, 2026 UTC and are re-derived as the archive grows; only dated daily editions are immutable pages of record. The authoritative source for this identifier is cve.org.