{"id":"CVE-2026-117680","published":"2026-11-01T14:18:51.500","lastModified":"2026-11-01T14:18:51.500","description":"Improper Check for Unusual or Exceptional Conditions vulnerability in the pattern and patternProperties keywords in lud jsv allows an unauthenticated remote attacker to bypass schema validation via a string that matches a schema regex only after heavy backtracking. JSV.Helpers.RegexExt.bounded_match?/2 runs schema regexes with a backtracking budget but calls :re.run/3 without :report_errors, so a match that exhausts the budget returns the same :nomatch as a real non-match. A key that matches a patternProperties regex is then checked against additionalProperties or not at all, and a string that matches a not subschema with a pattern is accepted. Before the budget existed, Regex.match?/2 failed the same way at Erlang's default match limit.\n\nOnly schemas whose regex explores a catastrophic branch before the branch that matches are affected. The attacker controls the data, not the schema, and linear patterns never exhaust the budget.\n\nThis issue affects jsv: from 0.1.0 before 0.26.2.","cvssScore":null,"cvssSeverity":null,"cvssVector":null,"cwes":["CWE-754"],"vendors":[],"products":[],"references":[{"url":"https://cna.erlef.org/cves/CVE-2026-117680.html","tags":[]},{"url":"https://github.com/lud/jsv/commit/302a5d0803468f81a1cf08e3b67d8b14cee759ca","tags":[]},{"url":"https://github.com/lud/jsv/commit/defdb8a68ac7f218aa5dfe85190d484017cb8817","tags":[]},{"url":"https://github.com/lud/jsv/security/advisories/GHSA-cvmg-hgv6-jqcp","tags":[]},{"url":"https://osv.dev/vulnerability/EEF-CVE-2026-117680","tags":[]}],"exploitRefs":[{"url":"https://github.com/lud/jsv/commit/302a5d0803468f81a1cf08e3b67d8b14cee759ca","tags":[]},{"url":"https://github.com/lud/jsv/commit/defdb8a68ac7f218aa5dfe85190d484017cb8817","tags":[]},{"url":"https://github.com/lud/jsv/security/advisories/GHSA-cvmg-hgv6-jqcp","tags":[]}],"hasPoc":true,"ai":null}