Skip to content
Fencer Vulns
medium 6.2

CVE-2026-46378 json

Dasel: Denial of service in dasel selector lexer due to infinite loop on unterminated regex literal

published 2026-05-19 5 mo ago modified 2026-10-24 15 d ago also GHSA-m6xr-fvfg-5g64 , GO-2026-5493 , EUVD-2026-44994

cvss
6.2
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

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.

Patch / fix

  • go github.com/tomwright/dasel/v3 3.10.1
  • dasel Debian 14 3.11.0-1

debian advisories DEBIAN-CVE-2026-46378

  • govulncheck-vulndb openSUSE Leap 16.0 0.0.20260723T184607-160000.1.1

opensuse advisories openSUSE-SU-2026:21483-1

CISA SSVC

Exploitation
Proof of concept is public
Automatable
no
Technical impact
partial
Assessed
3 mo ago

Exploit prediction

0.16% 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/TomWright/dasel/security/advisories/GHSA-m6xr-fvfg-5g64 referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 6.2 CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
GitHub 3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Affected packages

ecosystem package affected fixed in
go github.com/tomwright/dasel/v3
>=3.0.0, <3.10.1
3.10.1
go github.com/tomwright/dasel
all versions
no fix listed
go github.com/tomwright/dasel/v2
all versions
no fix listed

Affected products

  • TomWright dasel

Classification

Weakness
  • CWE-835 Loop with Unreachable Exit Condition

References

Sources

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.