CVE-2026-30951
Published: 10 March 2026
Summary
CVE-2026-30951 is a high-severity SQL Injection (CWE-89) vulnerability in Sequelizejs Sequelize. Its CVSS base score is 7.5 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 5.4th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Threat & Defense at a Glance
Threat & Defense Details
Likely Mitigating ControlsAI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
SQL injection in public-facing Node.js/ORM app enables remote unauthenticated exploitation (T1190) and direct arbitrary queries for database data exfiltration (T1213.006).
NVD Description
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…
more
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.
Deeper analysisAI
CVE-2026-30951 is a SQL injection vulnerability in Sequelize, a Node.js Object-Relational Mapping (ORM) tool. Versions prior to 6.37.8 are affected due to improper handling of unescaped cast types in JSON/JSONB where clause processing. Specifically, the _traverseJSON() function splits JSON path keys on "::" to extract a cast type, which is then interpolated raw into a CAST(... AS <type>) SQL expression, allowing injection of arbitrary SQL. The vulnerability is rated with a CVSS v3.1 base score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N) and is associated with CWE-89: Improper Neutralization of Special Elements used in an SQL Command.
An unauthenticated attacker with the ability to control JSON object keys in a where clause can exploit this vulnerability remotely over the network with low complexity and no user interaction required. By crafting malicious JSON keys containing SQL payloads separated by "::", the attacker can inject arbitrary SQL, enabling data exfiltration from any table in the underlying database.
The official mitigation, as detailed in the Sequelize security advisory (GHSA-6457-6jrx-69cr), is to upgrade to version 6.37.8 or later, where the cast type handling has been fixed to prevent raw interpolation.
Details
- CWE(s)