-
Notifications
You must be signed in to change notification settings - Fork 74
Description
CVE-2026-34043 - Medium Severity Vulnerability
Vulnerable Libraries - serialize-javascript-6.0.2.tgz, serialize-javascript-4.0.0.tgz
serialize-javascript-6.0.2.tgz
Library home page: https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz
Path to dependency file: /ui/package.json
Path to vulnerable library: /ui/node_modules/.pnpm/serialize-javascript@6.0.2/node_modules/serialize-javascript/package.json
Dependency Hierarchy:
- @postgres.ai/ce-4.0.3.tgz (Root Library)
- react-scripts-5.0.1.tgz
- css-minimizer-webpack-plugin-3.4.1.tgz
- ❌ serialize-javascript-6.0.2.tgz (Vulnerable Library)
- css-minimizer-webpack-plugin-3.4.1.tgz
- react-scripts-5.0.1.tgz
serialize-javascript-4.0.0.tgz
Serialize JavaScript to a superset of JSON that includes regular expressions and functions.
Library home page: https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz
Path to dependency file: /ui/package.json
Path to vulnerable library: /ui/node_modules/.pnpm/serialize-javascript@4.0.0/node_modules/serialize-javascript/package.json
Dependency Hierarchy:
- @postgres.ai/ce-4.0.3.tgz (Root Library)
- react-scripts-5.0.1.tgz
- workbox-webpack-plugin-6.6.0.tgz
- workbox-build-6.6.0.tgz
- rollup-plugin-terser-7.0.2.tgz
- ❌ serialize-javascript-4.0.0.tgz (Vulnerable Library)
- rollup-plugin-terser-7.0.2.tgz
- workbox-build-6.6.0.tgz
- workbox-webpack-plugin-6.6.0.tgz
- react-scripts-5.0.1.tgz
Found in base branch: master
Vulnerability Details
Impact What kind of vulnerability is it? It is a Denial of Service (DoS) vulnerability caused by CPU exhaustion. When serializing a specially crafted "array-like" object (an object that inherits from "Array.prototype" but has a very large "length" property), the process enters an intensive loop that consumes 100% CPU and hangs indefinitely. Who is impacted? Applications that use "serialize-javascript" to serialize untrusted or user-controlled objects are at risk. While direct exploitation is difficult, it becomes a high-priority threat if the application is also vulnerable to Prototype Pollution or handles untrusted data via YAML Deserialization, as these could be used to inject the malicious object. Patches Has the problem been patched? Yes, the issue has been patched by replacing "instanceof Array" checks with "Array.isArray()" and using "Object.keys()" for sparse array detection. What versions should users upgrade to? Users should upgrade to "v7.0.5" or later. Workarounds Is there a way for users to fix or remediate the vulnerability without upgrading? There is no direct code-level workaround within the library itself. However, users can mitigate the risk by: * Validating and sanitizing all input before passing it to the "serialize()" function. * Ensuring the environment is protected against Prototype Pollution. * Upgrading to "v7.0.5" as soon as possible. Acknowledgements Serialize JavaScript thanks Tomer Aberbach (@TomerAberbach) for discovering and privately disclosing this issue.
Publish Date: 2026-03-28
URL: CVE-2026-34043
CVSS 3 Score Details (5.9)
Base Score Metrics:
- Exploitability Metrics:
- Attack Vector: Network
- Attack Complexity: High
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Impact Metrics:
- Confidentiality Impact: None
- Integrity Impact: None
- Availability Impact: High
Suggested Fix
Type: Upgrade version
Release Date: 2026-03-28
Fix Resolution: https://github.com/yahoo/serialize-javascript.git - v7.0.5
Step up your Open Source Security Game with Mend here