CVE-2026-63329
ŚrednieCVSS 4.9Streszczenie
Warpgate przed wersją 0.25.6 ma podatność w proxy HTTP, gdzie nagłówek x-warpgate-username dostarczony przez klienta jest przekazywany przed dodaniem uwierzytelnionego użytkownika. Ponieważ konstruktor żądań zachowuje powtórzone wartości, backend ufający pierwszej wartości może autoryzować uwierzytelnionego atakującego jako innego użytkownika. Podobnie akceptowany jest zarezerwowany nagłówek x-warpgate-authentication-type. Problem naprawiono w wersji 0.25.6.
Ocena ryzyka
Atakujący może podszyć się pod innego użytkownika w systemach backendowych, co może prowadzić do nieautoryzowanego dostępu do danych lub operacji.
Rekomendacja
Zaktualizuj Warpgate do wersji 0.25.6 lub nowszej, aby zapobiec przekazywaniu zarezerwowanych nagłówków tożsamości.
Inne podatności w Warpgate
Zobacz wszystkie- CVE-2026-91167Średnie
W Warpgate przed wersją 0.28.4 endpoint PUT /@warpgate/admin/api/users/:id/roles/:role_id nie wymaga uprawnienia AdminPermission::AccessRolesAssign. Ograniczony administrator z dowolnym uprawnieniem może zaktualizować expires_at istniejącego przypisania roli i wyczyścić revoked_at, wydłużając wygasające uprawnienie lub przywracając odebrane.
- CVE-2026-91166Średnie
Warpgate do wersji 0.27.6 włącznie ma podatność w ścieżce SSH przez przeglądarkę, gdzie klucz hosta skoku (jump host) jest zapisywany dla adresu docelowego. W trybach Prompt i AutoAccept maszyna prezentująca klucz skoku na adresie docelowym może zostać zaakceptowana jako cel, co pozwala na przechwycenie ruchu użytkownika i nowo wydanego certyfikatu przy uwierzytelnianiu certyfikatowym. Natywna ścieżka SSH nie jest dotknięta, ponieważ śledzi każdy skok osobno. Problem naprawiono w wersji 0.27.6.
- CVE-2026-91165Niskie
W Warpgate ścieżka powrotu SSO response_mode=form_post w sso_provider_list.rs używa serde_json::to_string bez neutralizacji sekwencji zamykającej skrypt. Wartość może trafić do bloku script przez kontrolowany przez atakującego parametr next lub przez komunikaty błędów IdP konkatenowane bez kodowania URL. Ścieżka IdP jest osiągalna, gdy atakujący kontroluje skonfigurowanego dostawcę tożsamości lub kontroluje roszczenie email/username na swoim koncie. Ofiara musi ukończyć przepływ form_post SSO, aby wstrzyknięty znacznik został wyrenderowany. CSP Warpgate blokuje wstrzyknięty JavaScript, więc skutkiem jest podszywanie się pod treść, fałszywy formularz logowania lub meta refresh. Problem naprawiono w wersji 0.27.6.
- CVE-2026-91164Średnie
Warpgate do wersji 0.27.3 włącznie ma podatność w uwierzytelnianiu tokenem API HTTP, gdzie walidacja tokenu nie egzekwuje ograniczeń allowed_ip_ranges właściciela tokenu. Atakujący posiadający wyciekły, wyłudzony lub wykradziony token X-Warpgate-Token może go użyć z zabronionej lokalizacji sieciowej. Wdrożenia bez allowed_ip_ranges nie są dotknięte, a inne ścieżki (HTTP target proxying, SSH, MySQL, PostgreSQL, RDP, VNC, Kubernetes) nie akceptują tej podatnej ścieżki tokenu HTTP. Problem naprawiono w wersji 0.27.3.
- CVE-2026-63330Wysokie
Warpgate, open source bastion host SSH, HTTPS i MySQL dla Linuksa, w wersjach przed 0.25.6 posiada podatność w api_get_recording_stream w warpgate-admin/src/api/recordings_detail.rs. Endpoint /@warpgate/admin/api/recordings/{uuid}/stream jest chroniony tylko uwierzytelnieniem sesji, bez wymagania uprawnień administratora do przeglądania nagrań. Każdy uwierzytelniony zwykły użytkownik może subskrybować WebSocket aktywnego nagrania i odbierać w czasie rzeczywistym dane wejściowe i wyjściowe terminala z sesji SSH, MySQL lub PostgreSQL, w tym poświadczenia i polecenia.
- CVE-2026-58491Krytyczne
Warpgate to open-source'owy bastion SSH, HTTPS i MySQL dla Linuksa. Przed wersją 0.25.5 endpoint /@warpgate/api/sso/providers/:name/start przechowuje kontrolowany przez atakującego parametr next, który handler POST /@warpgate/api/sso/return wstawia bez escapowania HTML do odpowiedzi generowanej przez warpgate-protocol-http/src/api/sso_provider_list.rs. Ofiara, która kliknie spreparowany link i ukończy SSO, może spowodować wykonanie znaczników i JavaScriptu w uwierzytelnionym originie Warpgate, co umożliwia dostęp do danych sesji i działań przez API użytkownika, a przez API administratora tylko gdy ofiara jest administratorem. Ścieżka GET /@warpgate/api/sso/return również używa tej samej niezwalidowanej wartości jako celu przekierowania, umożliwiając otwarte przekierowanie.
- CVE-2023-37268Średnie
Warpgate to bastion host SSH, HTTPS i MySQL dla systemu Linux, który nie wymaga specjalnych aplikacji klienckich. Atakujący może uwierzytelnić się jako inny użytkownik, jeśli loguje się użytkownik z włączonym SSO, a konto nie ma włączonego drugiego czynnika uwierzytelnienia.
Oryginalny opis (angielski, źródło NVD)
Warpgate is an open source SSH, HTTPS and MySQL bastion host for Linux. Prior to 0.25.6, copy_server_request in warpgate-protocol-http/src/proxy.rs forwards a client-supplied x-warpgate-username header before inject_own_headers appends the authenticated username. Because the request builder preserves repeated values, a proxied backend that trusts the first x-warpgate-username value can authorize an authenticated attacker as another user. The same forwarding policy also accepts the reserved x-warpgate-authentication-type header, and warpgate-common/src/http_headers.rs does not exclude either reserved identity header. This issue is fixed in version 0.25.6.

