Description
Dasel is a command-line tool and library for querying, modifying, and transforming data structures. From 3.0.0 until 3.11.1, parsing/json/json_reader.go decodeValue, decodeObject, and decodeArray, and parsing/xml/reader.go parseElement, recurse once per input nesting level without a depth guard. Deeply nested attacker-controlled JSON or XML supplied through parsing.Format(...).NewReader(...).Read(data), the command-line interface, or the parse selector function can exhaust the Go goroutine stack and raise an unrecoverable fatal error that terminates the entire process. The XML input-size limit does not prevent depth exhaustion, and defer or recover cannot intercept the failure. This issue is fixed in version 3.11.1.
Published: 2026-09-21
Score: 6.2 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service (process crash due to stack overflow)
Action: Patch
AI Analysis

Impact

Dasel, a command‑line tool and library for manipulating structured data, contains an unbounded recursion flaw in its JSON and XML parsing routines in versions 3.0.0 through 3.11.1. The decoder recurses once per nesting level without a depth guard, so a deeply nested attacker‑controlled JSON or XML document can exhaust the Go goroutine stack. When the stack overflows, the Go runtime aborts with an unrecoverable fatal error that terminates the entire dasel process, causing a denial‑of‑service condition for any service or batch job that relies on dasel.

Affected Systems

The vulnerability affects the TomWright:dasel product, specifically all releases from 3.0.0 up to and including 3.11.1. Both the command‑line interface and the underlying library functions that accept custom JSON or XML inputs are impacted when the recursive parsing is invoked through parsing.Format(...).NewReader(...).Read(data) or the parse selector function.

Risk and Exploitability

The CVSS score of 6.2 indicates moderate severity. EPSS data is not available and the vulnerability is not listed in the CISA KEV catalog. From the description, the likely attack vector is the delivery of a deeply nested malicious JSON or XML document to dasel via its CLI or library API; no elevated privileges or additional conditions are needed. When triggered, the stack overflow causes the dasel process to terminate, exposing any dependent services to a denial‑of‑service impact.

Generated by OpenCVE AI on September 21, 2026 at 19:25 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade dasel to version 3.11.1 or later, which incorporates a recursion depth guard.
  • Validate or sanitize any JSON or XML input before passing it to dasel, limiting nesting depth to protect against stack overflow.
  • If an upgrade is not immediately possible, isolate dasel in a restricted environment or restrict its use to trusted data sources to mitigate potential DoS impact.

Generated by OpenCVE AI on September 21, 2026 at 19:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-cqxr-jxr2-85pq Dasel: Unbounded recursion in JSON and XML readers causes unrecoverable stack-overflow DoS
History

Mon, 21 Sep 2026 21:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 21 Sep 2026 18:45:00 +0000

Type Values Removed Values Added
First Time appeared Tomwright
Tomwright dasel
Vendors & Products Tomwright
Tomwright dasel

Mon, 21 Sep 2026 17:00:00 +0000

Type Values Removed Values Added
Description Dasel is a command-line tool and library for querying, modifying, and transforming data structures. From 3.0.0 until 3.11.1, parsing/json/json_reader.go decodeValue, decodeObject, and decodeArray, and parsing/xml/reader.go parseElement, recurse once per input nesting level without a depth guard. Deeply nested attacker-controlled JSON or XML supplied through parsing.Format(...).NewReader(...).Read(data), the command-line interface, or the parse selector function can exhaust the Go goroutine stack and raise an unrecoverable fatal error that terminates the entire process. The XML input-size limit does not prevent depth exhaustion, and defer or recover cannot intercept the failure. This issue is fixed in version 3.11.1.
Title Dasel: Unbounded recursion in JSON and XML readers causes unrecoverable stack-overflow DoS
Weaknesses CWE-674
References
Metrics cvssV3_1

{'score': 6.2, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-21T20:45:17.805Z

Reserved: 2026-07-02T16:50:27.887Z

Link: CVE-2026-59168

cve-icon Vulnrichment

Updated: 2026-09-21T19:40:36.733Z

cve-icon NVD

Status : Deferred

Published: 2026-09-21T17:17:36.500

Modified: 2026-09-24T21:25:27.050

Link: CVE-2026-59168

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-21T19:30:15Z

Weaknesses