p PatchFirst

PatchFirst · Latest vulnerabilities

Node.js stack vulnerabilities · Page 59

Vulnerabilities published for Node.js in the last 30 days: 431. 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: 7795

  1. GHSA-464c-974j-9xm6

    Low · CVSS 3.3Fix available

    AWS CDK CodeBuild S3 Log Encryption Boolean Inversion

    ## Summary The AWS Cloud Development Kit (AWS CDK) is an open-source software development framework for defining cloud infrastructure in code and provisioning it through AWS CloudFormation. We identified an issue in which explicitly setting `encrypted: true` on the `S3LoggingOptions` property of an AWS CodeBuild project construct produces the opposite of the intended behavior, disabling encryption on CodeBuild build logs stored in S3. ## Impact The `S3LoggingOptions.encrypted` property in the `aws-codebuild` module uses positive polarity (`true` = encryption ON), but is mapped directly to the CloudFormation `S3LogsConfig.EncryptionDisabled

    • Update to 2.253.0
    Published Updated
  2. CVE-2026-66010

    Medium · CVSS 5.1EPSS 0.21%Fix available

    DOMPurify before 3.4.12 Hook Bypass via CUSTOM_ELEMENT_HANDLING

    DOMPurify before 3.4.12 fails to execute afterSanitizeElements hook for custom elements allowed via CUSTOM_ELEMENT_HANDLING.tagNameCheck, allowing attributes to bypass application security policies. Attackers can preserve sensitive attributes on custom elements that later re-inject them into innerHTML sinks, creating second-order XSS gadgets.

    • Update to 3.4.12
    • Update to 3.4.12+dfsg-1
    Published Updated
  3. CVE-2026-47669

    Critical · CVSS 9.3EPSS 0.52%Fix available

    DbGate: Zip Slip in archive/unzip allows arbitrary file write leading to RCE

    DbGate is cross-platform database manager. In versions 7.1.8 and prior, the `unzipDirectory()` function in `packages/api/src/shell/unzipDirectory.js` (line 27) does not validate that extracted file paths stay within the output directory. A malicious ZIP with `../` entries writes files anywhere on the filesystem. In the default Docker deployment, DbGate runs as root and the `none` auth provider issues JWT tokens without credentials via `POST /auth/login`, so this is exploitable by any network-adjacent attacker. Version 7.1.9 fixes the issue.

    • Update to 7.1.9
    Published Updated
  4. CVE-2026-47670

    Critical · CVSS 9.4EPSS 1.76%Public exploitFix available

    DbGate Vulnerable to Authenticated Remote Code Execution via loadReader functionName code injection

    DbGate is cross-platform database manager. Versions 7.1.8 and prior are vulnerable to authenticated Remote Code Execution (RCE). Any user with valid DbGate credentials can execute arbitrary OS commands as root by exploiting an unsanitized `functionName` parameter in the `/runners/load-reader` endpoint. The `require = null` mitigation is trivially bypassed via dynamic `import()`. Version 7.1.9 contains a patch.

    • Update to 7.1.9
    Published Updated
  5. CVE-2026-47668

    Critical · CVSS 10EPSS 3.88%Public exploitFix available

    DbGate: Unauthenticated Remote Code Execution via JSON Script Runner

    DbGate is cross-platform database manager. In versions 7.1.8 and prior, DbGate's JSON script runner (`POST /runners/start`) allows remote code execution via code injection in the `functionName` parameter of JSON script `assign` commands. The `functionName` value is interpolated directly into dynamically generated JavaScript source code via string concatenation. The generated code is then executed in a forked Node.js child process. Version 7.1.9 contains a patch.

    • Update to 7.1.9
    Published Updated
  6. CVE-2026-65914

    Medium · CVSS 5.3EPSS 0.31%Fix available

    DOMPurify before 3.3.2 Mutation XSS via Re-Contextualization

    DOMPurify before 3.3.2 contains a mutation-XSS vulnerability when sanitized HTML is reinserted into special parsing contexts using innerHTML with wrappers like script, xmp, iframe, noembed, noframes, or noscript. Attackers can craft payloads with closing sequences that break out of the wrapper context during reparsing, reactivating dangerous markup with event handlers to execute JavaScript.

    • Update to 3.3.2
    • Update to 3.3.2+dfsg-1
    Published Updated
  7. CVE-2026-65913

    Medium · CVSS 5.1EPSS 0.32%Fix available

    DOMPurify before 3.3.2 Prototype Pollution via USE_PROFILES

    DOMPurify before 3.3.2 contains a prototype pollution vulnerability in USE_PROFILES mode that allows attackers to bypass attribute filtering by polluting Array.prototype properties. Attackers can set Array.prototype properties like onclick to true, causing DOMPurify to accept event handlers as allowlisted attributes and resulting in DOM-based XSS when sanitized markup is rendered.

    • Update to 3.3.2
    • Update to 3.3.2+dfsg-1
    Published Updated
  8. CVE-2026-65912

    Medium · CVSS 5.1EPSS 0.3%Fix available

    DOMPurify before 3.3.2 URI Validation Bypass via ADD_ATTR

    DOMPurify before 3.3.2 contains a URI validation bypass vulnerability when ADD_ATTR is provided as a predicate function via EXTRA_ELEMENT_HANDLING.attributeCheck. Attackers can supply a predicate that accepts specific attribute and tag combinations to bypass URI-safe validation, allowing unsafe protocols like javascript: to survive sanitization and execute as DOM-based XSS when the link is activated.

    • Update to 3.3.2
    • Update to 3.3.2+dfsg-1
    Published Updated
  9. CVE-2026-65903

    Medium · CVSS 5.1EPSS 0.33%Fix available

    DOMPurify before 3.4.0 ADD_TAGS Function Bypasses FORBID_TAGS

    DOMPurify before 3.4.0 contains a logic error in the ADD_TAGS function where short-circuit evaluation allows forbidden tags to bypass FORBID_TAGS restrictions. Attackers can craft input containing tags listed in FORBID_TAGS that are also added via ADD_TAGS function, causing them to be retained in sanitized output.

    • Update to 3.4.0
    • Update to 3.4.1+dfsg-1
    Published Updated
  10. CVE-2026-65902

    Medium · CVSS 5.3EPSS 0.36%Fix available

    DOMPurify before 3.4.7 Hook Mutation Pollution via allowedTags

    DOMPurify before 3.4.7 passes direct references to the module-level DEFAULT_ALLOWED_TAGS and DEFAULT_ALLOWED_ATTR sets to the uponSanitizeElement and uponSanitizeAttribute hooks via data.allowedTags / data.allowedAttributes when sanitize is called without an explicit cfg.ALLOWED_TAGS / cfg.ALLOWED_ATTR array. A hook that mutates these fields permanently widens the default allow-lists for the lifetime of the DOMPurify instance, so all subsequent default-config sanitize calls inherit the widened defaults and attacker payloads using the poisoned tag/attribute name survive sanitization. removeAllHooks(), clearConfig(), and passing a fresh cfg do

    • Update to 3.4.12+dfsg-1
    • Update to 3.4.7
    Published Updated
  11. CVE-2026-65901

    Medium · CVSS 5.1EPSS 0.29%Fix available

    DOMPurify 3.4.6 Cross-Site Scripting via IN_PLACE nodeName

    DOMPurify through 3.4.6 contains a cross-site scripting vulnerability in IN_PLACE mode that trusts attacker-controlled nodeName on live non-form nodes. Attackers can supply hostile live DOM objects with real script children whose observable nodeName is clobbered to appear as allowed elements, causing scripts to execute when the sanitized tree is inserted into a live document.

    • Update to 3.4.12+dfsg-1
    Published Updated
  12. CVE-2026-65900

    Medium · CVSS 5.1EPSS 0.31%Fix available

    DOMPurify before 3.4.8 Template Expression Injection via RETURN_DOM

    DOMPurify versions >=3.0.0 and before 3.4.8, when configured with SAFE_FOR_TEMPLATES together with a DOM output mode (RETURN_DOM, RETURN_DOM_FRAGMENT, or IN_PLACE), fail to strip template expressions (e.g. ${evil}, {{evil}}, <%evil%>) inside <template> element content. The final normalization/scrub pass (_scrubTemplateExpressions) uses a NodeIterator and node.normalize() that do not descend into template.content, so expressions that only form after adjacent text nodes merge survive sanitization. This bypasses SAFE_FOR_TEMPLATES and can allow a downstream template engine to evaluate attacker-supplied expressions. The string output path is not

    • Update to 3.4.12+dfsg-1
    • Update to 3.4.8
    Published Updated
  13. CVE-2026-65899

    Medium · CVSS 5.1EPSS 0.41%Fix available

    DOMPurify before 3.4.9 Trusted Types Policy State Contamination

    DOMPurify 3.0.0 before 3.4.9 does not reset the retained Trusted Types policy when clearConfig() is called, so a DOMPurify instance reused across trust boundaries stays bound to a previously supplied TRUSTED_TYPES_POLICY. A later caller that requests RETURN_TRUSTED_TYPE output receives a TrustedHTML object created by the old (potentially unsafe) policy rather than a clean default, which can lead to script execution at a Trusted Types sink. Passing TRUSTED_TYPES_POLICY: null on the later call also does not clear the retained policy.

    • Update to 3.4.12+dfsg-1
    • Update to 3.4.9
    Published Updated
  14. CVE-2026-65898

    Medium · CVSS 5.1EPSS 0.21%Fix available

    DOMPurify before 3.4.11 Permanent Attribute Allowlist Pollution via setConfig

    DOMPurify before 3.4.11 fails to clone the ALLOWED_ATTR allowlist when setConfig() is used with an uponSanitizeAttribute hook, allowing the hook to permanently mutate the shared allowlist. Attackers can register a hook that conditionally allows dangerous attributes like onerror for trusted elements, then submit untrusted content that inherits the polluted allowlist and executes event handlers as stored XSS.

    • Update to 3.4.11
    • Update to 3.4.12+dfsg-1
    Published Updated
  15. CVE-2026-14257

    High · CVSS 7.5EPSS 0.64%Fix available

    brace-expansion DoS via unbounded expansion length causing an out-of-memory process crash

    brace-expansion through 5.0.7 is vulnerable to denial of service via memory exhaustion. The expand() function limits the number of results with a max option (default 100,000) but does not bound the length of each result string. By chaining multiple brace groups, an attacker keeps the result count under the limit while making each result progressively longer, so total memory scales with both count and string length until the process hits a fatal, uncatchable out-of-memory error. About 7.5 KB of input ('{a,b}'.repeat(1500)) crashes a default Node.js process. Any application that passes attacker-influenced strings to brace-expansion.expand() - d

    • Update to 1.1.17
    • Update to 2.1.3
    • Update to 3.0.3
    • Update to 5.0.8
    Published Updated
  16. CVE-2026-15074

    High · CVSS 7.5EPSS 0.67%Fix available

    @fastify/static vulnerable to route guard bypass via path traversal

    @fastify/static up to and including version 10.1.0 fails to reject dot-dot path segments in request pathnames before the file-resolution stage. This is a bypass of the earlier fix for CVE-2026-6414, which only covered encoded forward slashes. Because the underlying send library normalizes dot segments before applying its own path-traversal guard, an unauthenticated attacker can bypass any route-scoped middleware and read files inside the static root that live under the guarded URL prefix. The bypass does not allow access outside the configured static root by itself, it defeats route-guard filtering only. The issue is patched in @fastify/stati

    • Update to 10.1.1
    Published Updated
  17. CVE-2026-7120

    Medium · CVSS 5.3EPSS 0.37%Fix available

    @fastify/static vulnerable to Authorization Bypass via Non-Canonical URL Paths

    @fastify/static evaluates the allowedPath callback before normalizing dot segments and duplicate path separators in the pathname used for file resolution. Versions up to and including 10.1.1 are affected. An unauthenticated attacker can bypass allowedPath restrictions by requesting equivalent non-canonical pathnames, causing files that were intended to be denied to be served anyway. The bypass does not allow access outside the configured static root by itself, it defeats path-based filtering only. The issue is patched in @fastify/static 10.1.2.

    • Update to 10.1.2
    Published Updated
  18. CVE-2026-16629

    Medium · CVSS 4.8EPSS 1.08%Fix available

    danger danger-js CLI localGetFileAtSHA.ts danger.git.diffForFile os command injection

    A vulnerability was identified in danger danger-js up to 13.0.7. Impacted is the function danger.git.diffForFile of the file source/platforms/git/localGetFileAtSHA.ts of the component CLI. Such manipulation of the argument File leads to os command injection. The attack needs to be performed locally. Upgrading to version 13.0.8 is recommended to address this issue. The name of the patch is 087a7290264cc6fb7154ea8c2552a7b2cb8b33a3. It is advisable to upgrade the affected component.

    • Update to 13.0.8
    Published Updated
  19. CVE-2026-65599

    Medium · CVSS 5.1EPSS 0.25%Fix available

    n8n before 1.123.64, 2.29.8, and 2.30.1 Credential Exposure via JWT Header

    n8n versions before 1.123.64, 2.29.8, and 2.30.1 contain a credential exposure vulnerability: when configured with a Google Service Account key, the full PEM private key was mistakenly placed in the JWT header's kid field (intended only for a key identifier). Because JWT headers are Base64-encoded rather than encrypted, the private key could be recovered by anything that logged or inspected the JWT. An attacker who obtained the key could impersonate the service account and access or modify any Google Cloud resource it was authorized to use. Only instances using Google Service Account credentials are affected.

    • Update to 1.123.64
    • Update to 2.29.8
    • Update to 2.30.1
    Published Updated
  20. CVE-2026-65598

    High · CVSS 8.9EPSS 0.34%Fix available

    n8n before 1.123.64 Remote Code Execution via Git Clone

    n8n before 1.123.64, 2.29.8, and 2.30.1 contains a TOCTOU race condition in the Git node's clone operation that allows authenticated users to bypass path restrictions by swapping a directory for a symlink after the path is validated but before the clone runs. This lets an attacker plant a crafted repository in the community node directory, which n8n loads as a custom node on the next restart, executing arbitrary JavaScript on the server. Both self-hosted and cloud instances are affected.

    • Update to 1.123.64
    • Update to 2.29.8
    • Update to 2.30.1
    Published Updated

Check your server

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

Check your server →