Trust Boundary Violation Affecting librechat package, versions <0.8.7-r1


Severity

Recommended
0.0
medium
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.21% (12th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-CHAINGUARDLATEST-LIBRECHAT-18300107
  • published25 Jul 2026
  • disclosed23 Jul 2026

Introduced: 23 Jul 2026

NewCVE-2026-65902  (opens in a new tab)
CWE-501  (opens in a new tab)

How to fix?

Upgrade Chainguard librechat to version 0.8.7-r1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream librechat package and not the librechat package as distributed by Chainguard. See How to fix? for Chainguard relevant fixed versions and status.

DOMPurify before 3.4.7 (affected versions <= 3.4.5) 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 not recover the state; only constructing a new DOMPurify instance does.

CVSS Base Scores

version 3.1