Critical Prototype Pollution Vulnerability in node-deep-extend Package

node-deep-extend Updated 03 Oct 2025

Summary

03/07/2018
N/A
No i
Critical
9.8

UBUNTU-CVE-2018-3750: The utilities function in all versions. Affects node-deep-extend versions 0.4.1-1. No fix is published. How to fix ↓

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

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The node-deep-extend package is a utility module for Node.js that allows for deep merging of objects. It is commonly used in various applications to extend objects with properties from other objects. However, versions up to 0.5.0 are vulnerable to a prototype pollution issue, which can be exploited if an attacker can manipulate the input structure.

Vulnerability Detail

The vulnerability arises from the utilities function in the deep-extend module, which can be tricked into modifying the prototype of the Object. This occurs when an attacker controls part of the structure passed to the function, allowing them to add or modify properties that will exist on all objects. This can lead to severe consequences, including unauthorized access to sensitive data or the execution of malicious code. The CVSS score for this vulnerability is 9.8, indicating a critical level of risk.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary workaround, avoid using the deep-extend module in your application until you can update to a secure version. Additionally, validate and sanitize any input structures that are passed to the utilities function to mitigate the risk of exploitation.

Conclusion

The node-deep-extend package has a critical vulnerability that can lead to prototype pollution, allowing attackers to manipulate object properties. It is crucial to update to the latest version of the package to mitigate this risk. Utilizing tools like Vulert can help monitor for such vulnerabilities in your applications.

See every vulnerability recorded for node-deep-extend →

Share this vulnerability

FAQ

Prototype pollution is a security vulnerability that allows an attacker to manipulate the prototype of built-in objects in JavaScript, potentially leading to unauthorized access or modification of properties.

You can use the Vulert platform to monitor and alert for open-source vulnerabilities in your software. Simply upload your manifest file, such as package-lock.json, to check for vulnerabilities.

Exploitation of this vulnerability can lead to unauthorized access to sensitive data, modification of application behavior, or execution of arbitrary code, posing significant risks to application security.

Yes, you can temporarily avoid using the deep-extend module and validate any input structures to reduce the risk of exploitation until you can update to a secure version.

Detailed information about this vulnerability can be found in the official security notice on GitHub and various security advisory platforms.

Related vulnerabilities

Recent vulnerabilities recorded for node-deep-extend.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. 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