p PatchFirst

PatchFirst · Latest vulnerabilities

Node.js stack vulnerabilities · Page 20

Vulnerabilities published for Node.js in the last 30 days: 421. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Node.js

Early warnings

Fresh vulnerability reports from vendor announcements and security news. These warnings do not change the security rating.

  1. node.js

    No fix published

    Node.js: denial of service

    According to GitHub Advisory Database, Node.js has a denial of service vulnerability (CVE-2026-109932). The exact affected versions are unspecified. The report does not name a fixed version.

    What to do now: Check whether a Node.js update with the fix is available and install it.

    CVE-2026-109932

  2. node.js

    No fix published

    Node.js: remote code execution

    According to OpenNet, Node.js has a remote code execution vulnerability (CVE-2026-111497). The exact affected versions are unspecified. The report does not name a fixed version.

    What to do now: Check whether a Node.js update with the fix is available and install it.

    CVE-2026-111497

Vulnerabilities: 7762

  1. CVE-2026-104183

    Medium · CVSS 5.1EPSS 0.19%Fix available

    stream-json: Prototype pollution: Assembler writes this.current[this.key] on plain objects

    stream-json is a micro-library of stream components for processing JSON and JSONC with a minimal memory footprint. Prior to 3.6.0, Assembler materializes object properties with plain assignment, so an input key named __proto__ invokes the inherited setter and causes parsed object prototype replacement instead of creating an own data property. Applications that make authorization or feature decisions from inherited values can therefore consume attacker-controlled properties, and a null prototype can disrupt code that expects Object.prototype methods. The researcher treats parsing untrusted JSON as part of the project contract, while the mainta

    • Update to 3.6.0
    Published Updated
  2. CVE-2026-104182

    Medium · CVSS 6.2EPSS 0.2%Fix available

    stream-json: JSONC parser and verifier re-scan the whole accumulated comment on every input chunk

    stream-json is a micro-library of stream components for processing JSON and JSONC with a minimal memory footprint. Prior to 3.6.0, the JSONC parser at stream-json/jsonc/parser.js and verifier at stream-json/jsonc/verifier.js restart comment-terminator scanning from the opening slash whenever a block or line comment spans an input chunk, while retaining the accumulated comment buffer. Delivering a large valid comment across many small chunks therefore causes quadratic CPU work and can stall the Node.js event loop. The maintainer characterizes the attack vector as local because the documented JSONC input is locally owned or user-controlled conf

    • Update to 3.6.0
    Published Updated
  3. CVE-2023-54404

    High · CVSS 8.2Fix available

    Zod can exhaust memory while validating oversized constrained collections

    Zod schema-validation library through 4.6.5 contains an uncontrolled resource consumption vulnerability that allows attackers to exhaust memory by submitting a large array to an application using an array schema without a length constraint. Attackers can exploit the handleArrayResult parse logic in $ZodArray, which accumulates every validation issue for each failing element with no cap or early termination, causing the process to allocate excessive issue objects and crash due to out-of-memory conditions.

    • Update to 4.6.6
    Published Updated
  4. CVE-2026-103923

    Low · CVSS 2.1EPSS 0.3%Fix available

    KaTeX: Existing prototype pollution can bypass trust restrictions

    KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web. From 0.11.0 until 0.18.2, KaTeX uses ordinary JavaScript property access for the renderer options object, the trust setting, default and processor setting metadata, and namespace lookup and group restoration, allowing inherited properties to be treated as explicitly supplied values. When Object.prototype is already polluted or an attacker controls the options object's prototype, attacker-controlled mathematical expressions can use an inherited trust value to enable trusted rendering and produce links capable of user-interaction cross-site scripting or loading a

    • Update to 0.16.10+~cs6.1.0-10
    • Update to 0.18.2
    Published Updated
  5. CVE-2026-103922

    Critical · CVSS 9.3EPSS 0.34%Public exploitFix available

    Capacitor Android and iOS: remote content can be loaded at the app origin via the internal HTTP proxy path

    Capacitor is a cross-platform native runtime for web applications. From 6.0.0 until 6.2.2, 7.6.9, 8.3.5, 8.4.3, and 8.5.1, the Android and iOS WebView navigation guard validates a target URL's host and scheme but not its path, allowing a victim who activates an untrusted link to navigate a frame to /_capacitor_http_interceptor_. The native proxy can fetch an attacker-selected URL and return the response as a document at the application's own origin, allowing script in that response to access same-origin storage, cookies, and registered Capacitor plugin capabilities. Applications remain affected when CapacitorHttp is disabled because affected

    • Update to 6.2.2
    • Update to 7.6.9
    • Update to 8.5.1
    Published Updated
  6. CVE-2026-103921

    High · CVSS 7.4EPSS 0.27%Fix available

    GraphQL Tools: TLS Certificate Validation Disabled in Legacy GraphQL WebSocket Executor

    GraphQL Tools provides utilities for building, stitching, and mocking GraphQL schemas. Prior to 1.1.35, the executor-legacy-ws buildWSLegacyExecutor() function hardcodes TLS certificate rejection off for Node.js connections to wss:// endpoints. Applications using the executor directly, or url-loader with SubscriptionProtocol.LEGACY_WS, can therefore accept an attacker-controlled certificate when a network-positioned attacker intercepts the connection. Authentication material in connectionParams or headers can be disclosed, and subscription data can be modified. Browser WebSocket clients are unaffected because browsers enforce certificate vali

    • Update to 1.1.35
    Published Updated
  7. GHSA-hx4r-w6wj-j8fg

    Medium · CVSS 6.3Fix available

    devalue: Residual sparse-array CPU amplification in uneval

    `uneval` performs synchronous work proportional to a sparse array's declared length. An application that passes attacker-influenced sparse values to `uneval` can suffer event-loop blocking. Since attacker-controlled creation of sparse arrays is so difficult, this vulnerability is very difficult to exploit.

    • Update to 5.9.3
    Published Updated
  8. GHSA-wf3x-273g-mvxv

    Low · CVSS 2.3Fix available

    devalue: Sparse arrays emitted by uneval cause eager allocation when evaluated

    Evaluating legitimate `uneval` output for a sparse array can allocate memory proportional to its declared length. A tiny serialized value can therefore cause large memory allocation in a consuming browser/runtime. This occurs during evaluation of generated code, not in default `parse` sparse-array construction. You would only be affected by this if you were serializing very large sparse arrays and then evaluating the results. In the general use case for `uneval` of sending data to the client, the worst that could happen is the browser tab running out of memory.

    • Update to 5.9.3
    Published Updated
  9. GHSA-x5rw-q4pp-hg5g

    High · CVSS 8.2Fix available

    devalue: stringifyAsync can cause an unhandled rejection despite a caught returned promise

    When serializing multiple promises, a later promise can reject before an earlier one settles. An internal rejected promise remains unhandled even if the caller catches the returned `stringifyAsync` promise. Under Node's default unhandled-rejection behavior this can terminate the process. Applications whose asynchronous failures/timing can be influenced by requests are potentially exposed. This is essentially impossible to exploit, and is much more likely to surface as a developer-introduced bug.

    • Update to 5.9.3
    Published Updated
  10. GHSA-4q55-j62x-fr9h

    Medium · CVSS 6.3Fix available

    devalue: Malformed null-prototype object keys bypass __proto__ rejection via property-key coercion

    This is another instance of https://github.com/sveltejs/devalue/security/advisories/GHSA-mwv9-gp5h-frr4, where some payloads could cause `parse` to create objects with a `__proto__` own property. This on its own is not enough to cause prototype pollution, and indeed this is actually how `JSON.parse` works, but we decided to be a little more defensive here and not allow the creation of objects with `__proto__` own-properties. It is very unlikely for this to cause any issues.

    • Update to 5.9.3
    Published Updated
  11. CVE-2026-103004

    Medium · CVSS 6.3EPSS 0.25%Fix available

    next.js cache leak on warm `use cache` handlers accessing root param

    Next.js versions from 16.3.0 to 16.3.7 warm `use cache` handlers using `next/root-params` and can leak their return value to pages with different root params. With Cache Components enabled (cacheComponents: true), a 'use cache' function that calls another 'use cache' function that reads a root param can be keyed incorrectly when the inner call is served from an existing entry: the enclosing function's cache key then omits that root param. The enclosing entry is written once and reused for all root param values, so a response for one root param value can serve content produced for a different value — whether the page is prerendered at build ti

    • Update to 16.3.8
    Published Updated
  12. CVE-2026-103290

    Medium · CVSS 5.1EPSS 0.27%Fix available

    Ghost 6.14.0 before 6.27.0 Path Traversal via ImageSize

    Ghost versions 6.14.0 through versions prior to 6.27.0 contain a path traversal vulnerability in the ImageSize service. Insufficient input validation of user-supplied file paths may allow authenticated staff users to access local files outside the intended data storage directories on the server.

    • Update to 6.27.0
    Published Updated
  13. CVE-2026-103289

    High · CVSS 7.1EPSS 0.23%Fix available

    Ghost 5.9.0 before 6.44.1 Authorization Bypass via Comments

    Ghost from 5.9.0 before 6.44.1 contains an input validation issue in the comments feature that allows authenticated members to access comments they are not authorized to view, resulting in disclosure of restricted comment data.

    • Update to 6.44.1
    Published Updated
  14. CVE-2026-103288

    High · CVSS 7.1EPSS 0.2%Fix available

    Ghost 5.9.0 before 6.44.1 Authorization Bypass via Comment Like

    Ghost, an open-source publishing platform, contains an input validation flaw in its comment like feature in versions from 5.9.0 before 6.44.1. An authenticated member can delete comment likes or dislikes belonging to other users that they are not authorized to delete, resulting in an authorization bypass and unauthorized modification of comment engagement data.

    • Update to 6.44.1
    Published Updated
  15. CVE-2026-103287

    Medium · CVSS 5.1EPSS 0.2%Fix available

    Ghost 1.18.0 before 6.27.0 Server-Side Request Forgery via Webhook

    Ghost versions 1.18.0 before 6.27.0 contain a server-side request forgery vulnerability in the webhooks feature that allows staff users to probe internal hosts. Attackers with staff privileges can craft webhook requests to access internal network resources from the Ghost server.

    • Update to 6.27.0
    Published Updated
  16. CVE-2026-102992

    Critical · CVSS 9.2EPSS 0.51%Fix available

    piscina: Prototype-pollution gadget in ThreadPool.options allows RCE via execArgv / loadBalancer / env

    piscina is a node.js worker pool implementation. Prior to 4.9.4, 5.3.2, and 6.0.0-rc.5, Piscina stores ThreadPool.options in src/index.ts as a plain object that inherits from Object.prototype. Applications with a separate prototype-pollution primitive can therefore supply inherited values for security-sensitive options that do not have own defaults. An inherited execArgv value is passed to the Node.js Worker constructor and can preload attacker-controlled code in worker threads, an inherited loadBalancer function can execute during task scheduling, and inherited env values can alter worker environments. This issue is fixed in versions 4.9.4,

    • Update to 4.9.4
    • Update to 5.3.2
    • Update to 6.0.0-rc.5
    Published Updated
  17. CVE-2026-102990

    High · CVSS 8.2EPSS 0.37%Fix available

    basic-ftp: Quadratic-time CPU denial of service in Client.list() Unix directory-listing parser (RE_LINE backtracking)

    basic-ftp is an FTP client for Node.js. Prior to 6.2.1, Client.list() can be forced by a malicious or compromised FTP server to spend quadratic CPU time parsing a directory listing because the RE_LINE expression in src/parseListUnix.ts backtracks across adjacent variable-length owner and group fields when a long Unix-style line has a valid prefix but cannot satisfy the later size and date fields. parseList() selects a parser from the last nonblank line and then applies it to every line, so a normal final line can select the Unix parser while an earlier crafted line blocks the Node.js event loop and freezes the process. This issue is fixed in

    • Update to 0~2025070717+~cs16.2.9-1
    • Update to 6.2.1
    Published Updated
  18. CVE-2026-55177

    High · CVSS 7.6EPSS 0.38%Fix available

    CloudTAK: Authenticated full-read SSRF in /api/esri* routes — user-controlled URL fetched with no IP-classification guard

    CloudTAK is a browser-based Common Operating Picture and situational awareness tool compatible with TAK. Prior to version 13.10.0, every route in the ESRI helper family (api/routes/esri.ts) takes a fully attacker-controlled URL from the request (POST /api/esri body url, and the portal / server / layer query parameters on the GET /api/esri/* routes) and passes it into EsriBase / EsriProxyPortal / EsriProxyServer / EsriProxyLayer in api/lib/esri.ts, which fetch it with the bare fetch from @tak-ps/etl. No IP / DNS / hostname classification is applied at any point, so the destination is never validated against private, loopback, or link-local ran

    • Update to 13.10.0
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →