Security Resilience

CVE-2023-25813

SQLi in Sequelizejs Sequelize ≤ 6.19.1

Public PoCSQLi
Published
22 February 2023
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 10.0
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
EPSS Score 0.014 73th percentile
Risk Priority 80 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-25813 is a critical-severity SQL Injection (CWE-89) vulnerability in Sequelizejs Sequelize. Its CVSS base score is 10.0 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Protocol or Service Impersonation (T1001.003); ranked in the top 27% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

Sequelize, a Node.js object-relational mapping library, contains a SQL injection vulnerability in all versions prior to 6.19.1. The flaw arises because parameters supplied through the replacements mechanism are not properly escaped before being incorporated into queries, allowing arbitrary SQL injection when replacements are used together with the where option.

An unauthenticated remote attacker can supply crafted replacement values in application queries that reach the database layer, resulting in full read, write, or modification of database contents depending on the affected queries and database privileges. The issue carries a CVSS score of 10.0 and is tracked under CWE-89.

Official advisories and the 6.19.1 release notes direct users to upgrade immediately. Where an upgrade is not feasible, applications must avoid combining the replacements feature with the where clause in the same query. The associated EPSS score remains low, with a modest peak of 0.0508 recorded well after disclosure.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Sequelize is a Node.js ORM tool. In versions prior to 6.19.1 a SQL injection exploit exists related to replacements. Parameters which are passed through replacements are not properly escaped which can lead to arbitrary SQL injection depending on the specific…

more

queries in use. The issue has been fixed in Sequelize 6.19.1. Users are advised to upgrade. Users unable to upgrade should not use the `replacements` and the `where` option in the same query.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1001.003 Protocol or Service Impersonation Command And Control
Adversaries may impersonate legitimate protocols or web service traffic to disguise command and control activity and thwart analysis efforts.
T1003 OS Credential Dumping Credential Access
Adversaries may attempt to dump credentials to obtain account login and credential material, normally in the form of a hash or a clear text password.
T1003.001 LSASS Memory Credential Access
Adversaries may attempt to access credential material stored in the process memory of the Local Security Authority Subsystem Service (LSASS).
T1003.002 Security Account Manager Credential Access
Adversaries may attempt to extract credential material from the Security Account Manager (SAM) database either through in-memory techniques or through the Windows Registry where the SAM database is stored.
T1003.003 NTDS Credential Access
Adversaries may attempt to access or create a copy of the Active Directory domain database in order to steal credential information, as well as obtain other information about domain members such as devices, users, and access rights.
T1005 Data from Local System Collection
Adversaries may search local system sources, such as file systems, configuration files, local databases, virtual machine files, or process memory, to find files of interest and sensitive data prior to Exfiltration.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2024-0470Shared CWE-89
CVE-2023-25047Shared CWE-89
CVE-2023-4037Shared CWE-89
CVE-2024-4808Shared CWE-89
CVE-2023-4443Shared CWE-89
CVE-2024-9091Shared CWE-89
CVE-2023-37270Shared CWE-89
CVE-2023-6063Shared CWE-89
CVE-2023-6311Shared CWE-89
CVE-2024-7639Shared CWE-89

Affected Assets

sequelizejs
sequelize
≤ 6.19.1

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

—

Detect
Catch it (NIST detect / respond)

—

Harden
Shrink the surface (DISA STIG)

—

Validate
Prove the fix (OWASP ASVS)
  • V6.2.5

Likely Mitigating Controls AI

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.

addresses: CWE-89

Penetration testing uses SQL injection payloads against database interfaces, identifying and supporting fixes for SQL injection weaknesses.

addresses: CWE-89

Validates query inputs to prevent SQL syntax or command manipulation.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
blocks

Secure SDLC practices directly target injection flaws during coding and review so largely prevent CWE-89 introduction, yet the single broad outcome leaves residual risk from incomplete neutralization techniques or missed edge cases.

PR.AT-02 partial match
blocks

Training raises developer awareness of SQLi risks and can reduce introduction likelihood (partial) but removes none of the actual coding flaw's risk by itself since technical neutralization is still required.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

removes
removes
removes
removes
blocks

A.5.6 only improves knowledge flow, awareness of threats/patches and access to specialist advice; it does not stop SQL injection from being exploitable in code that still contains the flaw.

References