Description
Dasel is a command-line tool and library for querying, modifying, and transforming data structures. From 3.0.0 until 3.10.1, the selector lexer matchRegexPattern closure in (*Tokenizer).parseCurRune in selector/lexer/tokenize.go loops while tokenizing an unterminated regex literal such as r/ because peekRuneEqual returns false after the end of input, allowing attacker-controlled selector strings to consume CPU indefinitely. This issue is fixed in version 3.10.1.
Published: 2026-07-16
Score: 6.2 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Dasel is a command‑line tool and library for querying, modifying, and transforming data structures. From 3.0.0 until 3.10.1, the selector lexer matchRegexPattern closure in (*Tokenizer).parseCurRune in selector/lexer/tokenize.go loops while tokenizing an unterminated regex literal such as r/ because peekRuneEqual returns false after the end of input, allowing attacker‑controlled selector strings to consume CPU indefinitely. This issue is fixed in version 3.10.1. The flaw is equivalent to CWE‑835 and permits an attacker to trigger a denial of service by supplying a malicious selector string. The vulnerability does not grant code execution or privilege escalation; its effect is limited to exhausting CPU time on the host running Dasel.

Affected Systems

The vulnerability affects the TomWright Dasel project, specifically all releases from 3.0.0 up to and including 3.10.0. Version 3.10.1 contains the fix and no longer contains the infinite‑loop bug.

Risk and Exploitability

The CVSS score of 6.2 indicates a moderate severity. The EPSS score is less than 1%, implying a low probability of widespread exploitation. Dasel is not listed in the CISA KEV catalog. Based on the description, it is inferred that the likely attack vector is an attacker providing a crafted selector string; this could happen through automated processing pipelines or any environment where Dasel is exposed to untrusted. If exploited, the attacker can cause high CPU usage and service disruption, but the impact is limited to the host running Dasel.

Generated by OpenCVE AI on July 31, 2026 at 01:31 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to Dasel version 3.10.1 or later, which removes the infinite loop detection bug.
  • If an upgrade cannot be performed immediately, validate or sanitize selector strings against unterminated regex literals before passing them to Dasel, or otherwise disable regex processing if your use case permits.
  • Monitor system resource usage for unusual CPU consumption patterns that may indicate exploitation of the lexer loop; employ process limits or containers to contain potential denial of service effects.

Generated by OpenCVE AI on July 31, 2026 at 01:31 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-m6xr-fvfg-5g64 Dasel: Denial of service in dasel selector lexer due to infinite loop on unterminated regex literal
History

Fri, 17 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Thu, 16 Jul 2026 20:15:00 +0000

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

Thu, 16 Jul 2026 18:30: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.10.1, the selector lexer matchRegexPattern closure in (*Tokenizer).parseCurRune in selector/lexer/tokenize.go loops while tokenizing an unterminated regex literal such as r/ because peekRuneEqual returns false after the end of input, allowing attacker-controlled selector strings to consume CPU indefinitely. This issue is fixed in version 3.10.1.
Title Dasel: Denial of service in dasel selector lexer due to infinite loop on unterminated regex literal
Weaknesses CWE-835
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-07-17T15:06:49.587Z

Reserved: 2026-05-13T19:53:47.921Z

Link: CVE-2026-46378

cve-icon Vulnrichment

Updated: 2026-07-17T15:06:07.472Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T01:45:06Z

Weaknesses
  • CWE-835

    Loop with Unreachable Exit Condition ('Infinite Loop')