Utile Prototype Pollution Vulnerability Leading to Denial-of-Service

Vulnerability

A prototype pollution vulnerability has been identified in the 'utile' library, specifically in version 0.3.0. The issue arises in the 'lib.createPath' function, where attackers can send a crafted payload to manipulate properties within the global prototype chain. This exploitation can cause a denial-of-service condition and potentially lead to other injection-based attacks, depending on how the library is used within the application. For example, if the polluted property affects sensitive Node.js APIs like 'exec' or 'eval', it could allow an attacker to execute arbitrary commands in the application's context.

Impact

Exploitation of this vulnerability causes a denial-of-service condition and introduces the risk of prototype pollution, which could escalate to other injection-based attacks, particularly if the polluted properties interact with sensitive Node.js APIs.

Reproduction

The vulnerability can be reproduced by importing the 'utile' library and calling the 'createPath' function with a payload that includes an Object.prototype setter. This payload will modify the prototype chain, as demonstrated in the provided proof-of-concept code.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
0.0
impact
7.5
exploitability
8.7
remediation
0.0
relevance
0.0
threat
6.4
urgency
2.9
incentive
5.8

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.