Critical SQLi in Vendure: Unauthenticated Remote Code Execution Risk

Critical SQLi in Vendure: Unauthenticated Remote Code Execution Risk

The National Vulnerability Database has disclosed CVE-2026-40887, a critical SQL injection vulnerability in Vendure, an open-source headless commerce platform. This flaw, present in versions 1.7.4 up to 2.3.4, 3.5.7, and 3.6.2, allows unauthenticated attackers to execute arbitrary SQL commands against the underlying database via the Vendure Shop API. The vulnerability stems from direct interpolation of a user-controlled query string parameter into a raw SQL expression without proper sanitization or parameterization. All supported database backends—PostgreSQL, MySQL/MariaDB, and SQLite—are affected.

While the Admin API is also vulnerable, it requires prior authentication, significantly limiting its attack surface compared to the publicly exposed Shop API. The National Vulnerability Database indicates that patches are available in versions 2.3.4, 3.5.7, and 3.6.2. For organizations unable to upgrade immediately, Vendure offers a hotfix that validates the languageCode input using RequestContextService.getLanguageCode, effectively blocking injection payloads before they reach the database. This hotfix replaces the existing method in packages/core/src/service/helpers/request-context/request-context.service.ts.

This isn’t just a data breach risk; a successful SQL injection, especially unauthenticated, can lead to full system compromise, data exfiltration, or even remote code execution depending on the database configuration and underlying OS. For e-commerce platforms, this is catastrophic. Attackers will prioritize targets running vulnerable versions, looking for quick wins to gain persistence and extract sensitive customer and financial data. The CVSS score of 9.1 (Critical) underscores the severity and ease of exploitation.

What This Means For You

  • If your organization uses Vendure, prioritize patching to versions 2.3.4, 3.5.7, or 3.6.2 immediately to mitigate CVE-2026-40887. If immediate upgrade isn't feasible, deploy the provided hotfix for `RequestContextService.getLanguageCode`. Audit your Vendure logs for any unusual SQL queries or unauthenticated access attempts, especially on the Shop API endpoints.

Related ATT&CK Techniques

🛡️ Detection Rules

3 rules · 6 SIEM formats

3 detection rules auto-generated for this incident, mapped to MITRE ATT&CK. Sigma YAML is free — export to any SIEM format via the Intel Bot.

critical T1190 Initial Access

CVE-2026-40887: Vendure Unauthenticated SQL Injection via Shop API

Sigma YAML — free preview
✓ Sigma · Splunk SPL Sentinel KQL Elastic QRadar AQL Wazuh Export via Bot →

Indicators of Compromise

IDTypeIndicator
CVE-2026-40887 SQLi Vendure Shop API versions 1.7.4 up to 2.3.3, 3.5.6, and 3.6.1
CVE-2026-40887 SQLi Vendure Admin API versions 1.7.4 up to 2.3.3, 3.5.6, and 3.6.1 (requires authentication)
CVE-2026-40887 SQLi Vulnerable component: user-controlled query string parameter interpolated directly into raw SQL expression
CVE-2026-40887 SQLi Hotfix: Validate `languageCode` input using `RequestContextService.getLanguageCode` in `packages/core/src/service/helpers/request-context/request-context.service.ts`
Source & Attribution
Source PlatformNVD
ChannelNational Vulnerability Database
PublishedApril 21, 2026 at 23:17 UTC

This content was AI-rewritten and enriched by Shimi's Cyber World based on the original source. All intellectual property rights remain with the original author.

Believe this infringes your rights? Submit a takedown request.

Related Posts

HKUDS OpenHarness Default Config Exposes Systems (CVE-2026-6823)

CVE-2026-6823 — HKUDS OpenHarness prior to PR #147 remediation contains an insecure default configuration vulnerability where remote channels inherit allow_from = ["*"] permitting arbitrary remote...

vulnerabilityCVEhigh-severitycwe-276
/SCW Vulnerability Desk /HIGH /8.2 /⚑ 3 IOCs /⚙ 3 Sigma

Critical AVideo XSS Vulnerability Exposes Admin Settings

CVE-2026-40925 — WWBN AVideo is an open source video platform. In versions 29.0 and prior, `objects/configurationUpdate.json.php` (also routed via `/updateConfig`) persists dozens of global site...

vulnerabilityCVEhigh-severitycwe-352
/SCW Vulnerability Desk /HIGH /8.3 /⚑ 5 IOCs /⚙ 3 Sigma

Critical RCE in AVideo YPTSocket Plugin: Unauthenticated Account Takeover

CVE-2026-40911 — WWBN AVideo is an open source video platform. In versions 29.0 and prior, the YPTSocket plugin's WebSocket server relays attacker-supplied JSON message bodies...

vulnerabilityCVEcriticalhigh-severitycwe-94
/SCW Vulnerability Desk /CRITICAL /10 /⚑ 2 IOCs /⚙ 3 Sigma