CVE-2026-88001
ŚrednieCVSS 5.0Streszczenie
Open WebUI w wersjach od 0.9.5 do 0.11.1 nie ponownie stosuje filtrów WEB_FETCH_FILTER_LIST ani kontroli adresów prywatnych przy przekierowaniach HTTP, gdy włączona jest opcja AIOHTTP_CLIENT_ALLOW_REDIRECTS. Uwierzytelniony użytkownik może przekierować żądania do wykluczonych hostów, pętli zwrotnej, sieci prywatnych lub usług metadanych chmury, a następnie wykorzystać wyniki w wyszukiwaniu, przetwarzaniu URL, narzędziach pobierania stron lub przetwarzaniu obrazów czatu. Problem naprawiono w wersji 0.11.1.
Ocena ryzyka
Atakujący może uzyskać dostęp do wewnętrznych zasobów sieciowych lub metadanych chmury, co może prowadzić do wycieku wrażliwych informacji lub eskalacji uprawnień.
Rekomendacja
Zaleca się aktualizację do wersji 0.11.1 lub nowszej oraz sprawdzenie konfiguracji filtrów sieciowych.
Inne podatności w Open WebUI
Zobacz wszystkie- CVE-2026-88002Średnie
Open WebUI w wersjach od 0.5.0 do 0.11.1 zawiera podatność na nieskończoną pętlę w funkcji pomocniczej rekonstrukcji łańcucha wiadomości w backend/open_webui/utils/misc.py. Uwierzytelniony użytkownik może przechowywać wiadomości bez identyfikatora w cyklicznej strukturze, co blokuje pętlę zdarzeń i powoduje wzrost pamięci aż do zatrzymania procesu. Problem naprawiono w wersji 0.11.1.
- CVE-2026-88000Średnie
Open WebUI w wersjach od 0.10.0 do 0.11.1 zawiera podatność na nieskończoną pętlę w funkcji usuwania wiadomości w backend/open_webui/models/chats.py. Uwierzytelniony użytkownik może utworzyć cykliczne drzewo czatu i usunąć wiadomość, co powoduje zablokowanie pętli żądań serwera i uniemożliwia obsługę żądań innych użytkowników aż do zabicia procesu. Problem naprawiono w wersji 0.11.1.
- CVE-2026-87999Wysokie
Open WebUI przed wersją 0.11.1 w punktach końcowych POST /api/v1/retrieval/process/web i POST /api/v1/retrieval/process/web/search traktowało globalnie routowalną klasyfikację adresów Pythona jako dowód, że cel jest zewnętrzny. Uwierzytelniony użytkownik mógł sprawić, że instancja hostowana na platformie Azure pobierze i zwróci treści z adresu 168.63.129.16 (kanał platformy Azure) oraz innych zastrzeżonych zakresów, które standardowa klasyfikacja odrzucała.
- CVE-2026-87998Wysokie
Open WebUI od wersji 0.10.0 do 0.11.1 w punkcie końcowym DELETE /api/v1/knowledge/{id}/delete autoryzowało usunięcie względem bazy wiedzy, ale następnie usuwało zewnętrzne połączenie należące do administratora bez osobnej kontroli administratora lub sprawdzenia innych zależnych baz wiedzy. Niebędący administratorem użytkownik z prawem zapisu do jednej zewnętrznej bazy wiedzy mógł usunąć współdzieloną konfigurację instancji i uczynić niedostępnymi wszystkie inne bazy wiedzy korzystające z tego połączenia.
- CVE-2026-87997Średnie
Open WebUI w wersjach od 0.10.0 do 0.11.1 nie sprawdza uprawnień zapisu do folderu przy tworzeniu nowego czatu z podanym folder_id w endpointach POST /api/chat/completions i POST /api/v1/chat/completions. Uwierzytelniony użytkownik, znając identyfikator folderu współdzielonego, może wstrzyknąć czat do folderu, do którego ma tylko odczyt lub brak uprawnień zapisu, co powoduje wyświetlenie wpisu autoryzowanym czytelnikom folderu. Problem naprawiono w wersji 0.11.1.
- CVE-2026-87996Wysokie
Open WebUI od wersji 0.9.6 do 0.11.1 w SafePlaywrightURLLoader w backend/open_webui/retrieval/web/utils.py walidowało kontrolowaną przez użytkownika nazwę hosta w Pythonie, a następnie pozwalało przeglądarce Playwright na ponowne jej rozwiązanie w przechwytujących żądania synchroniczne i asynchroniczne. Uwierzytelniony użytkownik kontrolujący autorytatywny DNS mógł zwrócić publiczny adres do walidacji i wewnętrzny adres do przeglądarki, ujawniając odpowiedzi z wewnętrznych usług lub metadanych chmury poprzez wyszukiwanie w sieci lub pobieranie URL.
- CVE-2026-87995Wysokie
Open WebUI od wersji 0.8.11 do 0.11.1 w src/lib/components/chat/FileNav/PortPreview.svelte renderowało zawartość portu terminala w iframe sandbox zawierającym zarówno allow-scripts, jak i allow-same-origin. Ponieważ proxy terminala serwuje tę zawartość z pochodzenia Open WebUI, uwierzytelniony użytkownik mający dostęp do współdzielonego serwera terminala mógł umieścić skrypt na podglądanym porcie i przejąć konto ofiary, gdy ofiara otworzyła podgląd.
- CVE-2026-87994Średnie
Open WebUI w wersjach od 0.9.5 do 0.11.1 nie weryfikuje, czy wywołujący użytkownik jest autorem wiadomości w kanale podczas korzystania z endpointu chat completions. Członek kanału może zastąpić wiadomość innego członka, zachowując oryginalnego autora, co zmienia zapis rozmowy bez uzyskiwania dostępu do innych kanałów. Problem naprawiono w wersji 0.11.1.
- CVE-2026-87017Średnie
Open WebUI w wersjach od 0.7.0 do 0.11.1 nie stosuje filtra metadanych w wbudowanym narzędziu wyszukiwania wiedzy, co pozwala uwierzytelnionemu użytkownikowi na wyliczenie identyfikatorów, nazw i opisów niedostępnych baz wiedzy w współdzielonej kolekcji. Tekst dokumentów pozostaje w oddzielnych kolekcjach, ale metadane są ujawniane. Problem naprawiono w wersji 0.11.1.
- CVE-2026-87016Wysokie
Open WebUI od wersji 0.6.41 do 0.11.1 w funkcjach get_user_by_oauth_sub i get_user_by_scim_external_id w backend/open_webui/models/users.py używało dopasowania JSON zawierającego, które kompilowało się do dopasowania podciągów SQL LIKE na SQLite. Temat OAuth zawierający znaki specjalne procent lub podkreślenie mógł rozwiązać się do innej zapisanej tożsamości, potencjalnie wybierając konto administratora i wydając atakującemu sesję tego konta; wdrożenia PostgreSQL nie były dotknięte.
Oryginalny opis (angielski, źródło NVD)
Open WebUI is an extensible, feature-rich, and user-friendly self-hosted AI platform. From 0.9.5 until 0.11.1, server-side web fetches did not reapply WEB_FETCH_FILTER_LIST or private-address controls to HTTP redirect destinations when AIOHTTP_CLIENT_ALLOW_REDIRECTS was enabled. An authenticated user could redirect the aiohttp and requests fetch paths to excluded hosts, loopback, private networks, or cloud metadata services and route resulting content into web search, URL ingestion, page-fetch tools, or chat image processing. This issue is fixed in version 0.11.1.

