CVE-2018-16491: Prototype Pollution in node.extend

node.extend Updated 02 Oct 2025

Summary

07/02/2019
Yes i
Critical
9.8

CVE-2018-16491: Prototype Pollution in node.extend. Affects node.extend across 2 version ranges.

< 1.1.7 >= 2.0.0, < 2.0.1

Fixed in 1.1.7 or 2.0.1, depending on the release line you run. How to fix ↓

Also tracked for

The same CVE-2018-16491 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

Node.extend is an npm package that provides a utility function for extending objects. It allows developers to merge multiple objects into a single object. This package is commonly used in Node.js applications to simplify object manipulation and composition. However, versions of Node.extend before 1.1.7 or 2.0.1 are vulnerable to prototype pollution.

Vulnerability Detail

Prototype pollution is a vulnerability that occurs when an attacker can inject properties into existing objects. In the case of Node.extend, an attacker can manipulate the prototype of an object by passing a specially crafted payload. This can lead to unexpected behavior and potentially allow the attacker to execute arbitrary code or modify the behavior of the application. The impact of this vulnerability depends on how the extended objects are used within the application.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • < 1.1.7 1.1.7
    npm install node.extend@1.1.7
  • >= 2.0.0, < 2.0.1 2.0.1
    npm install node.extend@2.0.1

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

There is no known workaround for this vulnerability. It is essential to update to the patched versions of the Node.extend package to mitigate the risk of prototype pollution.

Conclusion

Prototype pollution in the Node.extend package can lead to serious security risks. It is crucial for developers to update to the latest patched versions (1.1.7, 2.0.1, or later) to mitigate the vulnerability. For further support on vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for node.extend →

Share this vulnerability

FAQ

Prototype pollution is a vulnerability that allows an attacker to inject properties into existing objects, potentially leading to unexpected behavior or code execution.

The vulnerability in the Node.extend package is due to improper handling of user-supplied input, allowing an attacker to manipulate the prototype of an object.

The consequences of this vulnerability depend on how the extended objects are used within the application. It could lead to code execution, data manipulation, or unauthorized access.

No, only versions before 1.1.7 or 2.0.1 are vulnerable to prototype pollution. It is recommended to update to the latest patched version.

No, there is no known workaround. Updating to the patched versions is the recommended solution.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • < 1.1.7 1.1.7
    npm install node.extend@1.1.7
  • >= 2.0.0, < 2.0.1 2.0.1
    npm install node.extend@2.0.1

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback