open-webui w wersjach przed 0.3.14 zawiera błędną konfigurację CORS (allow_origins=*) umożliwiającą nieautoryzowanym witrynom wysyłanie uwierzytelnionych żądań do wrażliwego endpointu API. Podatność pozwala atakującemu na zdalne wykonanie dowolnego kodu na instancji open-webui, jeśli zalogowany administrator odwiedzi spreparowaną stronę.
▸ Pokaż oryginał (EN)
open-webui before 0.3.14 contains a cross-origin resource sharing misconfiguration allowing arbitrary origins with allow_origins=* and authenticated requests to the /api/v1/functions endpoint. Attackers can execute arbitrary code on the openwebui instance by crafting malicious cross-site requests from attacker-controlled websites when an admin user visits them.
Serwer open-webui jest skonfigurowany z polityką CORS zezwalającą na żądania z dowolnego źródła (allow_origins=*), jednocześnie akceptując uwierzytelnione żądania (z sesją administratora) do endpointu /api/v1/functions. Atakujący tworzy złośliwą stronę internetową, która po odwiedzeniu przez administratora wysyła cross-site request do tego endpointu, wykorzystując aktywną sesję ofiary (CWE-613: niewystarczające wygasanie sesji / brak weryfikacji kontekstu żądania). W ten sposób atakujący może przesłać i wykonać dowolny kod po stronie serwera.
Atakujący może zdalnie wykonać dowolny kod (RCE) na serwerze open-webui z uprawnieniami procesu aplikacji, co może prowadzić do pełnego przejęcia instancji oraz naruszenia poufności, integralności i dostępności zarówno systemu lokalnego, jak i połączonych systemów.
Należy zaktualizować open-webui do wersji 0.3.14 lub nowszej. Dodatkowo zaleca się zrestryktowanie polityki CORS wyłącznie do zaufanych domen oraz wdrożenie mechanizmów ochrony przed atakami CSRF (np. tokeny CSRF) na wrażliwych endpointach API.
open-webui w wersjach przed 0.3.14
Podatność wymaga interakcji użytkownika (UI:P) — administrator musi odwiedzić stronę kontrolowaną przez atakującego. Dodatkowym warunkiem jest odpowiedni kontekst sieciowy (AT:P). Szczegóły dostępne w GitHub Security Advisory GHSA-6xcp-7mpr-m7wm.
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XOpenwebui Open Webui
APPOpenwebui< 0.3.14
Powiązane podatności
Open WebUI: pominięcie uwierzytelnienia LDAP przez puste hasło (Auth Bypass)
XSS w Open WebUI — kradzież sesji i eskalacja uprawnień do admina
Open WebUI: stored XSS w przepływie OAuth poprzez SVG jako data URI
Stored XSS w Open WebUI umożliwia nieautoryzowany dostęp do endpointów admina
Open WebUI: nieautoryzowane wykonanie kodu w cudzej sesji przez Socket.IO