Vulnerabilitats a ingress-nginx que permeten que els clústers de Kubernetes es vegin compromesos

En el controlador ingress-nginx desenvolupat pel projecte Kubernetes, s'han identificat tres vulnerabilitats que permeten, en la configuració predeterminada, l'accés a la configuració de l'objecte Ingress, que, entre altres coses, emmagatzema les credencials per accedir als servidors Kubernetes, permetent l'accés privilegiat. al clúster. Els problemes només apareixen al controlador ingress-nginx del projecte Kubernetes i no afecten el controlador kubernetes-ingress desenvolupat pels desenvolupadors de NGINX.

El controlador d'entrada actua com a passarel·la i s'utilitza a Kubernetes per organitzar l'accés des de la xarxa externa als serveis del clúster. El controlador ingress-nginx és el més popular i utilitza el servidor NGINX per reenviar sol·licituds al clúster, encaminar peticions externes i equilibrar la càrrega. El projecte Kubernetes proporciona controladors d'entrada bàsics per a AWS, GCE i nginx, el darrer dels quals no està relacionat de cap manera amb el controlador d'entrada kubernetes que manté F5/NGINX.

Vulnerabilitats a ingress-nginx que permeten que els clústers de Kubernetes es vegin compromesos

Les vulnerabilitats CVE-2023-5043 i CVE-2023-5044 us permeten executar el vostre codi al servidor amb els drets del procés del controlador d'entrada, utilitzant "nginx.ingress.kubernetes.io/configuration-snippet" i "nginx.ingress". .kubernetes” per substituir-lo .io/permanent-redirect." Entre altres coses, els drets d'accés obtinguts permeten recuperar un testimoni utilitzat per a l'autenticació a nivell de gestió del clúster. La vulnerabilitat CVE-2022-4886 us permet ometre la verificació del camí del fitxer mitjançant la directiva log_format.

Les dues primeres vulnerabilitats només apareixen a les versions d'ingress-nginx anteriors a la versió 1.9.0, i l'última, abans de la versió 1.8.0. Per dur a terme un atac, un atacant ha de tenir accés a la configuració de l'objecte d'entrada, per exemple, en clústers de Kubernetes multi-inquilí, en què els usuaris tenen la possibilitat de crear objectes al seu espai de noms.

Font: opennet.ru

Afegeix comentari