CVE-2026-30951
HighCVSS 7.5Exploitation Probability (EPSS)
Low risk34th percentile - higher than 34% of all known CVEs
Summary
Sequelize before version 6.37.8 contains an SQL injection vulnerability via unescaped cast type in JSON/JSONB WHERE clause processing. The _traverseJSON() function splits JSON path keys on '::' to extract a cast type, which is interpolated raw into CAST(... AS <type>) SQL. An attacker who controls JSON object keys can inject arbitrary SQL and exfiltrate data from any table.
Risk Assessment
The organization is at risk of complete database data exfiltration, including sensitive customer information, credentials, or other confidential records, potentially leading to regulatory non-compliance (e.g., GDPR) and loss of trust.
Recommendation
Immediately upgrade Sequelize to version 6.37.8 or later. If an upgrade is not possible, temporarily restrict application access and thoroughly validate user input passed to JSON queries.
Other vulnerabilities in Sequelize
See all- CVE-2015-1369High
SQL injection vulnerability in Sequelize before version 2.0.0-rc7 for Node.js allows remote attackers to execute arbitrary SQL commands via the order parameter.
- CVE-2026-69240Critical
Sequelize, a Node.js ORM tool, is vulnerable to SQL injection in the Oracle dialect. The escape function fails to escape quotes when the value starts with TO_TIMESTAMP or TO_DATE, allowing arbitrary SQL injection.
Original NVD description (English source)
Sequelize is a Node.js ORM tool. Prior to 6.37.8, there is SQL injection via unescaped cast type in JSON/JSONB where clause processing. The _traverseJSON() function splits JSON path keys on :: to extract a cast type, which is interpolated raw into CAST(... AS <type>) SQL. An attacker who controls JSON object keys can inject arbitrary SQL and exfiltrate data from any table. This vulnerability is fixed in 6.37.8.

