Every CVE Search/ Get API key

CVE-2026-73562

Mongoose: Prototype pollution in the update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

6.5 MediumFix available

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
Low

Exploit likelihood

0.50%Up 0.1 points since Aug 14, 2026
90%50%10%1%

What each source reports

CVE List Score used 6.5

Mongoose: Prototype pollution in the update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Record
CVE-2026-73562
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness
CWE-1321
Updated
2026-11-02
EUVDEUVD-2026-58176 6.5

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Record
EUVD-2026-58176
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Updated
2026-11-02
GitHub AdvisoriesGHSA-664h-wqgq-64gw 6.5

Mongoose: Prototype pollution in mongoose update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

Impact

What kind of vulnerability is it? Who is impacted?

Prototype pollution in update casting: passing a user-controlled update to a Mongoose update, like MyModel.updateOne(filter, req.body), can cause Mongoose to set $fullPath and $parentSchemaDocArray on Object.prototype.

Example:

const mongoose = require('mongoose');
console.log('before:', Object.prototype.$fullPath);            // undefined

const User = mongoose.model('User', new mongoose.Schema({ name: String }));
const malicious = JSON.parse('{"$set": {"__proto__.x": "anything"}}');   // attacker-controlled update

const q = User.updateOne({}, {});
try { q._castUpdate(malicious); } catch (e) { /* throws AFTER the pollution side-effect */ }

console.log('after :', Object.prototype.$fullPath);            // "__proto__"
console.log('enumerable:', Object.prototype.propertyIsEnumerable('$fullPath'));  // true
console.log('fresh {}:', ({}).$fullPath);                      // "__proto__"

Patches

Has the problem been patched? What versions should users upgrade to?

9.7.2, 8.24.1. 7.8.10, 6.13.10

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

Check user-controlled updates for own __proto__ properties before passing to Mongoose

References

Are there any links users can visit to find out more?

Record
GHSA-664h-wqgq-64gw
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness
CWE-1321
Updated
2026-11-02
NVD 6.5

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Record
CVE-2026-73562
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness
CWE-1321
Updated
2026-11-02
OSV 6.5

Mongoose: Prototype pollution in the update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Record
CVE-2026-73562
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness
CWE-1321
Updated
2026-11-02
OSVGHSA-664h-wqgq-64gw 6.5

Mongoose: Prototype pollution in mongoose update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

Impact

What kind of vulnerability is it? Who is impacted?

Prototype pollution in update casting: passing a user-controlled update to a Mongoose update, like MyModel.updateOne(filter, req.body), can cause Mongoose to set $fullPath and $parentSchemaDocArray on Object.prototype.

Example:

const mongoose = require('mongoose');
console.log('before:', Object.prototype.$fullPath);            // undefined

const User = mongoose.model('User', new mongoose.Schema({ name: String }));
const malicious = JSON.parse('{"$set": {"__proto__.x": "anything"}}');   // attacker-controlled update

const q = User.updateOne({}, {});
try { q._castUpdate(malicious); } catch (e) { /* throws AFTER the pollution side-effect */ }

console.log('after :', Object.prototype.$fullPath);            // "__proto__"
console.log('enumerable:', Object.prototype.propertyIsEnumerable('$fullPath'));  // true
console.log('fresh {}:', ({}).$fullPath);                      // "__proto__"

Patches

Has the problem been patched? What versions should users upgrade to?

9.7.2, 8.24.1. 7.8.10, 6.13.10

Workarounds

Is there a way for users to fix or remediate the vulnerability without upgrading?

Check user-controlled updates for own __proto__ properties before passing to Mongoose

References

Are there any links users can visit to find out more?

Record
GHSA-664h-wqgq-64gw
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L
Weakness
CWE-1321
Updated
2026-11-02
Show 8 moreShow less
OSVBIT-mongoose-2026-73562 No score

