{"id":"CVE-2023-22579","aliases":["EUVD-2023-0801","GHSA-vqfx-gj96-3w95"],"status":"published","title":"Sequalize - Unsafe fall-through in getWhereConditions","description":"Due to improper parameter filtering in the sequalize js library, can a attacker peform injection.","severity":{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00809,"percentile":0.57187,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-843"],"published":"2023-02-16T14:11:37Z","modified":"2026-10-28T02:30:30Z","fixes":[{"ecosystem":"npm","package":"sequelize","fixed_in":["6.28.1"],"sources":["ghsa","osv"]},{"ecosystem":"npm","package":"@sequelize/core","fixed_in":["7.0.0-alpha.20"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"sequelize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.28.1"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@sequelize/core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"7.0.0-alpha.20"}]}]},{"source":"osv","ecosystem":"npm","package":"sequelize","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"6.28.1"}]}]},{"source":"osv","ecosystem":"npm","package":"@sequelize/core","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"7.0.0-alpha.20"}]}]}],"products":[{"vendor":"feathers-sequalize","product":"sequelize.js"},{"vendor":"sequelizejs","product":"sequelize"}],"references":[{"url":"https://csirt.divd.nl/CVE-2023-22579","tags":["third-party-advisory","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://csirt.divd.nl/DIVD-2022-00020/","tags":["related","x_transferred","Third Party Advisory","web"]},{"url":"https://github.com/sequelize/sequelize/security/advisories/GHSA-vqfx-gj96-3w95","tags":["web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-22579","tags":["advisory"]},{"url":"https://github.com/sequelize/sequelize/pull/15375","tags":["web"]},{"url":"https://github.com/sequelize/sequelize/pull/15699","tags":["web"]},{"url":"https://github.com/sequelize/sequelize/discussions/15698","tags":["web"]},{"url":"https://github.com/sequelize/sequelize/releases/tag/v6.28.1","tags":["web"]},{"url":"https://github.com/sequelize/sequelize/releases/tag/v7.0.0-alpha.20","tags":["web"]},{"url":"https://github.com/advisories/GHSA-vqfx-gj96-3w95"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/22xxx/CVE-2023-22579.json","tags":["advisory"]},{"url":"https://csirt.divd.nl/DIVD-2022-00020","tags":["web"]},{"url":"https://github.com/sequelize/sequelize","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2023-22579","title":"Sequalize - Unsafe fall-through in getWhereConditions","description":"Due to improper parameter filtering in the sequalize js library, can a attacker peform injection.","status":"published","published":"2023-02-16T14:11:37.235Z","modified":"2025-04-01T04:48:14.582Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical","assessor":"cna"}],"cwes":["CWE-843"],"updated_at":"2026-11-02T14:35:16.126506Z"}],"euvd":[{"id":"EUVD-2023-0801","description":"Due to improper parameter filtering in the sequalize js library, can a attacker peform injection.","status":"published","published":"2023-02-16T14:11:37Z","modified":"2025-04-01T04:48:14Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T20:52:46.2495Z"}],"ghsa":[{"id":"GHSA-vqfx-gj96-3w95","title":"Unsafe fall-through in getWhereConditions","description":"### Impact\n\nProviding an invalid value to the `where` option of a query caused Sequelize to ignore that option instead of throwing an error. \n\nA finder call like the following did not throw an error:\n\n```ts\nUser.findAll({\n  where: new Date(),\n});\n```\n\nAs this option is typically used with plain javascript objects, be aware that this only happens at the top level of this option.\n\n### Patches\n\nThis issue has been patched in [`sequelize@6.28.1`](https://github.com/sequelize/sequelize/pull/15699) \u0026 [`@sequelize/core@7.0.0.alpha-20`](https://github.com/sequelize/sequelize/pull/15375)\n\n### References\n\nA discussion thread about this issue is open at https://github.com/sequelize/sequelize/discussions/15698\n\nCVE:  CVE-2023-22579\nSnyk: https://security.snyk.io/vuln/SNYK-JS-SEQUELIZE-3324090","status":"published","published":"2023-02-23T16:58:56Z","modified":"2023-02-23T16:58:57Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-843"],"updated_at":"2026-11-02T14:36:46.526285Z"}],"nvd":[{"id":"CVE-2023-22579","description":"Due to improper parameter filtering in the sequalize js library, can a attacker peform injection.","status":"published","published":"2023-02-16T15:15:18.46Z","modified":"2026-06-17T05:35:40.2Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical","assessor":"secondary"},{"version":"3.1","score":8.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"}],"cwes":["CWE-843"],"updated_at":"2026-11-02T14:07:46.811196Z"}],"osv":[{"id":"CVE-2023-22579","title":"Sequalize - Unsafe fall-through in getWhereConditions","description":"Due to improper parameter filtering in the sequalize js library, can a attacker peform injection.","status":"published","published":"2023-02-16T14:11:37.235Z","modified":"2026-10-28T02:30:30.630960086Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-843"],"updated_at":"2026-11-02T15:44:30.334753Z"},{"id":"GHSA-vqfx-gj96-3w95","title":"Unsafe fall-through in getWhereConditions","description":"### Impact\n\nProviding an invalid value to the `where` option of a query caused Sequelize to ignore that option instead of throwing an error. \n\nA finder call like the following did not throw an error:\n\n```ts\nUser.findAll({\n  where: new Date(),\n});\n```\n\nAs this option is typically used with plain javascript objects, be aware that this only happens at the top level of this option.\n\n### Patches\n\nThis issue has been patched in [`sequelize@6.28.1`](https://github.com/sequelize/sequelize/pull/15699) \u0026 [`@sequelize/core@7.0.0.alpha-20`](https://github.com/sequelize/sequelize/pull/15375)\n\n### References\n\nA discussion thread about this issue is open at https://github.com/sequelize/sequelize/discussions/15698\n\nCVE:  CVE-2023-22579\nSnyk: https://security.snyk.io/vuln/SNYK-JS-SEQUELIZE-3324090","status":"published","published":"2023-02-23T16:58:56Z","modified":"2023-11-08T04:11:37.032048Z","cvss":[{"version":"3.1","score":9.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-843"],"updated_at":"2026-11-02T15:46:57.694388Z"}]}}
