Prototype Pollution in lutils-merge
Summary
GHSA-f7qw-5pvg-mmwp: Prototype Pollution in lutils-merge. Affects lutils-merge versions < 0.2.6. No fix is published. How to fix ↓
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.
No signup required · Results in about 60 seconds
Background
lutils-merge is an npm package that provides a merge() function for merging objects. It is used to combine properties from multiple objects into a single object. The package is vulnerable to Prototype Pollution, a type of vulnerability where user input can modify an object's prototype, leading to potential security issues. This vulnerability affects all versions of lutils-merge.
Vulnerability Detail
The merge() function in lutils-merge does not properly validate user input, allowing attackers to alter an object's prototype. By manipulating the prototype, an attacker can override properties of all objects in the application. This can lead to various security risks, including Denial of Service attacks or even Remote Code Execution if combined with other vulnerabilities.
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 there is no fix available for lutils-merge, the best workaround is to find a suitable alternative package that provides similar functionality but is not vulnerable to Prototype Pollution. Here is an example of how to use the lodash.merge package as an alternative:
const merge = require('lodash.merge');
const obj1 = { a: 1 };
const obj2 = { b: 2 };
const merged = merge(obj1, obj2);
console.log(merged); // { a: 1, b: 2 }
Conclusion
lutils-merge is a deprecated npm package that is vulnerable to Prototype Pollution. This vulnerability allows attackers to modify an object's prototype, leading to potential security risks. As there is no fix available, it is recommended to use an alternative package, such as lodash.merge, that does not have this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for lutils-merge →
FAQ
Prototype Pollution is a vulnerability that allows an attacker to modify an object's prototype, leading to potential security risks.
The impact of this vulnerability can vary depending on how it is exploited. It can lead to Denial of Service attacks or even Remote Code Execution if combined with other vulnerabilities.
All versions of lutils-merge up to and including 0.2.6 are affected by this vulnerability.
No, the lutils-merge package is deprecated and no fixes are available. It is recommended to use an alternative package.
One recommended alternative is the lodash.merge package, which provides similar functionality but is not vulnerable to Prototype Pollution.