CriticalGHSA-m9jw-237r-gvfvCVE-2019-10752

SQL Injection in sequelize

Published 25 Oct 2019 · Updated 13 Nov 2024

Affected packages

Affected
<4.44.3
Fixed in
4.44.3
Update to the fixed version for your release line, for example:npm install sequelize@4.44.3
Affected
>=5.0.0 <5.15.1
Fixed in
5.15.1
Update to the fixed version for your release line, for example:npm install sequelize@5.15.1

Details

Affected versions of sequelize are vulnerable to SQL Injection. The function sequelize.json() incorrectly formatted sub paths for JSON queries, which allows attackers to inject SQL statements and execute arbitrary SQL queries if user input is passed to the query. Exploitation example:

return User.findAll({
  where: this.sequelize.json("data.id')) AS DECIMAL) = 1 DELETE YOLO INJECTIONS; -- ", 1)
});

Recommendation

If you are using sequelize 5.x, upgrade to version 5.15.1 or later. If you are using sequelize 4.x, upgrade to version 4.44.3 or later.

Is GHSA-m9jw-237r-gvfv in any of your client repos?

Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected sequelize, and gives you the command that fixes it.

References

Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.