Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

suse-cvrf логотип

openSUSE-SU-2026:20519-1

Опубликовано: 13 апр. 2026
Источник: suse-cvrf

Описание

Security update for nodejs24

This update for nodejs24 fixes the following issues:

Update to version 24.14.1.

Security issues fixed:

  • CVE-2026-21717: trivially predictable hash collisions due to flaw in V8's string hashing mechanism allows for performance degradation via a crafted request (bsc#1260494).
  • CVE-2026-21716: incomplete fix for CVE-2024-36137 allows promise-based FileHandle methods to be used to modify file permissions and ownership on already-open file descriptors (bsc#1260462).
  • CVE-2026-21715: flaw in the Permission Model filesystem enforcement allows for file existence disclosure and filesystem path enumeration via fs.realpathSync.native() (bsc#1260482).
  • CVE-2026-21714: memory leak in Node.js HTTP/2 server allows for resource exhaustion via WINDOW_UPDATE frames sent on stream 0 (bsc#1260480).
  • CVE-2026-21713: timing side-channel due to flaw in Node.js HMAC verification allows for discovery of HMAC values and potential MAC forgery (bsc#1260463).
  • CVE-2026-21712: assertion error caused by flaw in URL processing allows for a process crash via a URL with a malformed IDN (bsc#1260460).
  • CVE-2026-21710: uncaught TypeError when handling HTTP requests allows for a process crash via requests with a header named __proto__ when the application accesses req.headersDistinct (bsc#1260455).
  • CVE-2026-21637: flaw in TLS error handling allows for resource exhaustion and crash when pskCallback or ALPNCallback are in use (bsc#1256576).
  • CVE-2025-59464: memory leak allows for remote denial of service against applications processing TLS client certificates (bsc#1256572).

Other updates and bugfixes:

  • Version 24.14.0:
    • async_hooks: add trackPromises option to createHook()
    • build,deps: replace cjs-module-lexer with merve
    • deps: add LIEF as a dependency
    • events: repurpose events.listenerCount() to accept EventTargets
    • fs: add ignore option to fs.watch
    • http: add http.setGlobalProxyFromEnv()
    • module: allow subpath imports that start with #/
    • process: preserve AsyncLocalStorage in queueMicrotask only when needed
    • sea: split sea binary manipulation code
    • sqlite: enable defensive mode by default
    • sqlite: add sqlite prepare options args
    • src: add initial support for ESM in embedder API
    • stream: add bytes() method to node:stream/consumers
    • stream: do not pass readable.compose() output via Readable.from()
    • test: use fixture directories for sea tests
    • test_runner: add env option to run function
    • test_runner: support expecting a test-case to fail
    • util: add convertProcessSignalToExitCode utility
    • For details, see https://nodejs.org/en/blog/release/v24.14.0

Список пакетов

openSUSE Leap 16.0
corepack24-24.14.1-160000.1.1
nodejs24-24.14.1-160000.1.1
nodejs24-devel-24.14.1-160000.1.1
nodejs24-docs-24.14.1-160000.1.1
npm24-24.14.1-160000.1.1

Описание

A memory leak in Node.js's OpenSSL integration occurs when converting `X.509` certificate fields to UTF-8 without freeing the allocated buffer. When applications call `socket.getPeerCertificate(true)`, each certificate field leaks memory, allowing remote clients to trigger steady memory growth through repeated TLS connections. Over time this can lead to resource exhaustion and denial of service.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in Node.js TLS error handling allows remote attackers to crash or exhaust resources of a TLS server when `pskCallback` or `ALPNCallback` are in use. Synchronous exceptions thrown during these callbacks bypass standard TLS error handling paths (tlsClientError and error), causing either immediate process termination or silent file descriptor leaks that eventually lead to denial of service. Because these callbacks process attacker-controlled input during the TLS handshake, a remote client can repeatedly trigger the issue. This vulnerability affects TLS servers using PSK or ALPN callbacks across Node.js versions where these callbacks throw without being safely wrapped.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in Node.js HTTP request handling causes an uncaught `TypeError` when a request is received with a header named `__proto__` and the application accesses `req.headersDistinct`. When this occurs, `dest["__proto__"]` resolves to `Object.prototype` rather than `undefined`, causing `.push()` to be called on a non-array. This exception is thrown synchronously inside a property getter and cannot be intercepted by `error` event listeners, meaning it cannot be handled without wrapping every `req.headersDistinct` access in a `try/catch`. * This vulnerability affects all Node.js HTTP servers on **20.x, 22.x, 24.x, and v25.x**


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in Node.js URL processing causes an assertion failure in native code when `url.format()` is called with a malformed internationalized domain name (IDN) containing invalid characters, crashing the Node.js process.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in Node.js HMAC verification uses a non-constant-time comparison when validating user-provided signatures, potentially leaking timing information proportional to the number of matching bytes. Under certain threat models where high-resolution timing measurements are possible, this behavior could be exploited as a timing oracle to infer HMAC values. Node.js already provides timing-safe comparison primitives used elsewhere in the codebase, indicating this is an oversight rather than an intentional design decision. This vulnerability affects **20.x, 22.x, 24.x, and 25.x**.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A memory leak occurs in Node.js HTTP/2 servers when a client sends WINDOW_UPDATE frames on stream 0 (connection-level) that cause the flow control window to exceed the maximum value of 2³¹-1. The server correctly sends a GOAWAY frame, but the Http2Session object is never cleaned up. This vulnerability affects HTTP2 users on Node.js 20, 22, 24 and 25.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in Node.js Permission Model filesystem enforcement leaves `fs.realpathSync.native()` without the required read permission checks, while all comparable filesystem functions correctly enforce them. As a result, code running under `--permission` with restricted `--allow-fs-read` can still use `fs.realpathSync.native()` to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories. This vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-read` is intentionally restricted.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

An incomplete fix for CVE-2024-36137 leaves `FileHandle.chmod()` and `FileHandle.chown()` in the promises API without the required permission checks, while their callback-based equivalents (`fs.fchmod()`, `fs.fchown()`) were correctly patched. As a result, code running under `--permission` with restricted `--allow-fs-write` can still use promise-based `FileHandle` methods to modify file permissions and ownership on already-open file descriptors, bypassing the intended write restrictions. This vulnerability affects **20.x, 22.x, 24.x, and 25.x** processes using the Permission Model where `--allow-fs-write` is intentionally restricted.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки

Описание

A flaw in V8's string hashing mechanism causes integer-like strings to be hashed to their numeric value, making hash collisions trivially predictable. By crafting a request that causes many such collisions in V8's internal string table, an attacker can significantly degrade performance of the Node.js process. The most common trigger is any endpoint that calls `JSON.parse()` on attacker-controlled input, as JSON parsing automatically internalizes short strings into the affected hash table. This vulnerability affects **20.x, 22.x, 24.x, and 25.x**.


Затронутые продукты
openSUSE Leap 16.0:corepack24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-devel-24.14.1-160000.1.1
openSUSE Leap 16.0:nodejs24-docs-24.14.1-160000.1.1

Ссылки