W Canonical Juju istnieje błąd autoryzacji w Controller facade, który pozwala uwierzytelnionemu użytkownikowi o niskich uprawnieniach na pobranie poświadczeń chmurowych użytych do uruchomienia kontrolera. Podatność jest krytyczna, ponieważ ujawnienie tych poświadczeń może umożliwić pełne przejęcie kontroli nad infrastrukturą chmurową.
▸ Pokaż oryginał (EN)
In Juju versions prior to 2.9.57 and 3.6.21, an authorization issue exists in the Controller facade. An authenticated user can call the CloudSpec API method to extract the cloud credentials used to bootstrap the controller. This allows a low-privileged user to access sensitive credentials. This issue is resolved in Juju versions 2.9.57 and 3.6.21.
Błąd polega na braku właściwej weryfikacji uprawnień (CWE-285) przy wywołaniu metody API CloudSpec w ramach Controller facade. Każdy uwierzytelniony użytkownik — niezależnie od poziomu uprawnień — może wywołać tę metodę i uzyskać w odpowiedzi poświadczenia chmurowe (ang. cloud credentials) użyte podczas procesu bootstrap kontrolera. Mechanizm autoryzacji nie sprawdza, czy wywołujący posiada wystarczające uprawnienia do dostępu do tych poufnych danych.
Atakujący z dowolnym poziomem uwierzytelnienia może wyekstrahować poświadczenia chmurowe kontrolera, co w praktyce oznacza możliwość uzyskania pełnego dostępu do zasobów infrastruktury chmurowej, a także potencjalne przejęcie kontroli nad środowiskiem zarządzanym przez Juju.
Należy zaktualizować Canonical Juju do wersji 2.9.57 (dla gałęzi 2.x) lub 3.6.21 (dla gałęzi 3.x), w których problem został rozwiązany. Patche dostępne są w oficjalnych repozytoriach projektu oraz opisane w referencjach producenta.
Canonical Juju w wersjach wcześniejszych niż 2.9.57 oraz wcześniejszych niż 3.6.21
Podatność została naprawiona w pull requestach #22205 oraz #22206 w repozytorium GitHub projektu Juju. Szczegółowe informacje dostępne są w security advisory GHSA-w5fq-8965-c969.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HCanonical Juju
APPCanonical< 2.9.573.6 – 3.6.21 (bez)
Powiązane podatności
Canonical Juju: brak uwierzytelnienia TLS w klastrze Dqlite umożliwia przejęcie bazy danych
Juju before 1.25.12, 2.0.x before 2.0.4, and 2.1.x before 2.1.3 uses a UNIX domain socket without setting appr...
Juju is an open source application orchestration engine that enables any application operation on any infrastr...
An authorization bypass vulnerability in the Vault secrets back-end implementation of Juju versions 3.1.6 thro...
In Juju from version 3.0.0 through 3.6.18, the authorization of the "secret-set" tool is not performed correct...