GHSA-pcrw-h46h-c93hCriticalCVSS 9.8

Mongoose: sanitizeFilter not applied on countDocuments

Published
November 10, 2026
Last Modified
November 10, 2026

🔗 CVE IDs covered (1)

📋 Description

Impact

sanitizeFilter is Mongoose's mechanism for protecting against query selector injection attacks. In older versions of Mongoose, sanitizeFilter was not applied for countDocuments() queries.

Patches

Patches have been released for all supported Mongoose major release lines. Please upgrade to the following versions depending on which major version of Mongoose applications are using.

  1. ^9.9.2
  2. ^8.24.3
  3. ^7.8.12
  4. ^6.13.11

Workarounds

Middleware:

mongoose.plugin(function() {
  schema.pre('countDocuments', function() {
    // This will always apply `sanitizeFilter` on `countDocuments`
    mongoose.sanitizeFilter(this.getFilter());
  });
});

🎯 Affected products4

  • npm/mongoose:< 6.13.11
  • npm/mongoose:>= 7.0.0, < 7.8.12
  • npm/mongoose:>= 8.0.0, < 8.24.3
  • npm/mongoose:>= 9.0.0, < 9.9.2

🔗 References (11)