Kerentanan di ingress-nginx yang memungkinkan cluster Kubernetes disusupi

Dalam pengontrol ingress-nginx yang dikembangkan oleh proyek Kubernetes, tiga kerentanan telah diidentifikasi yang memungkinkan, dalam konfigurasi default, akses ke pengaturan objek Ingress, yang, antara lain, menyimpan kredensial untuk mengakses server Kubernetes, memungkinkan akses istimewa ke cluster. Masalah hanya muncul pada pengontrol ingress-nginx dari proyek Kubernetes dan tidak mempengaruhi pengontrol kubernetes-ingress yang dikembangkan oleh pengembang NGINX.

Pengontrol ingress bertindak sebagai gateway dan digunakan di Kubernetes untuk mengatur akses dari jaringan eksternal ke layanan dalam cluster. Pengontrol ingress-nginx adalah yang paling populer dan menggunakan server NGINX untuk meneruskan permintaan ke cluster, merutekan permintaan eksternal, dan keseimbangan beban. Proyek Kubernetes menyediakan pengontrol ingress inti untuk AWS, GCE, dan nginx, yang terakhir sama sekali tidak terkait dengan pengontrol kubernetes-ingress yang dikelola oleh F5/NGINX.

Kerentanan di ingress-nginx yang memungkinkan cluster Kubernetes disusupi

Kerentanan CVE-2023-5043 dan CVE-2023-5044 memungkinkan Anda mengeksekusi kode Anda di server dengan hak proses pengontrol ingress, menggunakan β€œnginx.ingress.kubernetes.io/configuration-snippet” dan β€œnginx.ingress parameter .kubernetes” untuk menggantikannya .io/permanent-redirect." Antara lain, hak akses yang diperoleh memungkinkan Anda mengambil token yang digunakan untuk otentikasi di tingkat manajemen cluster. Kerentanan CVE-2022-4886 memungkinkan Anda melewati verifikasi jalur file menggunakan arahan log_format.

Dua kerentanan pertama hanya muncul di rilis ingress-nginx sebelum versi 1.9.0, dan yang terakhir - sebelum versi 1.8.0. Untuk melakukan serangan, penyerang harus memiliki akses ke konfigurasi objek ingress, misalnya di cluster Kubernetes multi-tenant, di mana pengguna diberikan kemampuan untuk membuat objek di namespace mereka.

Sumber: opennet.ru

Tambah komentar