CVE-2026-63460 json
Vendure: Unauthenticated ReDoS via `regex` filter on SQLite backends
published last mo. modified last mo. also EUVD-2026-81667 , GHSA-jgm3-qmp2-c4p7
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 49%
- public exploits
- 0
- none known
Summary
Vendure is an open-source headless commerce platform. Prior to 3.6.5, the public Shop GraphQL API allows an unauthenticated caller to supply a catastrophically backtracking pattern through StringOperators.regex. packages/core/src/service/helpers/list-query-builder/parse-filter-params.ts passes the raw pattern to the REGEXP implementation registered by packages/core/src/service/helpers/list-query-builder/list-query-builder.ts, and better-sqlite3 and sqljs evaluate it synchronously in the Node.js event loop. ShopProductsResolver.products is publicly reachable, so one nested-quantifier pattern can block request processing and make the storefront and admin API unavailable, while repeated requests can sustain denial of service. PostgreSQL and MySQL or MariaDB deployments do not execute this regular expression in the Node.js event loop. This issue is fixed in version 3.6.5.
Patch / fix
- npm @vendure/core 3.6.5
- vendure vendure 3.6.5
Is CVE-2026-63460 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.61% chance of exploitation in the next 30 days, higher than 49% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/vendurehq/vendure/security/advisories/GHSA-jgm3-qmp2-c4p7 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/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 |
|---|---|---|---|
| npm | @vendure/core | <3.6.5 |
3.6.5 |
Affected products
- vendurehq vendure
Classification
- Weakness
-
- CWE-1333 Inefficient Regular Expression Complexity
References
-
github.com
/vendurehq/vendure/commit/f74cbbb0b9a50b5b0131822835fe7ee9b71b42c9
web
-
github.com
/vendurehq/vendure/security/advisories/GHSA-jgm3-qmp2-c4p7
exploit, web
-
github.com
/vendurehq/vendure/releases/tag/v3.6.5
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-63460
advisory
-
github.com
/vendurehq/vendure
package
Sources
- CVE List CVE-2026-63460
- GitHub Advisory GHSA-jgm3-qmp2-c4p7
- NVD CVE-2026-63460
Fencer Intel 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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.