Skip to content
OpenAdvisories
High · 7.5 CVE-2026-125119 EUVD-2026-120502GHSA-gg4r-jv3p-qx3c

Mongoose: Connection-level sanitizeFilter not applied

Published Nov 9, 2026 · Updated Nov 12, 2026 · Assigned by GitHub_M

Description

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. From 6.0.0 until 6.13.12, 7.8.13, 8.24.7, and 9.11.4, Mongoose stores the connection-level sanitizeFilter option in Connection.config, but Query.prototype._castConditions() and query casting check other option locations and do not read that configuration. An application that enables sanitizeFilter through mongoose.connect() or createConnection() and passes an attacker-controlled object into a query filter therefore receives a connection that reports the defense as enabled while query selector objects remain unsanitized. A crafted password value using a query operator can match an account record without the expected literal password, while global configuration through mongoose.set('sanitizeFilter') and per-query Model.find().sanitizeFilter() remain unaffected. This issue is fixed in versions 6.13.12, 7.8.13, 8.24.7, and 9.11.4.

Affected products

VendorProductAffectedFixed
Automattic mongoose >= 6.0.0, < 6.13.12, >= 7.0.0, < 7.8.13, >= 8.0.0, < 8.24.7, >= 9.0.0, < 9.11.4 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm mongoose >= 6.0.0, < 6.13.12 6.13.12 GHSA-gg4r-jv3p-qx3c
npm mongoose >= 7.0.0, < 7.8.13 7.8.13 GHSA-gg4r-jv3p-qx3c
npm mongoose >= 8.0.0, < 8.24.7 8.24.7 GHSA-gg4r-jv3p-qx3c
npm mongoose >= 9.0.0, < 9.11.4 9.11.4 GHSA-gg4r-jv3p-qx3c

References