CVE-2026-63460
Publiée le 2026-09-17 · Dernière modification le 2026-09-17
Les plateformes de commerce headless Vendure utilisant SQLite (better-sqlite3 ou sqljs) sont vulnérables à une attaque par déni de service. Un attaquant distant non authentifié peut envoyer une expression régulière spécialement conçue via l'API GraphQL publique de la boutique, ce qui bloque la boucle d'événements de Node.js et provoque le plantage de la boutique et de l'API d'administration. Cette attaque est facile à exécuter car elle ne nécessite ni authentification ni interaction de l'utilisateur, bien que les déploiements utilisant PostgreSQL, MySQL ou MariaDB ne soient pas affectés.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
Description officielle du NVD (en anglais)
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.