CVE-2026-55438
ŚrednieCVSS 5.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 13 - wyżej niż 13% wszystkich znanych CVE
Streszczenie
W Coder przed wersjami 2.29.17, 2.32.7, 2.33.8 i 2.34.2, mechanizm proxy aplikacji obszaru roboczego oparty na subdomenie umożliwiał ominięcie kontroli CORS dla tego samego właściciela. Gdy segment subdomeny z nazwą obszaru roboczego był parsowany jako UUID, obszar roboczy był rozpoznawany po ID bez weryfikacji, czy nazwa użytkownika w URL-u odpowiada rzeczywistemu właścicielowi, podczas gdy middleware CORS ufał niezweryfikowanej nazwie użytkownika w nazwie hosta.
Ocena ryzyka
Ryzyko polega na możliwości kradzieży danych lub nieautoryzowanego dostępu do obszarów roboczych ofiary, jeśli atakujący nakłoni uwierzytelnionego użytkownika do odwiedzenia spreparowanego URL-a aplikacji. Praktyczne wykorzystanie wymaga włączenia routingu aplikacji przez subdomeny (wieloznaczna nazwa hosta).
Rekomendacja
Należy niezwłocznie zaktualizować Coder do wersji 2.29.17, 2.32.7, 2.33.8 lub 2.34.2, które zawierają poprawkę walidującą nazwę użytkownika z subdomeny z rzeczywistym właścicielem obszaru roboczego. Nie są znane żadne rozwiązania zastępcze.
Inne podatności w Coder
Zobacz wszystkie- CVE-2026-46354Krytyczne
W Coder przed wersjami 2.24.5, 2.29.13, 2.30.8, 2.31.12, 2.32.2 i 2.33.3 funkcja `azureidentity.Validate()` nie weryfikuje podpisu PKCS#7, a jedynie sprawdza, czy certyfikat podpisującego pochodzi od zaufanego urzędu certyfikacji Azure. Atakujący może osadzić prawdziwy certyfikat Azure wraz z dowolną treścią, np. `{"vmId":"<target>"}`, a sfałszowane `vmId` zostanie zaakceptowane, co umożliwi przejęcie tokena sesji agenta ofiary.
- CVE-2026-55437Średnie
W Coder przed wersjami 2.29.17, 2.32.7, 2.33.8 i 2.34.2 komponent dashboardu `AgentLogLine` używał biblioteki `ansi-to-html` bez włączonej opcji `escapeXML: true`, a wynik wstawiał przez `dangerouslySetInnerHTML`. Powodowało to, że osadzony w logach agenta HTML był renderowany jako aktywny kod. Sanityzacja po stronie serwera nie neutralizowała znaków meta HTML.
- CVE-2026-55436Wysokie
W Coder od wersji 2.30.0 do 2.32.7, 2.33.8 i 2.34.2, serwer proxy AI Bridge (`aibridgeproxyd`) domyślnie akceptował każdy certyfikat TLS dla połączeń HTTPS z serwerem Coder. Luka wynika z ustawienia `InsecureSkipVerify: true` w domyślnym transporcie, co umożliwia atak typu man-in-the-middle.
- CVE-2026-55433Średnie
W Coder przed wersjami 2.29.7, 2.32.7, 2.33.8 i 2.34.2 endpoint odtwarzania devcontainera sprawdzał tylko uprawnienie `ActionRead` na workspace, pomijając kontrolę `ActionUpdate` przed destrukcyjną przebudową. Atakujący z niskimi uprawnieniami i dostępem do workspace'a mógł wykorzystać tę lukę do nieautoryzowanej przebudowy.
- CVE-2026-55432Średnie
W Coder przed wersjami 2.29.7, 2.32.7, 2.33.8 i 2.34.2, wywołanie RPC `CreateSubAgent` nie sprawdzało żądanego poziomu udostępniania aplikacji względem `MaxPortSharingLevel` szablonu przed zapisaniem aplikacji obszaru roboczego. Pozwalało to właścicielowi obszaru roboczego na przekroczenie skonfigurowanego przez administratora maksymalnego poziomu udostępniania portów.
- CVE-2026-55431Wysokie
Podatność w Coder CLI pozwala na kradzież tokena sesji użytkownika poprzez otwarcie złośliwego adresu URL aplikacji workspace. Atakujący (twórca szablonu) może skonfigurować zewnętrzną aplikację workspace, która po uruchomieniu komendy `coder open app` podmienia token sesji w adresie URL, a następnie otwiera go w przeglądarce ofiary.
- CVE-2026-55430Średnie
Podatność w Coder umożliwia atakującemu przekierowanie ruchu z proxy aplikacji workspace do dowolnego hosta poprzez nagłówek X-Forwarded-Host. Problem występuje, gdy włączone jest subdomenowe routowanie aplikacji (wildcard hostname), ofiara odwiedza współdzieloną aplikację atakującego, a upstream proxy nie usuwa tego nagłówka.
- CVE-2026-55429Wysokie
W Coder przed wersjami 2.29.7, 2.32.7, 2.33.8 i 2.34.2 funkcja `UpsertWorkspaceApp` nadpisuje istniejący wpis aplikacji, a `insertAgentApp` akceptuje identyfikator aplikacji z ładunku `CompleteJob` bez weryfikacji, czy należy on do budowanego workspace. Pozwala to na przypisanie agenta z innego workspace, co wymaga podwyższonych uprawnień autora szablonu lub operatora zewnętrznego provisionera.
- CVE-2026-55428Wysokie
W Coder przed wersjami 2.29.7, 2.32.7, 2.33.8 i 2.34.2 koordynator sieci tailnet nie sprawdza poprawności adresów IP dostarczonych przez agenta w polu AllowedIPs, co pozwala agentowi na podszywanie się pod inne UUID i przechwytywanie ruchu sieciowego. Luka umożliwia nieautoryzowanym agentom dodawanie własnych tras do konfiguracji WireGuard, potencjalnie prowadząc do ataku typu man-in-the-middle.
- CVE-2026-55427Wysokie
Podatność w Coder pozwala na wstrzyknięcie dowolnej konfiguracji SSH do pliku ~/.ssh/config użytkownika poprzez niesanitowane wartości HostnameSuffix i SSHConfigOptions dostarczane przez serwer. Atak wymaga kontroli nad serwerem Coder (złośliwy wdrożenie, atak MITM lub dostęp administracyjny).
Oryginalny opis (angielski, źródło NVD)
Coder allows organizations to provision remote development environments via Terraform. Prior to versions 2.29.17, 2.32.7, 2.33.8, and 2.34.2, Coder's subdomain-based workspace app proxy allowed the same-owner CORS check to be bypassed. When a workspace-name subdomain segment parsed as a UUID, the workspace was resolved by ID without confirming the URL's username matched the real owner, while the CORS middleware trusted the unverified username in the hostname. Practical exploitation requires subdomain app routing (wildcard hostname) enabled and a victim who visits the attacker's crafted app URL while authenticated. The fix in versions 2.29.17, 2.32.7, 2.33.8, and 2.34.2 validates the subdomain username against the resolved workspace's actual owner and bases the same-owner CORS decision on the authoritative owner identity. No known workarounds are available.