Mongoose: Prototype pollution in the update casting via __proto__-prefixed dotted path (Schema._getSchema/path getter)

Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Prior to 6.13.10, 7.8.10, 8.24.1, and 9.7.2, passing a user-controlled update such as MyModel.updateOne(filter, req.body) can exploit Mongoose update casting with a proto.x dotted path under $set. Schema.prototype.path and Schema.prototype._getPathType can treat inherited properties of schema.paths and schema.nested as schema types, allowing the casting process to set $fullPath and $parentSchemaDocArray on Object.prototype before throwing. This prototype pollution makes those properties visible on newly created objects and can cause application integrity and availability impacts. This issue is fixed in versions 6.13.10, 7.8.10, 8.24.1, and 9.7.2.

Record
BIT-mongoose-2026-73562
Updated
2026-11-02
OSVCLSA-2026-1785380878 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 9.6.2-tuxcare.1.

Record
CLSA-2026-1785380878
Updated
2026-11-02
OSVCLSA-2026-1789641939 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 9.6.2-tuxcare.2.

Record
CLSA-2026-1789641939
Updated
2026-11-02
OSVCLSA-2026-1789641946 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 7.8.8-tuxcare.4.

Record
CLSA-2026-1789641946
Updated
2026-11-02
OSVCLSA-2026-1789645446 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 6.12.2-tuxcare.5.

Record
CLSA-2026-1789645446
Updated
2026-11-02
OSVCLSA-2026-1789647573 No score

TuxCare security update for mongoose (2 CVEs)

TuxCare rebuilt mongoose to address 2 CVEs. Fixed in 5.13.23-tuxcare.5.

Record
CLSA-2026-1789647573
Updated
2026-11-02
OSVCLSA-2026-1792188893 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 9.7.1-tuxcare.1.

Record
CLSA-2026-1792188893
Updated
2026-11-02
OSVCLSA-2026-1792475862 No score

TuxCare security update for mongoose (1 CVE)

TuxCare rebuilt mongoose to address 1 CVE. Fixed in 9.6.3-tuxcare.1.

Record
CLSA-2026-1792475862
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
mongoose
npm
before 6.13.10
6.13.10
mongoose
npm
7.0.0 up to 7.8.10
7.8.10
mongoose
npm
8.0.0 up to 8.24.1
8.24.1
mongoose
npm
9.0.0 up to 9.7.2
9.7.2
mongoose
Bitnami
before 6.13.10, 7.0.0 up to 7.8.10, 8.0.0 up to 8.24.1, 9.0.0 up to 9.7.2
6.13.107.8.108.24.19.7.2
mongoose
TuxCare:npm
9.6.2-tuxcare.0 up to 9.6.2-tuxcare.1, plus listed versions
9.6.2
9.6.2-tuxcare.1
mongoose
TuxCare:npm
9.6.2-tuxcare.0 up to 9.6.2-tuxcare.2, plus listed versions
9.6.29.6.2-tuxcare.1
9.6.2-tuxcare.2
mongoose
TuxCare:npm
7.8.8-tuxcare.0 up to 7.8.8-tuxcare.4, plus listed versions
7.8.87.8.8-tuxcare.17.8.8-tuxcare.27.8.8-tuxcare.3
7.8.8-tuxcare.4
mongoose
TuxCare:npm
6.12.2-tuxcare.0 up to 6.12.2-tuxcare.5, plus listed versions
6.12.26.12.2-tuxcare.16.12.2-tuxcare.26.12.2-tuxcare.36.12.2-tuxcare.4
6.12.2-tuxcare.5
mongoose
TuxCare:npm
5.13.23-tuxcare.0 up to 5.13.23-tuxcare.5, plus listed versions
5.13.235.13.23-tuxcare.15.13.23-tuxcare.25.13.23-tuxcare.35.13.23-tuxcare.4
5.13.23-tuxcare.5
mongoose
TuxCare:npm
9.7.1-tuxcare.0 up to 9.7.1-tuxcare.1, plus listed versions
9.7.1
9.7.1-tuxcare.1
mongoose
TuxCare:npm
9.6.3-tuxcare.0 up to 9.6.3-tuxcare.1, plus listed versions
9.6.3
9.6.3-tuxcare.1

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-73562 is a medium vulnerability (CVSS 6.5) in Automattic Mongoose, published July 24, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.50%, the 43rd percentile. Fixed in mongoose 6.13.10.

References

Show 9 moreShow less
MoveEnter Open