n8n - 💡(How to fix) Fix [Security] [email protected] vulnerable to CVE-2026-44990 (CRITICAL) — used by @n8n/nodes-langchain

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

@n8n/n8n-nodes-langchain transitively pins [email protected], which is vulnerable to CVE-2026-44990 (CRITICAL — XSS via <xmp> raw-text passthrough). The fix is available upstream in sanitize-html >= 2.17.4. As of n8n 2.20.9, the bundled sanitize-html version is still 2.12.1.

Root Cause

  • CVE ID: CVE-2026-44990
  • Severity: CRITICAL
  • Type: Cross-Site Scripting (XSS)
  • Root cause: When the input contains an <xmp> element, sanitize-html previously passed its inner content through as raw text without sanitisation. An attacker can smuggle arbitrary HTML/script through this passthrough, bypassing the allow-list filter.
  • Fix: Patched upstream in [email protected]. (No corresponding public issue in apostrophecms/sanitize-html; appears to be a silent patch in the 2.17.x line.)

Fix Action

Fix / Workaround

  • CVE ID: CVE-2026-44990
  • Severity: CRITICAL
  • Type: Cross-Site Scripting (XSS)
  • Root cause: When the input contains an <xmp> element, sanitize-html previously passed its inner content through as raw text without sanitisation. An attacker can smuggle arbitrary HTML/script through this passthrough, bypassing the allow-list filter.
  • Fix: Patched upstream in [email protected]. (No corresponding public issue in apostrophecms/sanitize-html; appears to be a silent patch in the 2.17.x line.)

Code Example

trivy image --severity CRITICAL --exit-code 1 n8nio/n8n:2.20.9
sanitize-html  2.12.1  CRITICAL  CVE-2026-44990  Fixed in: 2.17.4

---

docker run --rm --entrypoint sh n8nio/n8n:2.20.9 -c \
  "cat /usr/local/lib/node_modules/n8n/node_modules/.pnpm/[email protected]/node_modules/sanitize-html/package.json | grep version"
# "version": "2.12.1"
RAW_BUFFERClick to expand / collapse

Summary

@n8n/n8n-nodes-langchain transitively pins [email protected], which is vulnerable to CVE-2026-44990 (CRITICAL — XSS via <xmp> raw-text passthrough). The fix is available upstream in sanitize-html >= 2.17.4. As of n8n 2.20.9, the bundled sanitize-html version is still 2.12.1.

Affected component

  • Package: sanitize-html
  • Bundled version: 2.12.1
  • Dependency path: n8n → @n8n/n8n-nodes-langchain → sanitize-html
  • Loaded at: @n8n/n8n-nodes-langchain/dist/nodes/trigger/ChatTrigger/templates.js

Vulnerability

  • CVE ID: CVE-2026-44990
  • Severity: CRITICAL
  • Type: Cross-Site Scripting (XSS)
  • Root cause: When the input contains an <xmp> element, sanitize-html previously passed its inner content through as raw text without sanitisation. An attacker can smuggle arbitrary HTML/script through this passthrough, bypassing the allow-list filter.
  • Fix: Patched upstream in [email protected]. (No corresponding public issue in apostrophecms/sanitize-html; appears to be a silent patch in the 2.17.x line.)

How we observed this

Trivy CRITICAL scan against n8nio/n8n:2.20.9:

trivy image --severity CRITICAL --exit-code 1 n8nio/n8n:2.20.9
sanitize-html  2.12.1  CRITICAL  CVE-2026-44990  Fixed in: 2.17.4

Reproduction (dependency-level)

docker run --rm --entrypoint sh n8nio/n8n:2.20.9 -c \
  "cat /usr/local/lib/node_modules/n8n/node_modules/.pnpm/[email protected]/node_modules/sanitize-html/package.json | grep version"
# "version": "2.12.1"

Environment

  • n8n: 2.20.9 (n8nio/n8n:2.20.9)
  • Same issue observed on earlier 2.x and likely affects 1.x branches that still pin [email protected].

Related

  • Aikido has been flagging vm2 CRITICAL CVEs and PRs are landing (e.g. #30563, #30578); however no equivalent PR exists for this sanitize-html CVE.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

n8n - 💡(How to fix) Fix [Security] sanitize-html@2.12.1 vulnerable to CVE-2026-44990 (CRITICAL) — used by @n8n/nodes-langchain