CVE-2026-54017 - Open WebUI: Path traversal / SSRF in terminal server proxy via encoded path traversal
Сводка
Эта запись подробно описывает уязвимость, обнаруженную в целевой системе. Эксплойт был опубликован 2026-06-18 и набрал 249 просмотров сообщества. Он классифицируется по категории веб-приложения. Пользователям рекомендуется ознакомиться с исходным кодом во вкладке «Детали» для получения технических подробностей.
Zafiyet Ozet Bilgileri
Zafiyet Detayi (Turkce)
Open WebUI, tamamen çevrimdışı çalışacak şekilde tasarlanmış, kendi kendine barındırılan bir yapay zeka platformudur. 0.9.6'dan önce, 'backend/open_webui/routers/terminals.py' içindeki terminal sunucusu ters proxy'si, kullanıcı tarafından kontrol edilen 'yol' segmentini yönetici tarafından yapılandırılmış bir terminal sunucusuna iletmeden önce tamamen sınırlandırmıyordu. Bir terminal sunucusuna erişim izni verilen kimliği doğrulanmış bir kullanıcı, o sunucudaki amaçlanan yol (veya politika) kapsamından kaçan, terminal sunucusu ana bilgisayarındaki istenmeyen uç noktalara ve dosyalara ulaşan kodlanmış "../" geçiş dizilerini içeren "yol" değerleri oluşturabilir. Terminal sunucusu fanlarının dahili hizmetlere talepte bulunması, bu hizmetlere SSRF tarzı erişim de sağlar. Bu, kendi girişi olan "/api/v1/retrival/process/web" SSRF'sinden (GHSA-c6xv-rcvw-v685) ayrı bir kod yoludur. Burada iki farklı vektör birleştirilmiştir: birincisi, ham yol yönlendirme / tek kodlu geçiş (orijinal rapor); ve ikincisi, çift kodlu noktalar ("%252e%252e") kullanılarak sonradan eklenen "_sanitize_proxy_path" azaltma işleminin atlanması. Saldırgan tarafından kontrol edilen giriş, yönetici olmayan kullanıcı tarafından sağlanan istek 'yoludur', yöneticinin yapılandırdığı bir şey değildir, dolayısıyla bu bir yönetici güveni/Kural-9 durumu değildir. Sürüm 0.9.6 sorunu düzeltir.
Orijinal Aciklama (Ingilizce)
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.6, the terminal-server reverse proxy in `backend/open_webui/routers/terminals.py` does not fully confine the user-controlled `path` segment before forwarding it to an admin-configured terminal server. An authenticated user who has been granted access to a terminal server can craft `path` values containing encoded `../` traversal sequences that escape the intended path (or policy) scope on that server, reaching unintended endpoints and files on the terminal-server host. Where the terminal server fans requests out to internal services, this also gives SSRF-style reach into those services. This is a separate code path from the `/api/v1/retrieval/process/web` SSRF (GHSA-c6xv-rcvw-v685), with its own input. Two distinct vectors are consolidated here: first, raw path forwarding / single-encoded traversal (original report); and second, a bypass of the subsequently-added `_sanitize_proxy_path` mitigation using double-encoded dots (`%252e%252e`). The attacker-controlled input is the request `path`, supplied by the non-admin user, not anything an administrator configures, so this is not an admin-trust / Rule-9 situation. Version 0.9.6 fixes the issue.
Скачать исходный код
Скачать исходный код эксплойта для оффлайн анализа и тестирования.
Скачать сейчасРазмер файла: ~4.7 KB | MD5: f7daf3ab230023905cbacf9ff182fa76
Нет доступных изображений в галерее.
Обсуждений пока нет.