W Canonical Juju wykryto krytyczną podatność polegającą na braku prawidłowego uwierzytelnienia TLS po stronie klienta i serwera w wewnętrznym klastrze bazy danych Dqlite. Nieuwierzytelniony atakujący z dostępem sieciowym do portu Dqlite kontrolera Juju może dołączyć do klastra bazy danych i uzyskać pełny dostęp do jej zawartości.
▸ Pokaż oryginał (EN)
A vulnerability was identified in Juju from version 3.2.0 until 3.6.19 and from version 4.0 until 4.0.4, where the internal Dqlite database cluster fails to perform proper TLS client and server authentication. Specifically, the Juju controller's database endpoint does not validate client certificates when a new node attempts to join the cluster. An unauthenticated attacker with network reachability to the Juju controller's Dqlite port can exploit this flaw to join the database cluster. Once joined, the attacker gains full read and write access to the underlying database, allowing for total data compromise.
Kontroler Juju korzysta z wewnętrznego klastra bazy danych Dqlite, który powinien wymagać wzajemnego uwierzytelnienia TLS (mTLS) przy dołączaniu nowych węzłów. Podatność polega na tym, że endpoint bazy danych nie weryfikuje certyfikatów klienta, gdy nowy węzeł próbuje dołączyć do klastra. Atakujący, który jest osiągalny sieciowo na port Dqlite kontrolera Juju, może bez żadnych poświadczeń nawiązać połączenie i zgłosić się jako nowy węzeł klastra. Po pomyślnym dołączeniu uzyskuje pełne uprawnienia odczytu i zapisu do całej bazy danych.
Atakujący może uzyskać pełny dostęp do odczytu i zapisu wewnętrznej bazy danych Juju, co prowadzi do całkowitego naruszenia poufności i integralności przechowywanych danych, a potencjalnie również do przejęcia kontroli nad zarządzaną infrastrukturą.
Należy zaktualizować Juju do wersji 3.6.19 lub nowszej (dla gałęzi 3.x) albo do wersji 4.0.4 lub nowszej (dla gałęzi 4.x). Dodatkowo zaleca się ograniczenie dostępu sieciowego do portu Dqlite kontrolera Juju wyłącznie do zaufanych hostów za pomocą firewalla lub reguł sieciowych.
Canonical Juju w wersjach od 3.2.0 do 3.6.18 (przed 3.6.19) oraz w wersjach od 4.0 do 4.0.3 (przed 4.0.4)
Podatność dotyczy wyłącznie wewnętrznego portu Dqlite kontrolera Juju — organizacje, które ograniczają dostęp do tego portu przez firewall lub segmentację sieci, mogą skutecznie zredukować ryzyko wykorzystania. Szczegóły dostępne w oficjalnym security advisory na GitHub: GHSA-gvrj-cjch-728p.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HCanonical Juju
APPCanonical3.2.0 – 3.6.20 (bez)4.0 – 4.0.5 (bez)
Powiązane podatności
Canonical Juju — nieuprawniony dostęp do poświadczeń chmury przez Controller facade
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...