iron@0.3.3

Vulnerabilities 2 via 4 paths
Dependencies 3
Source npm

Snyk continuously finds and fixes vulnerabilities in your dependencies.

Severity
  • 1
  • 1
Status
  • 2
  • 0
  • 0
medium severity

Insecure Randomness

  • Vulnerable module: cryptiles
  • Introduced through: cryptiles@0.2.2

Detailed paths

  • Introduced through: iron@0.3.3 cryptiles@0.2.2
    Remediation: Upgrade to iron@5.0.0.

Overview

cryptiles is a package for general crypto utilities.

Affected versions of this package are vulnerable to Insecure Randomness. The randomDigits() method is supposed to return a cryptographically strong pseudo-random data string, but it was biased to certain digits. An attacker could be able to guess the created digits.

Remediation

Upgrade to version 4.1.2 and higher.

References

low severity

Prototype Pollution

  • Vulnerable module: hoek
  • Introduced through: hoek@0.9.1, boom@0.4.2 and others

Detailed paths

  • Introduced through: iron@0.3.3 hoek@0.9.1
    Remediation: Upgrade to iron@4.0.1.
  • Introduced through: iron@0.3.3 boom@0.4.2 hoek@0.9.1
    Remediation: Upgrade to iron@3.0.1.
  • Introduced through: iron@0.3.3 cryptiles@0.2.2 boom@0.4.2 hoek@0.9.1
    Remediation: Upgrade to iron@3.0.1.

Overview

hoek is a Utility methods for the hapi ecosystem.

Affected versions of this package are vulnerable to Prototype Pollution. The utilities function allow modification of the Object prototype. If an attacker can control part of the structure passed to this function, they could add or modify an existing property.

PoC by Olivier Arteau (HoLyVieR)

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);

Remediation

Upgrade hoek to versions 4.2.1, 5.0.3 or higher.

References