Średnia

Open WebUI has Unauthorized File and Knowledge Base Content Access via RAG Vector Search

  • Ujawniono: 08.05.2026
  • Aktualizacja: 11.10.2026 14:18

Unauthorized File and Knowledge Base Content Access via RAG Vector Search

Affected Component

RAG source resolution in chat completion pipeline:

  • backend/open_webui/retrieval/utils.py (lines 963-965, 1063-1068, 1126-1131 in get_sources_from_items)

Affected Versions

Current main branch (commit 6fdd19bf1) and likely all versions with RAG functionality.

Description

The get_sources_from_items function resolves file and knowledge base references into vector search queries during chat completion. Three of the five code paths perform vector store queries without any authorization check, allowing users to extract content from files and knowledge bases they do not have access to.

Path Lines Access Check
type: "file", full-context 1044-1050 ✅ has_access_to_file
type: "file", non-full-context (default) 1063-1068 ❌ None
type: "collection" 1070-1118 ✅ Present
type: "text" with collection_name 963-965 ❌ None
Bare collection_name/collection_names 1126-1131 ❌ None

The three unprotected paths pass user-supplied collection names directly to query_collection(), which queries the vector store without any authorization. Collection names follow predictable formats: file-<file_id> for files and the knowledge base UUID for knowledge bases.

CVSS 3.1 Breakdown

Metric Value Rationale
Attack Vector Network (N) Exploited remotely via chat completion API
Attack Complexity Low (L) Single API call with a known resource ID
Privileges Required Low (L) Requires a valid user account
User Interaction None (N) No victim interaction required
Scope Unchanged (U) Impact within the application's data boundary
Confidentiality High (H) Full content of private files/knowledge bases extractable
Integrity None (N) No data modification
Availability None (N) No denial of service

Attack Scenario

  1. User A uploads a private document and uses it in RAG (the document is embedded into the vector store as collection file-<file_id>).
  2. User A shares a chat or model referencing the file with User B, or User B otherwise obtains the file ID through a legitimate interaction.
  3. User A later revokes User B's access to the file.
  4. User B sends a chat completion request referencing the revoked file:
    js
    POST /api/chat/completions
    {
      "model": "any-accessible-model",
      "messages": [{"role": "user", "content": "What does this document say about pricing?"}],
      "files": [{"type": "file", "id": "<revoked_file_id>"}]
    }
  5. The non-full-context path (default) constructs collection name file-<id> and queries the vector store with no access check.
  6. Matching chunks are injected into the LLM context, and the response contains the victim's private file content.

The same attack works via {"type": "text", "collection_name": "<knowledge_base_id>"} for knowledge bases.

Impact

  • Access revocation is ineffective for RAG content — users who previously had access can continue extracting file and knowledge base content indefinitely
  • Private document content can be systematically extracted through targeted queries
  • Breaks the access control model for files and knowledge bases at the RAG layer

Preconditions

  • Attacker must know the file ID or knowledge base ID (UUID) of the target resource
  • The target file/knowledge base must have been processed into the vector store
  • Attacker must have a valid user account

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Python (PyPI) open-webui < 0.9.0 0.9.0

Odnośniki

Ocena CVSS 6.5/10
Wektor CVSS
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Słabość (CWE)
CWE-862
Platforma
Python (PyPI)
Paczka
open-webui
Ujawniono
08.05.2026
Aktualizacja
11.10.2026 14:18

Źródła i licencje

OSV / GitHub Advisory Database - PYSEC-2026-2729 - PyPA Advisory Database; CC BY 4.0

OSV / GitHub Advisory Database - GHSA-h36f-rqpx-j5wx - CC BY 4.0

Historia podatności: open-webui

Wszystkie opisane podatności tej paczki (Python (PyPI)), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkie (161) w archiwum
Wszystkich wpisów
161
Pierwsza → ostatnia
08.2024 09.2026
Bez poprawki
11
Wykorzystywana w atakach
0

Rozkład istotności

  • Krytyczna 1
  • Wysoka 77
  • Średnia 75
  • Niska 8

Ujawnienia w latach

  1. 2024: 3
  2. 2025: 21
  3. 2026: 137
Istotność:
  1. Open WebUI has Unauthorized File and Knowledge Base Content Access via RAG Vector Search ten wpis
    Średnia · 6.5 CVE-2026-44560 < 0.9.0 0.9.0
  2. Wysoka · 8.7 CVE-2026-70492 >= 0.10.0, < 0.11.0 0.11.0
  3. Wysoka · 7.7 CVE-2026-59221 >= 0.9.6, < 0.10.0 0.10.0
  4. Wysoka · 7.3 CVE-2026-59214 < 0.10.0 0.10.0
  5. Wysoka · 7.3 CVE-2026-26192 < 0.7.0 0.7.0
Pokaż więcej (20) Widać 21 z 79

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.