CVE-2026-24001 Vulnerability Analysis & Exploit Details

CVE-2026-24001
Vulnerability Scoring

7.5
/10
Very High Risk

Highly exploitable, CVE-2026-24001 poses a critical security risk that could lead to severe breaches.

Attack Complexity Details

  • Attack Complexity: Low
    Exploits can be performed without significant complexity or special conditions.
  • Attack Vector: Network
    Vulnerability is exploitable over a network without physical access.
  • Privileges Required: None
    No privileges are required for exploitation.
  • Scope: Unchanged
    Exploit remains within the originally vulnerable component.
  • User Interaction: None
    No user interaction is necessary for exploitation.

CVE-2026-24001 Details

Status: Analyzed

Last updated: 🕒 04 Mar 2026, 15:23 UTC
Originally published on: 🕒 22 Jan 2026, 03:15 UTC

Time between publication and last update: 41 days

CVSS Release: version 3

CVSS3 Source

nvd@nist.gov

CVSS3 Type

Primary

CVSS3 Vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

CVE-2026-24001 Vulnerability Summary

CVE-2026-24001: jsdiff is a JavaScript text differencing implementation. Prior to versions 8.0.3, 5.2.2, 4.0.4, and 3.5.1, attempting to parse a patch whose filename headers contain the line break characters `\r`, `\u2028`, or `\u2029` can cause the `parsePatch` method to enter an infinite loop. It then consumes memory without limit until the process crashes due to running out of memory. Applications are therefore likely to be vulnerable to a denial-of-service attack if they call `parsePatch` with a user-provided patch as input. A large payload is not needed to trigger the vulnerability, so size limits on user input do not provide any protection. Furthermore, some applications may be vulnerable even when calling `parsePatch` on a patch generated by the application itself if the user is nonetheless able to control the filename headers (e.g. by directly providing the filenames of the files to be diffed). The `applyPatch` method is similarly affected if (and only if) called with a string representation of a patch as an argument, since under the hood it parses that string using `parsePatch`. Other methods of the library are unaffected. Finally, a second and lesser interdependent bug - a ReDOS - also exhibits when those same line break characters are present in a patch's *patch* header (also known as its "leading garbage"). A maliciously-crafted patch header of length *n* can take `parsePatch` O(*n*³) time to parse. Versions 8.0.3, 5.2.2, 4.0.4, and 3.5.1 contain a fix. As a workaround, do not attempt to parse patches that contain any of these characters: `\r`, `\u2028`, or `\u2029`.

Assessing the Risk of CVE-2026-24001

Access Complexity Graph

The exploitability of CVE-2026-24001 depends on two key factors: attack complexity (the level of effort required to execute an exploit) and privileges required (the access level an attacker needs).

Exploitability Analysis for CVE-2026-24001

With low attack complexity and no required privileges, CVE-2026-24001 is an easy target for cybercriminals. Organizations should prioritize immediate mitigation measures to prevent unauthorized access and data breaches.

Understanding AC and PR

A lower complexity and fewer privilege requirements make exploitation easier. Security teams should evaluate these aspects to determine the urgency of mitigation strategies, such as patch management and access control policies.

Attack Complexity (AC) measures the difficulty in executing an exploit. A high AC means that specific conditions must be met, making an attack more challenging, while a low AC means the vulnerability can be exploited with minimal effort.

Privileges Required (PR) determine the level of system access necessary for an attack. Vulnerabilities requiring no privileges are more accessible to attackers, whereas high privilege requirements limit exploitation to authorized users with elevated access.

CVSS Score Breakdown Chart

Above is the CVSS Sub-score Breakdown for CVE-2026-24001, illustrating how Base, Impact, and Exploitability factors combine to form the overall severity rating. A higher sub-score typically indicates a more severe or easier-to-exploit vulnerability.

CIA Impact Analysis

Below is the Impact Analysis for CVE-2026-24001, showing how Confidentiality, Integrity, and Availability might be affected if the vulnerability is exploited. Higher values usually signal greater potential damage.

  • Confidentiality: None
    CVE-2026-24001 has no significant impact on data confidentiality.
  • Integrity: None
    CVE-2026-24001 poses no threat to data integrity.
  • Availability: High
    CVE-2026-24001 can disrupt system operations, potentially causing complete denial of service (DoS).

CVE-2026-24001 References

External References

CWE Common Weakness Enumeration

CWE-1333

CAPEC Common Attack Pattern Enumeration and Classification

  • Regular Expression Exponential Blowup CAPEC-492 An adversary may execute an attack on a program that uses a poor Regular Expression(Regex) implementation by choosing input that results in an extreme situation for the Regex. A typical extreme situation operates at exponential time compared to the input size. This is due to most implementations using a Nondeterministic Finite Automaton(NFA) state machine to be built by the Regex algorithm since NFA allows backtracking and thus more complex regular expressions.

Vulnerable Configurations

  • cpe:2.3:a:kpdecker:jsdiff:1.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.3:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.3:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.4:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.4:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.5:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.5:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.6:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.6:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.7:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.7:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.0.8:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.0.8:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.1.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.1.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.2.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.2.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.2.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.2.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.2.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.2.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.3.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.3.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.3.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.3.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.3.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.3.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:1.4.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:1.4.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.0.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.0.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.1.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.1.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.1.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.1.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.1.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.1.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.1.3:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.1.3:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.2.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.2.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.2.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.2.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.2.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.2.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:2.2.3:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:2.2.3:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.1.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.1.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.2.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.2.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.3.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.3.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.3.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.3.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.4.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.4.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:3.5.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:3.5.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:4.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:4.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:4.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:4.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:4.0.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:4.0.2:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:5.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:5.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:5.1.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:5.1.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:5.2.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:5.2.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:5.2.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:5.2.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:6.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:6.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:7.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:7.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:8.0.0:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:8.0.0:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:8.0.1:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:8.0.1:*:*:*:*:node.js:*:*
  • cpe:2.3:a:kpdecker:jsdiff:8.0.2:*:*:*:*:node.js:*:*
    cpe:2.3:a:kpdecker:jsdiff:8.0.2:*:*:*:*:node.js:*:*

Protect Your Infrastructure against CVE-2026-24001: Combat Critical CVE Threats

Stay updated with real-time CVE vulnerabilities and take action to secure your systems. Enhance your cybersecurity posture with the latest threat intelligence and mitigation techniques. Develop the skills necessary to defend against CVEs and secure critical infrastructures. Join the top cybersecurity professionals safeguarding today's infrastructures.

Other 5 Recently Published CVEs Vulnerabilities

  • CVE-2026-2413 – The Ally – Web Accessibility & Usability plugin for WordPress is vulnerable to SQL Injection via the URL path in all versions up to, and including,...
  • CVE-2025-13067 – The Royal Addons for Elementor plugin for WordPress is vulnerable to arbitrary file upload in all versions up to, and including, 1.7.1049. This is ...
  • CVE-2026-29515 – MiCode FileExplorer contains an authentication bypass vulnerability in the embedded SwiFTP FTP server component that allows network attackers to lo...
  • CVE-2026-23817 – A vulnerability in the web-based management interface of AOS-CX Switches could allow an unauthenticated remote attacker to redirect users to an arb...
  • CVE-2026-23816 – A vulnerability in the command line interface of AOS-CX Switches could allow an authenticated remote attacker to execute arbitrary commands on the ...