CVE-2026-44454
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 84 - wyżej niż 84% wszystkich znanych CVE
Streszczenie
W Coder przed wersjami 2.29.7 i 2.30.2 moduł `dotfiles` przekazywał niesanitowane dane wejściowe użytkownika do poleceń powłoki, co umożliwiało wykonanie dowolnego kodu w przestrzeni roboczej. Atakujący mógł wykorzystać specjalnie spreparowany `dotfiles_uri` (np. zawierający podstawienie polecenia `$(...)`) do uzyskania kontroli nad własnym workspacem. Dodatkowo, głębokie linki `mode=auto` na stronie tworzenia workspace'a umożliwiały atak jednoklikowy bez potwierdzenia użytkownika.
Ocena ryzyka
Ryzyko polega na możliwości zdalnego wykonania kodu w workspace'ach, co może prowadzić do kradzieży danych, eskalacji uprawnień lub dalszego ataku na infrastrukturę. Atak jednoklikowy zwiększa podatność na ataki socjotechniczne.
Rekomendacja
Należy natychmiast zaktualizować Coder do wersji 2.29.7 lub 2.30.2, które zawierają walidację wejścia i usuwają niebezpieczne użycie `eval`/`sh -c`. Po aktualizacji sprawdź, czy nie ma podejrzanych workspace'ów z niestandardowym `dotfiles_uri`.
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-118687Średnie
Coder w wersjach przed 2.29.21, 2.30.0 przed 2.34.12, 2.35.0 przed 2.35.9, 2.36.0 przed 2.36.7 oraz 2.37.0 przed 2.37.4 nie weryfikuje roszczenia audience w tokenach JWT GCE instance-identity na endpointcie POST /api/v2/workspaceagents/google-instance-identity. Atakujący, który zdobędzie niewygasły token tożsamości w formacie format=full wystawiony dla innej strony ufającej, może go odtworzyć, aby uzyskać token sesji agenta workspace, ważny do następnego builda workspace.
- CVE-2026-111934Niskie
Coder w wersjach przed 2.34.7 zawiera podatność na fałszowanie adresu IP w middleware ExtractRealIPAddress, które ufa skrajnie lewej wartości X-Forwarded-For dostarczonej przez klienta, zamiast adresowi IP dodanemu przez reverse proxy. Atakujący mogą wysyłać sfałszowane wartości X-Forwarded-For przez proxy dołączające, aby obejść limity szybkości na endpointach logowania, jednorazowych kodów dostępu i walidacji hasła, umożliwiając ataki brute-force oraz fałszowanie adresów IP w dziennikach audytu.
- CVE-2026-111933Niskie
Coder w wersjach przed 2.29.17, 2.30.0 przed 2.32.7, 2.33.0 przed 2.33.8 oraz 2.34.0 przed 2.34.2 zawiera podatność na enumerację użytkowników, ponieważ funkcja userpassword.Compare() podstawia zastępczy hash pochodzący z ciągu "hunter2", gdy zapisany hash hasła jest pusty. Nieuwierzytelnieni atakujący mogą przesyłać loginy z hasłem "hunter2" i rozróżniać odpowiedzi HTTP 403 od 401, aby wyliczyć prawidłowe konta i ujawnić dostawcę uwierzytelniania użytkowników korzystających wyłącznie z SSO.
- CVE-2026-111932Niskie
Coder w wersjach przed 2.29.17, 2.30.0 przed 2.32.7, 2.33.0 przed 2.33.8 oraz 2.34.0 przed 2.34.2 zawiera podatność na trwałe wstrzyknięcie HTML, ponieważ ustawienia wyglądu ApplicationName i LogoURL są renderowane do wyjścia HTML bez wystarczającego escapowania. Atakujący z rolą Owner mogą zapisać znaczniki HTML w tych ustawieniach, które renderują się w panelu Coder oraz w wiadomościach e-mail powiadomień SMTP wysyłanych do innych użytkowników wdrożenia.
- CVE-2026-111931Średnie
Coder od 2.0.0 przed 2.34.8 zawiera lukę otwartego przekierowania w handleAPIKeySmuggling, która pozwala atakującym przekierować użytkowników na zewnętrzne strony poprzez nieoczyszczone wartości r.URL.Path. Atakujący mogą tworzyć linki w zaufanych subdomenach aplikacji workspace ze ścieżkami zaczynającymi się od podwójnego ukośnika, które stają się przekierowaniami względnymi schematu do stron atakującego w celach phishingowych.
- CVE-2026-111930Średnie
Coder od 2.26.0 przed 2.34.8 zawiera błąd autoryzacji w endpoincie GET /api/v2/workspaces/{id}/acl, który sprawdza tylko dostęp do odczytu workspace, a następnie pobiera członków grupy w podwyższonym kontekście systemowym. Uwierzytelnieni użytkownicy z dostępem do workspace mogą odpytać endpoint, aby pozyskać adresy e-mail, typy logowania, status oraz znaczniki czasu ostatniego logowania i utworzenia członków grupy.
- CVE-2026-111929Średnie
Coder od 2.30.0 przed 2.34.8 zawiera lukę obejścia autoryzacji w handlerze gRPC DownloadFile demona provisionera, która pozwala uwierzytelnionym demonom provisionera pobierać archiwa modułów Terraform z pamięci podręcznej innych organizacji. Atakujący z kluczem provisionera o zakresie organizacji i znanym UUID pliku może pobrać kod źródłowy modułu, ujawniając topologię infrastruktury lub osadzone sekrety.
- CVE-2026-111928Średnie
Coder od 2.0.0 przed 2.34.8 zawiera lukę nieprawidłowej autoryzacji w regule acl_allow pliku coderd/rbac/policy.rego, która nie weryfikuje członkostwa w organizacji dla wpisów ACL na użytkownika, a usunięcie członka organizacji nie usuwa tych wpisów. Uwierzytelnieni użytkownicy usunięci z organizacji mogą nadal uzyskiwać dostęp do wcześniej przyznanych zasobów o zasięgu organizacji, takich jak szablony i workspace, poprzez API.
- CVE-2026-111927Wysokie
Coder w wersjach przed 2.29.20, 2.33.0 przed 2.33.12, 2.34.0 przed 2.34.8 oraz 2.35.0 przed 2.35.4 zawiera błąd nieprawidłowej walidacji nazwy hosta w GetWorkspaceProxyByHostname, gdzie wzorzec SIMILAR TO wykonuje dopasowanie prefiksu, przez co dowolna domena będąca prefiksem ciągu adresu URL proxy obszaru roboczego jest uznawana za zaufane proxy. Atakujący posiadający taką domenę może zwabić uwierzytelnioną ofiarę do spreparowanego linku /api/v2/applications/auth-redirect, przechwycić przekierowany klucz API application_connect i użyć go ponownie, aby uzyskać dostęp do aplikacji obszaru roboczego ofiary.
Oryginalny opis (angielski, źródło NVD)
Coder allows organizations to provision remote development environments via Terraform. Prior to versions 2.29.7 and 2.30.2, the `dotfiles` registry module passed unsanitized user input to shell commands, allowing arbitrary code execution inside a provisioned workspace. Any user who supplied a crafted `dotfiles_uri` value (for example, one containing shell command substitution such as `$(...)`) could achieve command execution in their own workspace. The Create Workspace page's `mode=auto` deep links amplified this into a one-click attack: an attacker could craft a URL that prefilled `param.dotfiles_uri` and silently provisioned a workspace with the attacker-controlled value, with no explicit user confirmation. In versions 2.29.7 and 2.30.2, input validation was added to the dotfiles module to reject URIs and usernames containing special characters, and the unsafe `eval`/`sh -c` usage was removed. This eliminated the command injection at its source.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

