{"id":"CVE-2026-46378","revision":"70e40ada98c946b3a3b6b197c68bcf99","records":[{"revision":"70e40ada98c946b3a3b6b197c68bcf99","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-46378","aliases":[],"title":"Dasel: Denial of service in dasel selector lexer due to infinite loop on unterminated regex literal","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.","state":0,"publishedAt":"2026-07-16T17:54:51.705+00:00","modifiedAt":"2026-07-17T15:06:49.587+00:00","affected":[{"ecosystem":"Vendor product","name":"dasel","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"TomWright\",\n                    \"product\": \"dasel\",\n                    \"versions\": [\n                        {\n                            \"version\": \">= 3.0.0, < 3.10.1\",\n                            \"status\": \"affected\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","score":6.2,"severity":"MEDIUM"}],"references":["https://github.com/TomWright/dasel/security/advisories/GHSA-m6xr-fvfg-5g64","https://github.com/TomWright/dasel/commit/95f8dd3af12958bf6ca2a737b3ec0267280f86ed"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-46378","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-46378","identifiers":["CVE-2026-46378"]},"retained":false,"historicalAffected":[]}],"coverage":[]}