p PatchFirst

PatchFirst · Свежие уязвимости

Node.js: уязвимости стека · Страница 22

За последние 30 дней в Node.js опубликовано уязвимостей: 415; в каталоге KEV: 0.

Фильтры уязвимостей
Node.js

Ранние предупреждения

Свежие сообщения об уязвимостях из анонсов разработчиков и новостей безопасности. Предупреждения не меняют рейтинг защищённости.

  1. node.js

    Исправление не опубликовано

    Node.js: отказ в обслуживании

    По данным GitHub Advisory Database, в Node.js найдена уязвимость — отказ в обслуживании (CVE-2026-109932). Точные затронутые версии не указаны. Версия с исправлением в сообщении не указана.

    Что сделать сейчас: Проверьте, вышло ли обновление Node.js с исправлением, и установите его.

    CVE-2026-109932

  2. node.js

    Исправление не опубликовано

    Node.js: удалённое выполнение кода

    По данным OpenNet, в Node.js найдена уязвимость — удалённое выполнение кода (CVE-2026-111497). Точные затронутые версии не указаны. Версия с исправлением в сообщении не указана.

    Что сделать сейчас: Проверьте, вышло ли обновление Node.js с исправлением, и установите его.

    CVE-2026-111497

Уязвимостей: 7772

  1. GHSA-r3ph-w7gj-g6xm

    Средний · CVSS 5.3Есть исправление

    js-yaml: maxTotalMergeKeys does not limit CPU use for empty merge sources

    ## Summary `maxTotalMergeKeys` does not count empty mappings. An attacker can repeatedly merge a large sequence of them and consume significant CPU without reaching the configured limit. ## Example ```yaml arr: &arr [{}, {}, {}, ...] # N empty mappings targets: - <<: *arr # repeated K times ``` For every target, the loader iterates all `N` elements of `arr`. This results in `O(N * K)` work while `totalMergeKeys` remains unchanged. ## PoC ```js import { performance } from 'node:perf_hooks' import { load, YAML11_SCHEMA } from 'js-yaml' const n = 20000 const src = 'arr: &arr [' + '{},'.repeat(n).slice(0, -1) + ']\n' +

    • Обновитесь до 5.4.1
    Опубликовано Обновлено
  2. CVE-2026-102677

    Высокий · CVSS 7.8EPSS 0,1%Есть исправление

    Electron: Sandboxed preload code cache can be poisoned by a compromised renderer

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. From 42.3.3 until 42.10.0, 43.5.0, and 44.0.0-beta.6, Electron's sandboxed preload code cache did not verify that a cached entry matched the preload it was served for. A compromised renderer could write attacker-controlled cache data and cause Electron to reuse it for a later load, executing the renderer's code in the more privileged preload context. The issue affects applications that load untrusted content. This issue is fixed in versions 42.10.0, 43.5.0, and 44.0.0-beta.6.

    • Обновитесь до 42.10.0
    • Обновитесь до 43.5.0
    • Обновитесь до 44.0.0-beta.6
    Опубликовано Обновлено
  3. CVE-2026-102676

    Высокий · CVSS 8.3EPSS 0,48%Есть исправление

    Electron: <webview> can enable Node.js integration in Web Workers despite embedder restrictions

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5, an Electron <webview> guest could enable nodeIntegrationInWorker for its Web Workers even when the unsandboxed embedder had Node.js integration disabled, allowing untrusted guest content to create a Node-enabled worker with more privilege than the embedder granted. Applications that do not enable the <webview> tag or that keep the embedder sandboxed are not affected. This issue is fixed in versions 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5.

    • Обновитесь до 41.10.6
    • Обновитесь до 42.9.2
    • Обновитесь до 43.4.1
    • Обновитесь до 44.0.0-beta.5
    Опубликовано Обновлено
  4. CVE-2026-102675

    Высокий · CVSS 7.4EPSS 0,21%Есть исправление

    Electron: File and HTTP protocol handlers allow cross-origin reads without corsEnabled

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5, responses served through protocol.registerFileProtocol or protocol.registerHttpProtocol for a custom scheme registered with supportFetchAPI enabled but corsEnabled disabled could remain script-readable across origins. This residual issue completes the remediation for CVE-2026-70604. Applications are affected only when they expose such a scheme and load untrusted content in the same session. Schemes intentionally registered with corsEnabled enabled remain cross-origin readable by design. T

    • Обновитесь до 41.10.6
    • Обновитесь до 42.9.2
    • Обновитесь до 43.4.1
    • Обновитесь до 44.0.0-beta.5
    Опубликовано Обновлено
  5. CVE-2026-102674

    Высокий · CVSS 8.2EPSS 0,24%Есть исправление

    Electron: Windows opened from a sandboxed top-level document do not inherit its sandbox restrictions

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5, windows opened from a sandboxed top-level document did not inherit that document's active HTML sandbox restrictions. Untrusted content in a sandboxed top-level document that was permitted to open popups could therefore create a window with the Electron application's full origin instead of the restricted origin intended by the sandbox. Applications that deny such popups with setWindowOpenHandler are not affected. This issue is fixed in versions 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5.

    • Обновитесь до 41.10.6
    • Обновитесь до 42.9.2
    • Обновитесь до 43.4.1
    • Обновитесь до 44.0.0-beta.5
    Опубликовано Обновлено
  6. CVE-2026-102673

    Высокий · CVSS 8.2EPSS 0,13%Есть исправление

    Electron drops inherited HTML sandbox restrictions for popups opened through OpenURLFromTab

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.4, 42.5.2, and 43.0.0, popups opened from a sandboxed iframe through Electron's OpenURLFromTab navigation path, including links using target="_blank" or a middle-click, did not receive the inherited HTML sandbox restrictions. An untrusted iframe using the allow-scripts allow-popups configuration could therefore open a popup with the embedding application's full origin, exposing that origin's cookies, storage, and same-origin scripting capabilities. Applications that do not embed untrusted content in sandboxed iframes are not

    • Обновитесь до 41.10.4
    • Обновитесь до 42.5.2
    • Обновитесь до 43.0.0
    Опубликовано Обновлено
  7. CVE-2026-97711

    Низкий · CVSS 2.3EPSS 0,32%Есть исправление

    Serialize JavaScript: Cross-site scripting (XSS) via unescaped </script> in serialized function bodies

    Serialize JavaScript serializes JavaScript values to a superset of JSON that includes regular expressions and functions. From 7.1.1 until 7.1.2, function values serialized by serialize-javascript are not fully protected against script-closing tags in attacker-influenced function source because SCRIPT_CLOSE_REGEXP can consume a second closing tag inside one match. When the serialized function is embedded in a script element, the surviving closing tag terminates the element early and causes the remaining output to be parsed as HTML, enabling cross-site scripting in the page origin. Only function values are affected; ordinary data values and opt

    • Обновитесь до 7.1.2
    • Обновитесь до 7.1.2+~5.0.4-1
    Опубликовано Обновлено
  8. CVE-2026-102600

    Высокий · CVSS 7.5EPSS 0,38%Есть исправление

    Socket.IO: Prototype Pollution via Unsafe Client Session Lookup

    Socket.IO enables bidirectional and low-latency communication for every platform. Prior to 0.1.1, @socket.io/cluster-engine uses inherited object properties when looking up attacker-controlled session IDs in clustered deployments. Special property names such as __proto__ or constructor can resolve through the object prototype chain instead of identifying an actual connected client, causing the Node.js process to crash and resulting in denial of service. Applications that do not use @socket.io/cluster-engine are not affected. This issue is fixed in version 0.1.1.

    • Обновитесь до 0.1.1
    Опубликовано Обновлено
  9. CVE-2026-102422

    Критический · CVSS 9.2EPSS 0,38%Публичный эксплойтЕсть исправление

    shell-quote `quote()` command injection via a line terminator in a token after a `{ comment }` token

    shell-quote's `quote()` function emits a `{ comment }` token as `#` followed by its text, which comments out the rest of the shell line, including the opening quote of any later string token. A line terminator (\n, \r, U+2028, U+2029) in that later string therefore ends the comment, and the rest of the string is parsed as shell input: `quote(['echo', 'ok', { comment: 'x' }, 'a\nid;#'])` runs `id` in sh, bash, dash, ksh and zsh. `parse()` emits a comment token for a `#` in the middle of a word (for example `http://example.com/#frag`), so callers that combine `parse()` output with another untrusted string, such as `quote(parse(untrustedCommand)

    • Обновитесь до 1.11.0
    • Обновитесь до 1.12.0-1
    • Обновитесь до 1.7.4+~1.7.1-1+deb13u2
    Опубликовано Обновлено
  10. CVE-2026-102414

    Средний · CVSS 6.3EPSS 0,34%Публичный эксплойтЕсть исправление

    pbkdf2 rehashes long passwords on every iteration, enabling denial of service

    pbkdf2 through 3.1.6 re-hashes passwords longer than the digest's block size on every iteration in its JavaScript fallback (lib/sync.js). A password longer than the block size (64 bytes, or 128 bytes for sha384 and sha512) is passed to HMAC as the key on every iteration, and HMAC hashes such keys in full each time. Cost is therefore O(iterations × password length), and a long password can block the event loop. The fallback is used by pbkdf2Sync and pbkdf2 on Node.js before 0.12, on Bun (1.0.0 through 1.1.34, and 1.2.6 and later), and on Deno 2.9.0 and later, because their native pbkdf2Sync fails the library's feature check. It is also used wh

    • Обновитесь до 3.1.7
    • Обновитесь до 3.1.7+~3.1.2-1
    Опубликовано Обновлено
  11. CVE-2026-102281

    Высокий · CVSS 7.5EPSS 0,59%Есть исправление

    Nest: Remote process termination via a deeply nested microservice message pattern

    Nest is a framework for building scalable Node.js server-side applications. Prior to 11.2.4 and 12.0.2, a single message with a deeply nested object in its pattern can terminate a NestJS microservice using the TCP or RabbitMQ transport. ServerTCP#handleMessage and ServerRMQ#handleMessage pass a client-controlled non-string pattern to JSON.stringify to derive the handler lookup key; sufficiently deep nesting throws RangeError: Maximum call stack size exceeded, and the unhandled promise rejection terminates Node.js under its default behavior. An attacker who can reach the TCP port or publish to the consumed RabbitMQ queue or exchange can crash

    • Обновитесь до 11.2.4
    • Обновитесь до 12.0.2
    Опубликовано Обновлено
  12. CVE-2026-102278

    Высокий · CVSS 7.5EPSS 0,49%Есть исправление

    brace-expansion: DoS via uncontrolled recursion on nested brace groups causing stack exhaustion

    The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.20, 2.1.6, 3.0.8, and 5.0.11, deeply nested brace groups cause expand_() to recurse once per nesting level at comma-member and single-set expansion sites, exhausting the native stack before output limits can apply and potentially terminating the Node.js process. expand_ performs uncontrolled recursion for nested brace alternatives and single-part sets. deeply nested brace groups supplied as an untrusted pattern. expand_ is affected. expand is affected. Comma members is affected. Single set is affected. native stack exhaustion during nes

    • Обновитесь до 1.1.20
    • Обновитесь до 2.1.6
    • Обновитесь до 2.1.7+~1.1.2-1
    • Обновитесь до 3.0.8
    • Обновитесь до 5.0.11
    Опубликовано Обновлено
  13. CVE-2026-102277

    Средний · CVSS 5.3EPSS 0,43%Есть исправление

    brace-expansion: Quadratic-time expansion of the `{a},b}` rewrite causes CPU denial of service

    The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.21, 2.1.7, 3.0.9, and 5.0.12, the expand function handles untrusted {a},b}-shaped patterns with many trailing closing braces by restarting its scan once for each trailing closing brace. The successive full-input rescans with linear working-string growth cause quadratic CPU time and memory pressure that can block the Node.js event loop. The process eventually recovers, making the impact a recoverable CPU denial of service. This issue is fixed in versions 1.1.21, 2.1.7, 3.0.9, and 5.0.12.

    • Обновитесь до 1.1.21
    • Обновитесь до 2.1.7
    • Обновитесь до 2.1.7+~1.1.2-1
    • Обновитесь до 3.0.9
    • Обновитесь до 5.0.12
    Опубликовано Обновлено
  14. CVE-2026-102276

    Высокий · CVSS 7.5EPSS 0,46%Есть исправление

    brace-expansion: DoS via uncontrolled recursion in parseCommaParts causing stack exhaustion

    The brace-expansion library generates arbitrary strings containing a common prefix and suffix. Prior to 1.1.19, 2.1.5, 3.0.7, and 5.0.10, crafted brace patterns can exhaust the native stack in parseCommaParts because parseCommaParts recursively processes the remainder once per brace group and uses push.apply to pass every element of a very large comma-part array as a function argument. Patterns containing many comma-separated brace groups trigger the recursive path, while the large array triggers the argument-array path without deep recursion. These paths cause recursive and argument-array native stack exhaustion before max or maxLength can l

    • Обновитесь до 1.1.19
    • Обновитесь до 2.1.5
    • Обновитесь до 2.1.7+~1.1.2-1
    • Обновитесь до 3.0.7
    • Обновитесь до 5.0.10
    Опубликовано Обновлено
  15. CVE-2026-101916

    Высокий · CVSS 7.4EPSS 0,21%Есть исправление

    @grpc/grpc-js: In certain configurations, getAuthContext can return unauthorized certificates as though they were authorized

    @grpc/grpc-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to 1.13.6 and 1.14.5, getAuthContext does not distinguish authorized from unauthorized peer certificates when server credentials set requireClientCertificate to false. When applications use the returned authentication context, they can treat an unauthorized certificate as authorized, causing improper authentication. @grpc/grpc-js-xds can reach this condition when RBAC authentication is enabled in affected configurations. This issue is fixed in version 1.14.5 and 1.13.6.

    • Обновитесь до 1.13.6
    • Обновитесь до 1.14.5
    Опубликовано Обновлено
  16. CVE-2026-101915

    Низкий · CVSS 3.7EPSS 0,25%Есть исправление

    @grpc/grpc-js: The server transmits some error messages thrown by method handlers to the client in status messages

    @grpc/grpc-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to 1.13.6 and 1.14.5, when an application method handler throws an uncaught error, the server includes its error message in the status message sent to the client. The thrown error message is transmitted to the client, causing sensitive information disclosure when the message contains sensitive data. This issue is fixed in versions 1.13.6 and 1.14.5.

    • Обновитесь до 1.13.6
    • Обновитесь до 1.14.5
    Опубликовано Обновлено
  17. CVE-2026-101914

    Средний · CVSS 6.5EPSS 0,25%Есть исправление

    @grpc/grpc-js: The exact path match matcher incorrectly only applies a prefix match for case-insensitive matches

    @grpc/grpc-js implements the core functionality of gRPC purely in JavaScript, without a C++ addon. Prior to 1.13.1 and 1.14.1, the exact path (method name) matcher used by RBAC performs a prefix comparison instead of an equality comparison when case-insensitive matching is enabled. If one service method name prefixes another and the methods have different access rules, a request for the longer method can match the shorter method's rule and cause incorrect authorization. This issue is fixed in versions 1.13.1 and 1.14.1.

    • Обновитесь до 1.13.1
    • Обновитесь до 1.14.1
    Опубликовано Обновлено
  18. CVE-2026-101913

    Средний · CVSS 6.3EPSS 0,39%Есть исправление

    ip-address: Address6.isLinkLocal() recognizes fe80::/64 rather than fe80::/10, allowing SSRF and trust-boundary bypass to on-link hosts

    ip-address is a library for parsing and manipulating IPv4 and IPv6 addresses in JavaScript. Prior to 10.5.1, the Address6 isLinkLocal method in src/ipv6.ts recognizes only fe80::/64 instead of the complete fe80::/10 IPv6 link-local range. An attacker-controlled address elsewhere in fe80::/10 can therefore pass a trust-boundary check that relies on isLinkLocal. The same address is identified as link-local by getType and getScope, exposing the inconsistent classification. A successful bypass can reach an on-link host outside the intended trust boundary. This issue is fixed in version 10.5.1.

    • Обновитесь до 10.5.1
    • Обновитесь до 10.7.2-1
    Опубликовано Обновлено
  19. CVE-2026-55156

    Средний · CVSS 5.3EPSS 0,45%Есть исправление

    Token Optimizer MCP: Unauthenticated Path Traversal in Dashboard Session Log API Endpoints

    Token Optimizer MCP measures token savings per AI coding agent, optimizes context, and shares a live local knowledge graph across 16 CLI clients. Prior to version 5.1.0, the dashboard HTTP server in token-optimizer-mcp exposes /api/session-summary and /api/session-events with no authentication middleware — any network-accessible client can reach them without credentials. Both handlers concatenate the caller-supplied sessionId query parameter directly into a filesystem path via path.join, and Node.js normalizes .. segments at resolution time, allowing an unauthenticated attacker to read any .jsonl file reachable from the server's filesystem. T

    • Обновитесь до 5.1.0
    Опубликовано Обновлено
  20. CVE-2026-55157

    Высокий · CVSS 8.4EPSS 0,88%Есть исправление

    Token Optimizer MCP: OS command injection in smart_user via username in get-user-info

    Token Optimizer MCP measures token savings per AI coding agent, optimizes context, and shares a live local knowledge graph across 16 CLI clients. Prior to version 5.1.0, token-optimizer-mcp is vulnerable to OS command injection in the smart_user tool. Any MCP client that can call the smart_user tool can execute arbitrary shell commands through the username argument of the get-user-info operation. The commands execute with the privileges of the user running the token-optimizer-mcp server. This issue has been patched in version 5.1.0.

    • Обновитесь до 5.1.0
    Опубликовано Обновлено

Проверьте свой сервер

Сопоставьте установленный стек и версии со свежими базами уязвимостей.

Проверьте свой сервер →