GitHub Advisoryadvisory · npm

GHSA-r7jx-5m6m-cpg9 eazy-logger prototype pollution

HIGH Published 2025-02-06 Modified 2025-04-07 Official page ↗
Aliases
CVE-2024-57075
Ecosystem
npm
Packages
eazy-logger
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-1321, CWE-400
Reviewed
2025-02-06

Affected packages

• npm eazy-logger: < 4.1.0 → fixed in 4.1.0

Description

A prototype pollution in the lib.Logger function of eazy-logger v4.0.1 allows attackers to cause a Denial of Service (DoS) via supplying a crafted payload. An attacker can supply a payload with `Object.prototype` setter to introduce or modify properties within the global prototype chain, causing denial of service (DoS) a the minimum consequence. Moreover, the consequences of this vulnerability can escalate to other injection-based attacks, depending on how the library integrates within the application. For instance, if the polluted property propagates to sensitive Node.js APIs (e.g., `child_process.exec`, `eval`), it could enable an attacker to execute arbitrary commands within the application's context. Proof of Concept ```js (async () => { const lib = await import('eazy-logger'); var someObj = {} console.log("Before Attack: ", JSON.stringify({}.__proto__)); try { // for multiple functions, uncomment only one for each execution. lib.Logger (JSON.parse('{"__proto__":{"pollutedKey":123}}')) } catch (e) { } console.log("After Attack: ", JSON.stringify({}.__proto__)); delete Object.prototype.pollutedKey; })(); ```

Related

Alias · CVE (1)

  • CVE-2024-57075 A prototype pollution in the lib.Logger function of eazy-logger v4.0.1 allows attackers to cause a Denial of Service (DoS) via supplying a… vulnerability

Weakness · CWE (2)

  • CWE-1321 Improperly Controlled Modification of Object Prototype Attributes weakness
  • CWE-400 Uncontrolled Resource Consumption weakness

References