criticalCVSS 9.8Vulnerability

CVE-2026-44649

## Resolution SillyTavern 1.18.0 now includes a configuration option to limit which IP addresses can authorize using SSO headers, limiting to just loopback addresses by default. A setting can be customized according to user's needs. Documentation: https://docs.sillytavern.app/administration/sso/ ## Summary SillyTavern accepts `Remote-User` (Authelia) and `X-Authentik-Username` (Authentik) HTTP headers to automatically log in users when SSO is configured. There is no validation that these headers originate from a trusted reverse proxy. Any network client that can reach the SillyTavern port directly can inject these headers and authenticate as any user, including administrators, without a password. This vulnerability is exploitable only when `sso.autheliaAuth: true` or `sso.authentikAuth: true` is set in `config.yaml` (both default to `false`). ### Detials SillyTavern implements header-based SSO for Authelia and Authentik. When enabled, the `tryAutoLogin` function (called on every request to `/login`) invokes `headerUserLogin`, which reads an HTTP header set by the upstream proxy and automatically creates an authenticated session for the matching user: `src/users.js:779-801`: ```js async function headerUserLogin(request, header = 'Remote-User') { if (!request.session) { return false; } const remoteUser = request.get(header); // reads any header from any client if (!remoteUser) { return false; } const userHandles = await getAllUserHandles(); for (const userHandle of userHandles) { if (remoteUser.toLowerCase() === userHandle) { const user = await storage.getItem(toKey(userHandle)); if (user && user.enabled) { request.session.handle = userHandle; return true; } } } return false; } ``` `request.get(header)` is Express's wrapper for `req.headers[name.toLowerCase()]`. Express does not distinguish between headers set by a trusted upstream proxy and hea

Properties

severity
critical
summary
SillyTavern has Authentication Bypass via SSO Header Injection
epss_score
0.00218
cvss_score
9.8
ghsa_published
2026-05-12T22:23:30Z
source_url
https://github.com/advisories/GHSA-gxx6-h3g6-vwjh
ghsa_updated
2026-05-12T22:23:33Z
ghsa_id
GHSA-gxx6-h3g6-vwjh
cve_id
CVE-2026-44649
cvss_vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
is_ghsa_only
false
epss_percentile
0.12252

Related Entities (8)

ENRICHED_BY (1)

[Source]FIRST EPSS

VULNERABLE_TO (1)

[Software]npm/sillytavern

AFFECTS (1)

[Software]npm/sillytavern

HAS_WEAKNESS (4)

[Weakness]Reliance on Untrusted Inputs in a Security Decision
[Weakness]Missing Authentication for Critical Function
[Weakness]Authentication Bypass by Spoofing
[Weakness]Origin Validation Error

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-44649 (CVSS 9.8) — Ninja Signal Threat Intelligence | Ninja Signal