CVE-2017-5954 json
Code Execution Through IIFE in serialize-to-js
published 2017-02-10 9 y ago modified 2026-06-17 4 mo ago also GHSA-mm62-wxc8-cf7m , EUVD-2018-0297
- cvss
- 9.8
- version 3.0, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 4.5%
- EPSS 4.5% chance of exploitation in 30 days, percentile 91%
- public exploits
- 0
- none known
Summary
An issue was discovered in the serialize-to-js package 0.5.0 for Node.js. Untrusted data passed into the deserialize() function can be exploited to achieve arbitrary code execution by passing a JavaScript Object with an Immediately Invoked Function Expression (IIFE).
Patch / fix
- npm serialize-to-js 1.0.0
Exploit prediction
4.46% chance of exploitation in the next 30 days, higher than 91% of all scored CVEs (FIRST EPSS, 2026-11-09).
Exploits and checks
- opsecx.com https://opsecx.com/index.php/2017/02/08/exploiting-node-js-deserialization-bug-for-remote-code-execution/ referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.0 | 9.8 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| GitHub | 3.0 | 9.8 | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | serialize-to-js | <1.0.0 |
1.0.0 |
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
-
github.com
/commenthol/serialize-to-js/issues/1
web, issue-tracking, patch, third-party-advisory
-
github.com
/commenthol/serialize-to-js/commit/1cd433960e5b9db4c0b537afb28366198a319429
web
-
opsecx.com
/index.php/2017/02/08/exploiting-node-js-deserialization-bug-for-remote-code-execution/
exploit, third-party-advisory
-
securityfocus.com
/bid/96223
vdb-entry, web, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2017-5954
advisory
-
github.com
/advisories/GHSA-mm62-wxc8-cf7m
advisory
-
github.com
/commenthol/serialize-to-js
package
-
opsecx.com
/index.php/2017/02/08/exploiting-node-js-deserialization-bug-for-remote-code-execution
web
-
npmjs.com
/advisories/313
web
-
npmjs.com
/package/serialize-to-js#deserialize
web
Sources
- CVE List CVE-2017-5954
- GitHub Advisory GHSA-mm62-wxc8-cf7m
- NVD CVE-2017-5954
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.