p PatchFirst

PatchFirst · Vulnerabilidades recientes

Vulnerabilidades de la pila Node.js

Vulnerabilidades publicadas para Node.js en los últimos 30 días: 397. Incluidas en el catálogo KEV: 0.

RSS ↗
Filtrar vulnerabilidades
Node.js

Vulnerabilidades: 7698

  1. GHSA-h4fr-cmh5-qr62

    Baja · CVSS 3.3Corrección disponible

    Fallow: A `.*` glob segment let an analyzed repository make Fallow test paths in the parent of the project root

    ### Impact Fallow expands some globs from the analyzed repository on disk. Before 3.34.0, a segment such as `.*`, `.?` or `..*` in such a glob also matched the special `..` entry. The `glob` crate tests `..` against a segment that starts with a literal `.`. Fallow validates plugin glob patterns and refuses absolute paths and `..` segments, but these segments passed that validation. The attacker controls the repository content. The attacker must also be able to read the Fallow output, for example a CI log or a pull request comment. Then the attacker can learn if a file or directory exists in the parent of the project root: - A plugin `fileE

    • Actualiza a 3.34.0
    Publicación Actualización
  2. GHSA-f2hq-32vh-53cc

    Alta · CVSS 7.5Corrección disponible

    postal-mime: Quadratic CPU consumption when decoding a header of many joinable RFC 2047 base64 encoded words

    ### Impact Decoding a header that holds a long run of joinable RFC 2047 base64 encoded words, such as `=?utf-8?B?QUJD?=` repeated tens of thousands of times in a `Subject`, `From`, `To`, a filename or a description, took time quadratic in the number of words. The join check ran a regex over the text joined so far for every word, which flattens the accumulated string each time. A single well formed message of about 1.6 MB blocked the event loop for one to twenty seconds depending on the host, and inline `message/rfc822` parts multiplied the cost, since each nested message carried its own header budget. Any application that parses untrusted m

    • Actualiza a 4.0.8
    Publicación Actualización
  3. GHSA-8c8m-p3m8-cjg8

    Media · CVSS 6.5Corrección disponible

    Nodemailer: A nested comment ends early in addressparser, releasing the rest of the comment as a recipient

    ### Vulnerability summary RFC 5322 comments nest. addressparser ended a comment at the first `)`, including the one that closes a nested comment, and parsed the rest of the outer comment as header text. `Victim (x(y) <[email protected]>) <[email protected]>` names `[email protected]` with `x(y) <[email protected]>` as a comment, and Nodemailer read it as the address `[email protected]`. This is the same shape as the escaped parenthesis fixed in 10.1.2, reached through nesting instead of a quoted-pair. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of an address that an application passes to Nodemailer, or the From or To

    • Actualiza a 10.1.4
    Publicación Actualización
  4. GHSA-m943-m63m-w62w

    Media · CVSS 6.5Corrección disponible

    Nodemailer: A ";" inside a quoted string or comment ends an address group early in addressparser, turning display text into a recipient

    ### Vulnerability summary addressparser ends an RFC 5322 group at the first `;`, including one inside a quoted display name or a comment. The text after it is parsed again as top level recipients with the quoting flipped, so text that every conformant parser reads as a display name or comment becomes a live address. `G: (a; <[email protected]>) <[email protected]>;` names only `[email protected]`, and Nodemailer read it as the single recipient `[email protected]`. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of an address field that an application passes to Nodemailer, or the header of an inbound message parsed wi

    • Actualiza a 10.1.4
    Publicación Actualización
  5. GHSA-85x2-q946-cp5h

    Media · CVSS 6.5Corrección disponible

    Nodemailer: A ">" inside a quoted local part ends an angle-addr early in addressparser, delivering to a domain the header does not name

    ### Vulnerability summary addressparser ends an angle-addr at the first `>` it sees, including one inside a quoted local part, a comment or a domain literal. The domain is then read off the text in front of that `>`. `<"[email protected]>"@good.com>` is the mailbox `"[email protected]>"@good.com` under RFC 5322, and Nodemailer read it as an address at `evil.com`. The unbracketed spelling of the same value was already read correctly. Affected: 3.0.0 through 10.1.3. ### Attacker capabilities The attacker controls the text of a recipient or sender address that an application passes to Nodemailer, for example a To value entered in a contact or invite form,

    • Actualiza a 10.1.4
    Publicación Actualización
  6. CVE-2026-115895

    Alta · CVSS 8.8Código de explotación públicoCorrección disponible

    Happy DOM: Incomplete fix for CVE-2026-33943: unsanitized import alias leads to host code execution

    Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. From 17.0.0 until 21.0.4, packages/happy-dom/src/module/ECMAScriptModuleCompiler.ts accepts a named ESM import alias without validating that it is a JavaScript binding identifier before inserting it into a generated destructuring binding. With enableJavaScriptEvaluation enabled, attacker-controlled HTML or module source can use an invalid alias that becomes a valid default initializer after compilation, causing the generated JavaScript to execute in the Node.js host process. The demonstrated reachable path uses a JSON module import attribute, which

    • Actualiza a 21.0.4
    Publicación Actualización
  7. GHSA-2rqm-h6hv-g79v

    Media · CVSS 6.1Corrección disponible

    odf-kit has HTML injection leading to XSS in odsToHtml() via unescaped style attribute values

    ### Summary ODF style values are interpolated into `style="..."` attributes without HTML-escaping in odf-kit's ODS to-HTML renderer (`odsToHtml()`). A double-quote character inside an attacker-controlled style value breaks out of the attribute, allowing arbitrary HTML/attribute injection — and therefore script execution (XSS) — from a crafted `.ods` file wherever the rendered output is inserted as HTML, which is the documented purpose of the function. ### Details Two emission sites in `src/ods/to-html/html-renderer.ts` (before 0.14.0, `src/ods-reader/html-renderer.ts`) write document-controlled values into a `style` attribute without escap

    • Actualiza a 0.14.2
    Publicación Actualización
  8. CVE-2026-115570

    Alta · CVSS 7.4Corrección disponible

    Electron: Mitigation for compromised eMudhra intermediate certificates

    Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 42.11.16, 43.8.1, 44.9.1, and 45.0.0-beta.6, Electron does not block compromised eMudhra intermediate certificates in Chromium networking, Node.js tls, Node.js https, or Node.js fetch. An attacker who holds a certificate issued through one of these intermediates and can intercept network traffic can impersonate a TLS server to an affected application. This issue is fixed in versions 42.11.16, 43.8.1, 44.9.1, and 45.0.0-beta.6.

    • Actualiza a 42.11.16
    • Actualiza a 43.8.1
    • Actualiza a 44.9.1
    • Actualiza a 45.0.0-beta.6
    Publicación Actualización
  9. CVE-2026-115569

    Baja · CVSS 3.3Corrección disponible

    Fallow: Jest and Vitest `projects` entries let an analyzed repository make Fallow read files outside the project root

    Fallow is a codebase intelligence tool for TypeScript and JavaScript. From 2.68.0 until 3.34.0, Fallow follows attacker-controlled Jest projects paths outside the project root through absolute paths, parent segments, dot-prefixed wildcard globs, or symlinks. In version 3.33.1, the same behavior also affects Vitest test.projects paths, Vitest inline-project extends paths, and symlinked script --config paths. Fallow parses the outside files as test-runner configuration and uses them to credit dependencies, setup files, and JSX import sources, which can change unused dependency and unused file findings in CI or agent analysis. The outside file c

    • Actualiza a 3.34.0
    Publicación Actualización
  10. CVE-2026-106069

    Alta · CVSS 7.4Código de explotación públicoSin corrección publicada

    CVE-2026-106069

    A flaw in Node.js TLS hostname verification can cause a server certificate to be validated against a different IP address than the one the client connected to, when the host is a non-canonical IPv4 literal with a leading zero, such as `0127.0.0.1`. `tls.checkServerIdentity()` normalizes the host following the WHATWG URL rules, which read a leading-zero octet as octal (`0127.0.0.1` becomes `87.0.0.1`), while the connection is made through the operating system resolver, which on some platforms such as macOS reads it as decimal (`127.0.0.1`). A server at the connected address can then be authenticated with a certificate issued for another IP ad

    Publicación Actualización
  11. CVE-2026-105481

    Media · CVSS 6.5Código de explotación públicoSin corrección publicada

    CVE-2026-105481

    A flaw in Node.js HTTP Agent connection reuse can cause a client to accept as valid a response that was sent before the client has sent the request. This is an incomplete fix of CVE-2026-48931. The guard that destroys idle keep-alive sockets when unexpected data arrives only runs when the event loop polls for I/O. If an unsolicited response has already reached the socket but has not been read yet when the socket is handed to a new request, for example because the event loop was busy with synchronous work, the guard is removed without seeing it and the data is parsed as the response to the new request. This vulnerability affects Node.js **26

    Publicación Actualización
  12. CVE-2026-105482

    Alta · CVSS 7.4Código de explotación públicoSin corrección publicada

    CVE-2026-105482

    A flaw in Node.js DNS resolution allows hostnames containing a NUL byte to be silently truncated by the dns.resolve*() functions and dns.reverse(). This is an incomplete fix of CVE-2026-48930, which only covered dns.lookup() and the net/tls host options. Because the name is passed to c-ares as a C string, resolving attacker.example\0.trusted.example queries attacker.example and returns its records without any error. Applications that validate a hostname, for example against a domain allowlist, and then resolve it with dns.resolve*() can act on records for a different name than the one they validated. This vulnerability affects Node.js 2

    Publicación Actualización
  13. CVE-2026-106074

    Media · CVSS 4.8Código de explotación públicoSin corrección publicada

    CVE-2026-106074

    A flaw in Node.js `crypto` causes the internal entropy caches used by `crypto.randomUUID()`, `crypto.randomUUIDv7()`, and `crypto.randomInt()` to be saved into user-land startup snapshots (`--build-snapshot`) and single executable applications built with `useSnapshot`. If any of these functions, or an API that relies on them such as `URL.createObjectURL()`, is called while the snapshot is built, every process started from that snapshot returns the same values until the cache is refilled: up to 127 UUIDs and about 1,000 `randomInt()` values. Identifiers expected to be unique can collide across processes, and values issued by one process can b

    Publicación Actualización
  14. CVE-2026-106071

    Baja · CVSS 3.6Código de explotación públicoSin corrección publicada

    CVE-2026-106071

    A flaw in Node.js Permission Model filesystem enforcement can grant access to paths that do not match a wildcard `--allow-fs-read` or `--allow-fs-write` rule. When the requested path is shorter than the prefix of a wildcard grant, the radix tree lookup stops comparing early and treats the path as a match. For example, `--allow-fs-read=/etc/passwd.*` also allows reading `/etc/passwd`. This requires the wildcard grant to sit directly under the root of the permission tree, for example when it is the only grant for that scope. This is a different root cause from CVE-2026-58043. This vulnerability affects Node.js **26.x**.

    Publicación Actualización
  15. CVE-2026-106072

    Media · CVSS 6.7Código de explotación públicoSin corrección publicada

    CVE-2026-106072

    A flaw in Node.js TLS hostname verification allows a certificate with only a DNS SAN to authenticate an IP endpoint when the client connects using a non-canonical IPv4 spelling, such as `0177.0.0.1`, `0x7f.0.0.1`, `2130706433` or `127.1`. `tls.checkServerIdentity()` did not classify these hosts as IP addresses, but normalized them to their canonical form and matched the result against the certificate DNS names. A certificate containing `DNS:127.0.0.1` and no `IP Address:127.0.0.1` SAN was therefore accepted, while the same certificate is correctly rejected for `127.0.0.1`. Exploitation requires a certificate with a numeric DNS SAN issued by

    Publicación Actualización
  16. CVE-2026-105483

    Alta · CVSS 7.4Código de explotación públicoSin corrección publicada

    CVE-2026-105483

    A flaw in Node.js TLS hostname verification allows a certificate without a matching IP address SAN to authenticate a connection to an IPv4 address when the host is written with non-ASCII characters, such as fullwidth digits (`127.0.0.1`). `tls.checkServerIdentity()` did not recognize such hosts as IP addresses, even though they normalize and resolve to a regular IPv4 address, and matched them against the certificate DNS names and Common Name instead. A certificate containing `DNS:127.0.0.1` or `DNS:*.0.0.1` could therefore be accepted for an IP endpoint it was not issued for. This is a regression introduced after the fix for CVE-2026-48618.

    Publicación Actualización
  17. CVE-2026-106070

    Baja · CVSS 3.7Código de explotación públicoSin corrección publicada

    CVE-2026-106070

    A flaw in the Node.js `zlib.ZipFile` API can cause it to return bytes that do not belong to the requested entry after the local and central header validation fails. When `zipEntry.modified` is read on an archive whose local header does not match its central directory, either directly or while compacting the archive, the validation error is caught but the parsed local header is left cached without a content offset. A later content read then returns attacker-controlled bytes from the start of the file instead of rejecting the archive, and CRC-32 verification still passes because the attacker controls the central directory CRC. A Node.js-based

    Publicación Actualización
  18. CVE-2026-106073

    Baja · CVSS 3.3Código de explotación públicoSin corrección publicada

    CVE-2026-106073

    A flaw in Node.js Permission Model filesystem enforcement leaves `fs.realpathSync()` without the required read permission checks. This is an incomplete fix of CVE-2026-21715, which only covered `fs.realpathSync.native()`. As a result, code running under `--permission` with restricted `--allow-fs-read` can still use `fs.realpathSync()` to check file existence, resolve symlink targets, and enumerate filesystem paths outside of permitted directories. This vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.

    Publicación Actualización
  19. CVE-2026-58497

    Alta · CVSS 8.6Corrección disponible

    Uni-CLI: Legacy HTTP MCP transport accepted browser-originated localhost requests

    Uni-CLI gives people and agents one command interface for websites, browsers, desktop applications, local tools, and MCP. Prior to version 0.225.2, Uni-CLI exposed the legacy JSON-RPC-over-HTTP MCP transport on loopback without validating browser Origin headers before routing requests. A malicious web page could send a CORS simple POST request, such as text/plain, to the local /mcp endpoint and deliver a JSON-RPC body to the dispatcher. If the user had started the local MCP HTTP transport, that page could drive tools/call requests against the user's local Uni-CLI server. The Streamable HTTP transport already enforced this browser-to-localhost

    • Actualiza a 0.225.2
    Publicación Actualización
  20. CVE-2026-115478

    Alta · CVSS 7.1Corrección disponible

    obsidian-tc: Memory-lifecycle tools overwrite unowned notes or partially commit lifecycle changes

    obsidian-tc is a governed, agent-ready Model Context Protocol server for Obsidian vaults. From 1.0.1 until 1.31.4, `create_entity`, `link_entities`, `rename_entity`, `unlink_entities` and `delete_entity` regenerate memory notes from SQLite at the computed `memory/<type>/<name>.md` path without reliably preserving note ownership or the consistency of a failed lifecycle operation. During shared materialization, a hand-authored note or an orphan left by a different entity whose name sanitized to the same path could have its entire body overwritten on the next write naming that type and name, with non-owned frontmatter preserved. `rename_entity`

    • Actualiza a 1.31.4
    Publicación Actualización

Comprueba tu servidor

Compara tu pila y las versiones instaladas con las bases actuales de vulnerabilidades.

Comprueba tu servidor →