NodeJS/hoek/1.0.1
General purpose node utilities
Repo Link:
https://www.npmjs.com/package/hoek
License:
BSD
3 Security Vulnerabilities
Published date: 2022-09-25T00:00:27Z
CVE: CVE-2020-36604
hoek versions prior to 8.5.1, and 9.x prior to 9.0.3 are vulnerable to prototype pollution in the clone function. If an object with the proto key is passed to clone() the key is converted to a prototype. This issue has been patched in version 9.0.3, and backported to 8.5.1.
Affected versions:
["0.0.4", "0.0.6", "0.0.7", "0.0.8", "0.0.11", "0.0.13", "0.0.14", "0.0.15", "0.0.16", "0.4.4", "0.6.1", "0.6.2", "0.7.0", "0.7.1", "0.7.2", "0.7.3", "0.7.6", "0.8.0", "0.8.1", "0.8.3", "0.8.5", "0.9.0", "0.9.1", "0.10.0", "1.0.2", "1.1.0", "1.4.0", "1.5.0", "1.5.1", "1.5.2", "2.0.0", "2.3.0", "2.4.0", "2.5.0", "2.5.1", "2.10.0", "2.12.0", "2.13.0", "2.13.1", "2.16.1", "3.0.0", "3.0.1", "3.0.2", "3.0.4", "4.0.1", "5.0.0", "5.0.1", "4.2.1", "6.0.3", "6.0.4", "6.1.2", "0.0.1", "0.0.2", "0.0.3", "0.0.5", "0.0.9", "0.0.10", "0.0.12", "0.0.17", "0.0.18", "0.0.19", "0.0.21", "0.1.0", "0.2.0", "0.3.0", "0.4.0", "0.4.1", "0.4.2", "0.4.3", "0.4.5", "0.5.0", "0.6.0", "0.7.4", "0.7.5", "0.8.2", "0.8.4", "1.0.0", "1.0.1", "1.0.3", "1.1.1", "1.1.2", "1.2.0", "1.3.0", "1.4.1", "2.1.0", "2.1.1", "2.2.0", "2.4.1", "2.6.0", "2.7.0", "2.8.0", "2.8.1", "2.9.0", "2.9.1", "2.11.0", "2.11.1", "2.14.0", "2.15.0", "2.16.0", "2.16.2", "2.16.3", "3.0.3", "4.0.0", "4.0.2", "4.1.0", "4.1.1", "4.2.0", "5.0.2", "5.0.3", "5.0.4", "6.0.0", "6.0.1", "6.0.2", "6.1.1", "6.1.3", "4.3.1"]
Secure versions:
[]
Published date: 2018-04-26T15:25:17Z
CVE: CVE-2018-3728
Versions of hoek
prior to 4.2.1 and 5.0.3 are vulnerable to prototype pollution.
The merge
function, and the applyToDefaults
and applyToDefaultsWithShallow
functions which leverage merge
behind the scenes, are vulnerable to a prototype pollution attack when provided an unvalidated payload created from a JSON string containing the __proto__
property.
This can be demonstrated like so:
var Hoek = require('hoek');
var malicious_payload = '{"__proto__":{"oops":"It works !"}}';
var a = {};
console.log("Before : " + a.oops);
Hoek.merge({}, JSON.parse(malicious_payload));
console.log("After : " + a.oops);
This type of attack can be used to overwrite existing properties causing a potential denial of service.
Recommendation
Update to version 4.2.1, 5.0.3 or later.
Affected versions:
["0.0.4", "0.0.6", "0.0.7", "0.0.8", "0.0.11", "0.0.13", "0.0.14", "0.0.15", "0.0.16", "0.4.4", "0.6.1", "0.6.2", "0.7.0", "0.7.1", "0.7.2", "0.7.3", "0.7.6", "0.8.0", "0.8.1", "0.8.3", "0.8.5", "0.9.0", "0.9.1", "0.10.0", "1.0.2", "1.1.0", "1.4.0", "1.5.0", "1.5.1", "1.5.2", "2.0.0", "2.3.0", "2.4.0", "2.5.0", "2.5.1", "2.10.0", "2.12.0", "2.13.0", "2.13.1", "2.16.1", "3.0.0", "3.0.1", "3.0.2", "3.0.4", "4.0.1", "0.0.1", "0.0.2", "0.0.3", "0.0.5", "0.0.9", "0.0.10", "0.0.12", "0.0.17", "0.0.18", "0.0.19", "0.0.21", "0.1.0", "0.2.0", "0.3.0", "0.4.0", "0.4.1", "0.4.2", "0.4.3", "0.4.5", "0.5.0", "0.6.0", "0.7.4", "0.7.5", "0.8.2", "0.8.4", "1.0.0", "1.0.1", "1.0.3", "1.1.1", "1.1.2", "1.2.0", "1.3.0", "1.4.1", "2.1.0", "2.1.1", "2.2.0", "2.4.1", "2.6.0", "2.7.0", "2.8.0", "2.8.1", "2.9.0", "2.9.1", "2.11.0", "2.11.1", "2.14.0", "2.15.0", "2.16.0", "2.16.2", "2.16.3", "3.0.3", "4.0.0", "4.0.2", "4.1.0", "4.1.1", "4.2.0", "5.0.0", "5.0.1", "5.0.2"]
Secure versions:
[]
Published date: 2018-02-12
CVEs: ["CVE-2018-3728"]
CVSS Score: 2.5
CVSS Vector: CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:N/I:N/A:L
hoek node module before 5.0.3 and before 4.2.1 suffers from a prototype pollution vulnerability via 'merge' and 'applyToDefaults' functions, which allows a malicious user to modify the prototype of 'Object' via proto , causing the addition or modification of an existing property that will exist on all objects.
Affected versions:
["5.0.0", "5.0.1", "5.0.2", "0.0.1", "0.0.2", "0.0.3", "0.0.4", "0.0.5", "0.0.6", "0.0.7", "0.0.8", "0.0.9", "0.0.10", "0.0.11", "0.0.12", "0.0.13", "0.0.14", "0.0.15", "0.0.16", "0.0.17", "0.0.18", "0.0.19", "0.0.21", "0.1.0", "0.2.0", "0.3.0", "0.4.0", "0.4.1", "0.4.2", "0.4.3", "0.4.4", "0.4.5", "0.5.0", "0.6.0", "0.6.1", "0.6.2", "0.7.0", "0.7.1", "0.7.2", "0.7.3", "0.7.4", "0.7.5", "0.7.6", "0.8.0", "0.8.1", "0.8.2", "0.8.3", "0.8.4", "0.8.5", "0.9.0", "0.9.1", "0.10.0", "1.0.0", "1.0.1", "1.0.2", "1.0.3", "1.1.0", "1.1.1", "1.1.2", "1.2.0", "1.3.0", "1.4.0", "1.4.1", "1.5.0", "1.5.1", "1.5.2", "2.0.0", "2.1.0", "2.1.1", "2.2.0", "2.3.0", "2.4.0", "2.4.1", "2.5.0", "2.5.1", "2.6.0", "2.7.0", "2.8.0", "2.8.1", "2.9.0", "2.9.1", "2.10.0", "2.11.0", "2.11.1", "2.12.0", "2.13.0", "2.13.1", "2.14.0", "2.15.0", "2.16.0", "2.16.1", "2.16.2", "2.16.3", "3.0.0", "3.0.1", "3.0.2", "3.0.3", "3.0.4", "4.0.0", "4.0.1", "4.0.2", "4.1.0", "4.1.1", "4.2.0", "NodeJS/hoek/5.0.0", "NodeJS/hoek/5.0.1", "NodeJS/hoek/5.0.2", "NodeJS/hoek/0.0.4", "NodeJS/hoek/0.0.6", "NodeJS/hoek/0.0.7", "NodeJS/hoek/0.0.8", "NodeJS/hoek/0.0.11", "NodeJS/hoek/0.0.13", "NodeJS/hoek/0.0.14", "NodeJS/hoek/0.0.15", "NodeJS/hoek/0.0.16", "NodeJS/hoek/0.4.4", "NodeJS/hoek/0.6.1", "NodeJS/hoek/0.6.2", "NodeJS/hoek/0.7.0", "NodeJS/hoek/0.7.1", "NodeJS/hoek/0.7.2", "NodeJS/hoek/0.7.3", "NodeJS/hoek/0.7.6", "NodeJS/hoek/0.8.0", "NodeJS/hoek/0.8.1", "NodeJS/hoek/0.8.3", "NodeJS/hoek/0.8.5", "NodeJS/hoek/0.9.0", "NodeJS/hoek/0.9.1", "NodeJS/hoek/0.10.0", "NodeJS/hoek/1.0.2", "NodeJS/hoek/1.1.0", "NodeJS/hoek/1.4.0", "NodeJS/hoek/1.5.0", "NodeJS/hoek/1.5.1", "NodeJS/hoek/1.5.2", "NodeJS/hoek/2.0.0", "NodeJS/hoek/2.3.0", "NodeJS/hoek/2.4.0", "NodeJS/hoek/2.5.0", "NodeJS/hoek/2.5.1", "NodeJS/hoek/2.10.0", "NodeJS/hoek/2.12.0", "NodeJS/hoek/2.13.0", "NodeJS/hoek/2.13.1", "NodeJS/hoek/2.16.1", "NodeJS/hoek/3.0.0", "NodeJS/hoek/3.0.1", "NodeJS/hoek/3.0.2", "NodeJS/hoek/3.0.4", "NodeJS/hoek/4.0.1", "NodeJS/hoek/0.0.1", "NodeJS/hoek/0.0.2", "NodeJS/hoek/0.0.3", "NodeJS/hoek/0.0.5", "NodeJS/hoek/0.0.9", "NodeJS/hoek/0.0.10", "NodeJS/hoek/0.0.12", "NodeJS/hoek/0.0.17", "NodeJS/hoek/0.0.18", "NodeJS/hoek/0.0.19", "NodeJS/hoek/0.0.21", "NodeJS/hoek/0.1.0", "NodeJS/hoek/0.2.0", "NodeJS/hoek/0.3.0", "NodeJS/hoek/0.4.0", "NodeJS/hoek/0.4.1", "NodeJS/hoek/0.4.2", "NodeJS/hoek/0.4.3", "NodeJS/hoek/0.4.5", "NodeJS/hoek/0.5.0", "NodeJS/hoek/0.6.0", "NodeJS/hoek/0.7.4", "NodeJS/hoek/0.7.5", "NodeJS/hoek/0.8.2", "NodeJS/hoek/0.8.4", "NodeJS/hoek/1.0.0", "NodeJS/hoek/1.0.1", "NodeJS/hoek/1.0.3", "NodeJS/hoek/1.1.1", "NodeJS/hoek/1.1.2", "NodeJS/hoek/1.2.0", "NodeJS/hoek/1.3.0", "NodeJS/hoek/1.4.1", "NodeJS/hoek/2.1.0", "NodeJS/hoek/2.1.1", "NodeJS/hoek/2.2.0", "NodeJS/hoek/2.4.1", "NodeJS/hoek/2.6.0", "NodeJS/hoek/2.7.0", "NodeJS/hoek/2.8.0", "NodeJS/hoek/2.8.1", "NodeJS/hoek/2.9.0", "NodeJS/hoek/2.9.1", "NodeJS/hoek/2.11.0", "NodeJS/hoek/2.11.1", "NodeJS/hoek/2.14.0", "NodeJS/hoek/2.15.0", "NodeJS/hoek/2.16.0", "NodeJS/hoek/2.16.2", "NodeJS/hoek/2.16.3", "NodeJS/hoek/3.0.3", "NodeJS/hoek/4.0.0", "NodeJS/hoek/4.0.2", "NodeJS/hoek/4.1.0", "NodeJS/hoek/4.1.1", "NodeJS/hoek/4.2.0"]
Secure versions:
[]
Recommendation:
Update module to 5.0.3 or 4.2.1 or higher
116 Other Versions