Skip to main content

Red Hat CVE-2026-34043

MEDIUM
Uncontrolled Resource Consumption (CWE-400)
2026-03-27 https://github.com/yahoo/serialize-javascript
5.9
CVSS 3.1 · GitHub Advisory
Share

Severity by source

GitHub Advisory PRIMARY
5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
SUSE
MEDIUM
qualitative
Red Hat
5.9 MEDIUM
qualitative

Primary rating from GitHub Advisory.

CVSS VectorGitHub Advisory

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

3
Analysis Generated
Mar 27, 2026 - 18:30 vuln.today
Patch released
Mar 27, 2026 - 18:30 nvd
Patch available
CVE Published
Mar 27, 2026 - 18:18 nvd
MEDIUM 5.9

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 1 npm packages depend on serialize-javascript (1 direct, 0 indirect)

Ecosystem-wide dependent count for version 5.0.0.

DescriptionGitHub Advisory

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.

AnalysisAI

The serialize-javascript npm library versions prior to 7.0.5 contain a CPU exhaustion denial-of-service vulnerability triggered when processing specially crafted array-like objects with artificially large length properties, causing the serialization process to hang indefinitely and consume 100% CPU. The vulnerability affects npm package serialize-javascript (pkg:npm/serialize-javascript) and impacts applications that serialize untrusted or user-controlled objects, particularly those also vulnerable to prototype pollution or YAML deserialization attacks that could inject malicious payloads. No public exploit code has been identified, but the attack vector is network-accessible with high complexity, posing a moderate real-world threat in supply-chain and backend service contexts.

Technical ContextAI

The vulnerability exists in the serialize-javascript npm library, identified via CPE pkg:npm/serialize-javascript. The root cause is classified under CWE-400 (Uncontrolled Resource Consumption), stemming from the library's use of instanceof Array checks that can be bypassed by objects inheriting from Array.prototype with maliciously large length properties. When such objects are serialized, the library enters an intensive loop attempting to process array indices up to the artificial length value, exhausting CPU cycles. The patch, committed to the Yahoo serialize-javascript repository and released in version 7.0.5, replaces instanceof Array checks with the more robust Array.isArray() method and uses Object.keys() for sparse array detection, preventing the bypass mechanism and ensuring bounded iteration.

RemediationAI

Upgrade serialize-javascript to version 7.0.5 or later immediately via npm update. Consult the vendor security advisory at https://github.com/yahoo/serialize-javascript/security/advisories/GHSA-qj8w-gfj5-8c6v for confirmation. Until patching is feasible, implement input validation and sanitization on all untrusted data before passing it to the serialize() function, and audit the application for prototype pollution and unsafe YAML deserialization patterns that could be chained to inject malicious objects. In high-risk environments, consider rate-limiting or timeout enforcement on serialization operations to mitigate CPU exhaustion attacks.

Vendor StatusVendor

SUSE

Severity: Medium
Product Status
SUSE Liberty Linux 8 Fixed

Share

CVE-2026-34043 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy