p PatchFirst

CVE-2022-24304

CVE-2022-24304 · Mongoose Vulnerable to Prototype Pollution in Schema Object

This page contains facts from public vulnerability sources. Check the original advisory before updating.

### Description Mongoose is a MongoDB object modeling tool designed to work in an asynchronous environment. Affected versions of this package are vulnerable to Prototype Pollution. The `Schema.path()` function is vulnerable to prototype pollution when setting the `schema` object. This vulnerability allows modification of the Object prototype and could be manipulated into a Denial of Service (DoS) attack. ### Proof of Concept ```js // poc.js const mongoose = require('mongoose'); const schema = new mongoose.Schema(); malicious_payload = '__proto__.toString' schema.path(malicious_payload, [String]) x = {} console.log(x.toString()) // crashed (Denial of service (DoS) attack) ``` ### Impact This vulnerability can be manipulated to exploit other types of attacks, such as Denial of service (DoS), Remote Code Execution, or Property Injection.

CVSS 9.8 · Critical · Fix available

Published
Updated

Stack: node

Affected products and versions

  • mongoose npm

    Affected ranges
    • SEMVER: ≥ 6.0.0, < 6.4.6

    Update to 6.4.6

  • mongoose npm

    Affected ranges
    • SEMVER: < 5.13.15

    Update to 5.13.15

Original sources

Check your server →