Ve vyvíjeném projektu Kubernetes ingress kontroléru ingress-nginx byly odhaleny tři zranitelnosti, které umožňují přístup k nastavením objektu Ingress v konfiguraci ve výchozím stavu, kde jsou mimo jiné uloženy i přihlašovací údaje pro přístup k serverům Kubernetes, což umožňuje získat privilegovaný přístup k clustru. Problémy se projevují pouze v ingress kontroléru ingress-nginx z projektu Kubernetes a netýkají se kontroléru kubernetes-ingress, který vyvíjejí vývojáři NGINX.
Ingress kontrolér funguje jako brána a používá se v Kubernetes k organizaci přístupu ze vnější sítě k službám uvnitř clustru. Kontrolér ingress-nginx je nejpopulárnější a využívá server NGINX pro zajištění přesměrování požadavků k clastru, směrování externích dotazů a vyvažování zátěže. Projekt Kubernetes poskytuje základní ingress kontroléry pro AWS, GCE a nginx, poslední z nichž není nijak spojen s kontrolérem kubernetes-ingress, jehož údržbu zajišťuje společnost F5/NGINX.

Zranitelnosti CVE-2023-5043 a CVE-2023-5044 umožňují spustit vlastní kód na serveru s právy procesu ingress kontroléru, pomocí parametrů „nginx.ingress.kubernetes.io/configuration-snippet“ a „nginx.ingress.kubernetes.io/permanent-redirect“. Mezi jiným, získaná práva umožňují extrakci tokenu používaného pro autentifikaci na úrovni správy clustru. Zranitelnost CVE-2022-4886 umožňuje obejít kontrolu cest k souborům pomocí direktivy log_format.
První dvě zranitelnosti se projevují pouze ve vydáních ingress-nginx do verze 1.9.0, zatímco poslední do verze 1.8.0. K provedení útoku musí mít útočník přístup k konfiguraci ingress objektu, například v multi-uživatelských klastrech Kubernetes, kde je uživatelům povoleno vytvářet objekty ve svém jmenném prostoru.
Zdroj: opennet.ru
