Benchmark Kubernetes CIS

Dokumen ini memperkenalkan CIS Kubernetes Benchmark, yang menjelaskan cara mengaudit kepatuhan Anda terhadap tolok ukur. Untuk rekomendasi yang tidak dapat Anda terapkan sendiri, dokumen ini menjelaskan tindakan yang dilakukan Google Distributed Cloud untuk menangani rekomendasi tersebut.

Menggunakan Tolok Ukur CIS

Center for Internet Security (CIS) merilis tolok ukur untuk rekomendasi praktik terbaik keamanan. CIS Kubernetes Benchmark memberikan serangkaian rekomendasi untuk mengonfigurasi Kubernetes guna mendukung postur keamanan yang kuat. Tolok ukur ini terikat dengan rilis Kubernetes tertentu. Benchmark CIS Kubernetes ditulis untuk distribusi Kubernetes open source dan dimaksudkan agar dapat diterapkan secara universal di seluruh distribusi.

Versi

Tabel berikut berisi versi Google Distributed Cloud, Kubernetes, dan Benchmark Kubernetes CIS yang digunakan untuk melakukan penilaian yang dijelaskan dalam dokumen ini:

1,29

Versi Google Distributed Cloud Versi Kubernetes Versi Tolok Ukur Kubernetes CIS
1.29.0-gke.1449 1.29.3-gke.600 v1.8.0

1,28

Versi Google Distributed Cloud Versi Kubernetes Versi Tolok Ukur Kubernetes CIS
1.28.0-gke.435 1.28.3-gke.700 v1.7.0

1.16

Versi Google Distributed Cloud Versi Kubernetes Versi Tolok Ukur Kubernetes CIS
1.16.0 1.27.4-gke.1600 V1.23 (1.0.1)

Perlu diingat bahwa nomor versi untuk tolok ukur yang berbeda mungkin tidak sama.

Tolok Ukur Kubernetes CIS

Bagian berikut memberikan informasi dasar untuk membantu Anda menafsirkan status Benchmark Kubernetes CIS untuk Google Distributed Cloud.

Mengakses Tolok Ukur

Benchmark Kubernetes CIS tersedia di situs CIS.

Level Rekomendasi

Dalam CIS Kubernetes Benchmark,

Tingkat Deskripsi
Level 1

Rekomendasi bertujuan untuk:

  • bersifat praktis dan cermat;
  • memberikan manfaat keamanan yang jelas; dan
  • tidak menghambat utilitas teknologi di luar batas yang dapat diterima.
  • Level 2

    Memperluas profil Level 1.

    Rekomendasi menunjukkan satu atau beberapa karakteristik berikut:

  • ditujukan untuk lingkungan atau kasus penggunaan yang sangat mengutamakan keamanan;
  • bertindak sebagai langkah defense in depth; atau
  • mungkin menghambat utilitas atau kinerja teknologi.
  • Status Penilaian

    Status penilaian disertakan untuk setiap rekomendasi. Status penilaian menunjukkan apakah rekomendasi yang diberikan dapat diotomatiskan atau memerlukan langkah manual untuk diterapkan. Kedua status sama pentingnya serta ditentukan dan didukung seperti yang dijelaskan dalam tabel berikut:

    Pemberian skor Deskripsi
    Otomatis Merepresentasikan rekomendasi agar penilaian kontrol teknis dapat sepenuhnya diotomatiskan dan divalidasi untuk berstatus lulus/gagal. Rekomendasi akan mencakup informasi yang diperlukan untuk mengimplementasikan otomatisasi.
    Manual Mewakili rekomendasi ketika penilaian kontrol teknis tidak dapat diotomatiskan sepenuhnya dan mengharuskan semua atau beberapa langkah manual untuk memvalidasi bahwa status yang dikonfigurasi telah ditetapkan seperti yang diharapkan. Status yang diharapkan dapat bervariasi, bergantung pada lingkungannya.

    Evaluasi pada Google Distributed Cloud

    Kami menggunakan nilai berikut untuk menentukan status Rekomendasi Kubernetes di Google Distributed Cloud:

    Status Deskripsi
    Lulus Mematuhi Rekomendasi Tolok Ukur.
    Gagal Tidak mematuhi Rekomendasi Tolok Ukur.
    Kontrol Setara Tidak mematuhi persyaratan persisnya dalam Rekomendasi Tolok Ukur, tetapi mekanisme lain di Google Distributed Cloud ada untuk menyediakan kontrol keamanan yang setara.
    Bergantung pada Lingkungan Google Distributed Cloud tidak mengonfigurasi item yang terkait dengan Rekomendasi ini. Konfigurasi pengguna menentukan apakah lingkungan mereka mematuhi Rekomendasi Tolok Ukur.

    Arsitektur Cloud Terdistribusi Google

    Google Distributed Cloud mendukung beberapa konfigurasi cluster dan jenis cluster. Setiap jenis cluster yang didukung, admin, pengguna, hybrid, dan mandiri, dievaluasi berdasarkan tolok ukur CIS. Penilaian dan justifikasi berikut berlaku untuk semua jenis cluster yang didukung. Informasi selengkapnya tentang konfigurasi cluster yang didukung oleh Google Distributed Cloud dapat ditemukan di Memilih model deployment.

    Status di Google Distributed Cloud

    Bagian berikut berisi penilaian untuk cluster baru yang dibuat dengan versi tertentu dari Google Distributed Cloud. Penilaian ini merupakan indikator untuk performa cluster baru tanpa workload pengguna terhadap Tolok Ukur Kubernetes CIS. Jika Anda men-deploy workload sendiri sebelum mengaudit Tolok ukur sendiri, hasilnya mungkin berbeda.

    Status GKE pada cluster Bare Metal:

    1,29

    # Rekomendasi Tingkat Status
    1 cis-1.8
    1.1 File Konfigurasi Node Bidang Kontrol
    1.1.1 Pastikan izin file spesifikasi pod server API disetel ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.2 Pastikan kepemilikan file spesifikasi pod server API disetel ke root:root (Otomatis) L1 Lulus
    1.1.3 Pastikan izin file spesifikasi pod pengelola pengontrol ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.4 Pastikan kepemilikan file spesifikasi pod pengelola pengontrol disetel ke root:root (Otomatis) L1 Lulus
    1.1.5 Pastikan izin file spesifikasi pod penjadwal ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.6 Pastikan kepemilikan file spesifikasi pod penjadwal disetel ke root:root (Otomatis) L1 Lulus
    1.1.7 Pastikan izin file spesifikasi pod dll. ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Lulus
    1.1.8 Pastikan kepemilikan file spesifikasi pod dll. ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara
    1.1.10 Pastikan kepemilikan file Container Network Interface ditetapkan ke root:root (Manual) L1 Lulus
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara
    1.1.13 Pastikan izin file konferensi.admin ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.14 Pastikan kepemilikan file konferensi.admin ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.15 Pastikan izin file.penjadwal disetel ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara
    1.1.17 Pastikan izin file konferensi.Pengontrol-pengelola ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.20 Pastikan izin file sertifikat PKI Kubernetes ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara
    1.2 Server API
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan
    1.2.2 Pastikan parameter --token-auth-file belum ditetapkan (Otomatis) L1 Lulus
    1.2.3 Pastikan --DenyServiceExternalIPs disetel (Manual) L1 Kontrol Setara
    1.2.4 Pastikan argumen --kubelet-client-certificate dan --kubelet-client-key ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.5 Pastikan argumen --kubelet-certificate-authority ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.6 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    1.2.7 Pastikan argumen --authorization-mode menyertakan Node (Otomatis) L1 Lulus
    1.2.8 Pastikan argumen --authorization-mode menyertakan RBAC (Otomatis) L1 Lulus
    1.2.9 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan
    1.2.10 Memastikan plugin kontrol penerimaan AlwaysAdmit tidak disetel (Otomatis) L1 Lulus
    1.2.11 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan
    1.2.12 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan
    1.2.13 Pastikan ServiceAccount plugin kontrol penerimaan ditetapkan (Otomatis) L1 Peringatkan
    1.2.14 Memastikan plugin kontrol penerimaan Namespace Namespace ditetapkan (Otomatis) L1 Lulus
    1.2.15 Pastikan NodeRestriction plugin kontrol penerimaan ditetapkan (Otomatis) L1 Lulus
    1.2.16 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.2.17 Pastikan argumen --audit-log-path ditetapkan (Otomatis) L1 Lulus
    1.2.18 Pastikan argumen --audit-log-maxage ditetapkan ke 30 atau sebagaimana yang sesuai (Otomatis) L1 Lulus
    1.2.19 Pastikan argumen --audit-log-maxbackup ditetapkan ke 10 atau sebagaimana yang sesuai (Otomatis) L1 Lulus
    1.2.20 Pastikan argumen --audit-log-maxsize ditetapkan ke 100 atau sebagaimana yang sesuai (Otomatis) L1 Lulus
    1.2.21 Pastikan argumen --request-timeout disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.22 Pastikan argumen --service-account-lookup ditetapkan ke true (Otomatis) L1 Lulus
    1.2.23 Pastikan argumen --service-account-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.24 Pastikan argumen --etcd-certfile dan --etcd-keyfile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.25 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.26 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.27 Pastikan argumen --etcd-cafile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.28 Pastikan argumen --encryption-provider-config disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.29 Memastikan penyedia enkripsi dikonfigurasi dengan benar (Manual) L1 Lulus
    1.2.30 Memastikan Server API hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Lulus
    1.3 Controller Manager
    1.3.1 Pastikan argumen --terminated-pod-gc-threshold disetel sebagaimana mestinya (Manual) L1 Lulus
    1.3.2 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.3.3 Pastikan argumen --use-service-account-credentials ditetapkan ke true (Otomatis) L1 Lulus
    1.3.4 Pastikan argumen --service-account-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.5 Pastikan argumen --root-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.6 Pastikan argumen RotationKubeletServerCertificate disetel ke true (Otomatis) L2 Lulus
    1.3.7 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan
    1.4 Scheduler
    1.4.1 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.4.2 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan
    2 cis-1.8
    2 Konfigurasi Node Etcd
    2.1 Pastikan argumen --cert-file dan --key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2.2 Pastikan argumen --client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.3 Pastikan argumen --auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,4 Pastikan argumen --peer-cert-file dan --peer-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2,5 Pastikan argumen --peer-client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.6 Pastikan argumen --peer-auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,7 Pastikan Certificate Authority unik digunakan untuk dll. (Manual) L2 Lulus
    3 cis-1.8
    3.1 Autentikasi dan Otorisasi
    3.1.1 Autentikasi sertifikat klien tidak boleh digunakan untuk pengguna (Manual) L2 Lulus
    3.1.2 Autentikasi token akun layanan tidak boleh digunakan untuk pengguna (Manual) L1 Lulus
    3.1.3 Autentikasi token bootstrap tidak boleh digunakan untuk pengguna (Manual) L1 Lulus
    3.2 Logging
    3.2.1 Memastikan kebijakan audit minimal sudah dibuat (Manual) L1 Lulus
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara
    4 cis-1.8
    4.1 File Konfigurasi Worker Node
    4.1.1 Pastikan izin file layanan kubelet ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Gagal
    4.1.2 Pastikan kepemilikan file layanan kubelet disetel ke root:root (Otomatis) L1 Lulus
    4.1.3 Jika file kubeconfig proxy ada, pastikan izin ditetapkan ke 600 atau yang lebih ketat (Manual) L1 Lulus
    4.1.4 Jika file kubeconfig proxy ada, pastikan kepemilikan disetel ke root:root (Manual) L1 Lulus
    4.1.5 Pastikan izin file conf --kubeconfig kubelet.ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    4.1.6 Pastikan bahwa --kubeconfig kubelet.kepemilikan file conf disetel ke root:root (Otomatis) L1 Lulus
    4.1.7 Pastikan izin file certificate authority ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal
    4.1.8 Pastikan kepemilikan file certificate authority klien ditetapkan ke root:root (Manual) L1 Lulus
    4.1.9 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasikan izin yang ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Gagal
    4.1.10 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasi kepemilikan file ditetapkan ke root:root (Otomatis) L1 Lulus
    4.2 Kubelet
    4.2.1 Pastikan argumen --anonymous-auth ditetapkan ke salah (Otomatis) L1 Lulus
    4.2.2 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    4.2.3 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    4.2.4 Pastikan argumen --read-only-port disetel ke 0 (Manual) L1 Lulus
    4.2.5 Pastikan argumen --streaming-connection-idle-timeout tidak ditetapkan ke 0 (Manual) L1 Lulus
    4.2.6 Pastikan argumen --make-iptables-util-chains ditetapkan ke true (Otomatis) L1 Gagal
    4.2.7 Pastikan argumen --hostname-override tidak ditetapkan (Manual) L1 Lulus
    4.2.8 Pastikan argumen eventRecordQPS disetel ke level yang memastikan pengambilan peristiwa yang sesuai (Manual) L1 Lulus
    4.2.9 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L2 Kontrol Setara
    4.2.10 Pastikan argumen --rotate-certificates tidak ditetapkan ke salah (Otomatis) L1 Kontrol Setara
    4.2.11 Memastikan argumen RotationKubeletServerCertificate disetel ke true (Manual) L1 Lulus
    4.2.12 Memastikan Kubelet hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Lulus
    4.2.13 Memastikan batas ditetapkan di PID pod (Manual) L1 Peringatkan

    1,28

    # Rekomendasi Tingkat Status
    1 cis-1.7
    1.1 File Konfigurasi Node Bidang Kontrol
    1.1.1 Pastikan izin file spesifikasi pod server API disetel ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.2 Pastikan kepemilikan file spesifikasi pod server API disetel ke root:root (Otomatis) L1 Lulus
    1.1.3 Pastikan izin file spesifikasi pod pengelola pengontrol ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.4 Pastikan kepemilikan file spesifikasi pod pengelola pengontrol disetel ke root:root (Otomatis) L1 Lulus
    1.1.5 Pastikan izin file spesifikasi pod penjadwal ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.6 Pastikan kepemilikan file spesifikasi pod penjadwal disetel ke root:root (Otomatis) L1 Lulus
    1.1.7 Pastikan izin file spesifikasi pod dll. ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Lulus
    1.1.8 Pastikan kepemilikan file spesifikasi pod dll. ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara
    1.1.10 Pastikan kepemilikan file Container Network Interface ditetapkan ke root:root (Manual) L1 Lulus
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara
    1.1.13 Pastikan izin file konferensi.admin ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.14 Pastikan kepemilikan file konferensi.admin ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.15 Pastikan izin file.penjadwal disetel ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara
    1.1.17 Pastikan izin file konferensi.Pengontrol-pengelola ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.20 Pastikan izin file sertifikat PKI Kubernetes ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara
    1.2 Server API
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan
    1.2.2 Pastikan parameter --token-auth-file belum ditetapkan (Otomatis) L1 Lulus
    1.2.3 Pastikan --DenyServiceExternalIPs disetel (Manual) L1 Kontrol Setara
    1.2.4 Pastikan argumen --kubelet-client-certificate dan --kubelet-client-key ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.5 Pastikan argumen --kubelet-certificate-authority ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.6 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    1.2.7 Pastikan argumen --authorization-mode menyertakan Node (Otomatis) L1 Lulus
    1.2.8 Pastikan argumen --authorization-mode menyertakan RBAC (Otomatis) L1 Lulus
    1.2.9 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan
    1.2.10 Memastikan plugin kontrol penerimaan AlwaysAdmit tidak disetel (Otomatis) L1 Lulus
    1.2.11 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan
    1.2.12 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan
    1.2.13 Pastikan ServiceAccount plugin kontrol penerimaan ditetapkan (Otomatis) L1 Peringatkan
    1.2.14 Memastikan plugin kontrol penerimaan Namespace Namespace ditetapkan (Otomatis) L1 Lulus
    1.2.15 Pastikan NodeRestriction plugin kontrol penerimaan ditetapkan (Otomatis) L1 Lulus
    1.2.16 Pastikan argumen --secure-port tidak disetel ke 0 - Catatan:Rekomendasi ini sudah tidak berlaku dan akan dihapus sesuai proses konsensus (Manual) L1 Lulus
    1.2.17 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.2.18 Pastikan argumen --audit-log-path ditetapkan (Otomatis) L1 Lulus
    1.2.19 Pastikan argumen --audit-log-maxage ditetapkan ke 30 atau sebagaimana yang sesuai (Otomatis) L1 Lulus
    1.2.20 Pastikan argumen --audit-log-maxbackup ditetapkan ke 10 atau sebagaimana yang sesuai (Otomatis) L1 Gagal
    1.2.21 Pastikan argumen --audit-log-maxsize ditetapkan ke 100 atau sebagaimana yang sesuai (Otomatis) L1 Lulus
    1.2.22 Pastikan argumen --request-timeout disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.23 Pastikan argumen --service-account-lookup ditetapkan ke true (Otomatis) L1 Lulus
    1.2.24 Pastikan argumen --service-account-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.25 Pastikan argumen --etcd-certfile dan --etcd-keyfile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.26 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.27 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.28 Pastikan argumen --etcd-cafile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.29 Pastikan argumen --encryption-provider-config disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.30 Memastikan penyedia enkripsi dikonfigurasi dengan benar (Manual) L1 Lulus
    1.2.31 Memastikan Server API hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Lulus
    1.3 Controller Manager
    1.3.1 Pastikan argumen --terminated-pod-gc-threshold disetel sebagaimana mestinya (Manual) L1 Lulus
    1.3.2 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.3.3 Pastikan argumen --use-service-account-credentials ditetapkan ke true (Otomatis) L1 Lulus
    1.3.4 Pastikan argumen --service-account-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.5 Pastikan argumen --root-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.6 Pastikan argumen RotationKubeletServerCertificate disetel ke true (Otomatis) L2 Lulus
    1.3.7 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan
    1.4 Scheduler
    1.4.1 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.4.2 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan
    2 cis-1.7
    2 Konfigurasi Node Etcd
    2.1 Pastikan argumen --cert-file dan --key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2.2 Pastikan argumen --client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.3 Pastikan argumen --auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,4 Pastikan argumen --peer-cert-file dan --peer-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2,5 Pastikan argumen --peer-client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.6 Pastikan argumen --peer-auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,7 Pastikan Certificate Authority unik digunakan untuk dll. (Manual) L2 Lulus
    3 cis-1.7
    3.1 Autentikasi dan Otorisasi
    3.1.1 Autentikasi sertifikat klien tidak boleh digunakan untuk pengguna (Manual) L2 Lulus
    3.1.2 Autentikasi token akun layanan tidak boleh digunakan untuk pengguna (Manual) L1 Lulus
    3.1.3 Autentikasi token bootstrap tidak boleh digunakan untuk pengguna (Manual) L1 Lulus
    3.2 Logging
    3.2.1 Memastikan kebijakan audit minimal sudah dibuat (Manual) L1 Lulus
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara
    4 cis-1.7
    4.1 File Konfigurasi Worker Node
    4.1.1 Pastikan izin file layanan kubelet ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Gagal
    4.1.2 Pastikan kepemilikan file layanan kubelet disetel ke root:root (Otomatis) L1 Lulus
    4.1.3 Jika file kubeconfig proxy ada, pastikan izin ditetapkan ke 600 atau yang lebih ketat (Manual) L1 Lulus
    4.1.4 Jika file kubeconfig proxy ada, pastikan kepemilikan disetel ke root:root (Manual) L1 Lulus
    4.1.5 Pastikan izin file conf --kubeconfig kubelet.ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    4.1.6 Pastikan bahwa --kubeconfig kubelet.kepemilikan file conf disetel ke root:root (Otomatis) L1 Lulus
    4.1.7 Pastikan izin file certificate authority ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal
    4.1.8 Pastikan kepemilikan file certificate authority klien ditetapkan ke root:root (Manual) L1 Lulus
    4.1.9 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasikan izin yang ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal
    4.1.10 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasi kepemilikan file ditetapkan ke root:root (Manual) L1 Lulus
    4.2 Kubelet
    4.2.1 Pastikan argumen --anonymous-auth ditetapkan ke salah (Otomatis) L1 Lulus
    4.2.2 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    4.2.3 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    4.2.4 Pastikan argumen --read-only-port disetel ke 0 (Manual) L1 Lulus
    4.2.5 Pastikan argumen --streaming-connection-idle-timeout tidak ditetapkan ke 0 (Manual) L1 Lulus
    4.2.6 Pastikan argumen --make-iptables-util-chains ditetapkan ke true (Otomatis) L1 Gagal
    4.2.7 Pastikan argumen --hostname-override tidak ditetapkan (Manual) L1 Lulus
    4.2.8 Pastikan argumen eventRecordQPS disetel ke level yang memastikan pengambilan peristiwa yang sesuai (Manual) L1 Lulus
    4.2.9 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L2 Kontrol Setara
    4.2.10 Pastikan argumen --rotate-certificates tidak ditetapkan ke salah (Otomatis) L1 Kontrol Setara
    4.2.11 Memastikan argumen RotationKubeletServerCertificate disetel ke true (Manual) L1 Lulus
    4.2.12 Memastikan Kubelet hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Lulus
    4.2.13 Memastikan batas ditetapkan di PID pod (Manual) L1 Peringatkan

    1.16

    # Rekomendasi Tingkat Status
    1 cis-1,23
    1.1 File Konfigurasi Node Bidang Kontrol
    1.1.1 Pastikan izin file spesifikasi pod server API disetel ke 644 atau lebih ketat (Otomatis) L1 Lulus
    1.1.2 Pastikan kepemilikan file spesifikasi pod server API disetel ke root:root (Otomatis) L1 Lulus
    1.1.3 Pastikan izin file spesifikasi pod pengelola pengontrol ditetapkan ke 644 atau lebih ketat (Otomatis) L1 Lulus
    1.1.4 Pastikan kepemilikan file spesifikasi pod pengelola pengontrol disetel ke root:root (Otomatis) L1 Lulus
    1.1.5 Pastikan izin file spesifikasi pod penjadwal ditetapkan ke 644 atau lebih ketat (Otomatis) L1 Lulus
    1.1.6 Pastikan kepemilikan file spesifikasi pod penjadwal disetel ke root:root (Otomatis) L1 Lulus
    1.1.7 Pastikan izin file spesifikasi pod dll. ditetapkan ke 644 atau yang lebih ketat (Otomatis) L1 Lulus
    1.1.8 Pastikan kepemilikan file spesifikasi pod dll. ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 644 atau lebih ketat (Manual) L1 Kontrol Setara
    1.1.10 Pastikan kepemilikan file Container Network Interface ditetapkan ke root:root (Manual) L1 Lulus
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara
    1.1.13 Pastikan izin file konferensi.admin ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Lulus
    1.1.14 Pastikan kepemilikan file konferensi.admin ditetapkan ke root:root (Otomatis) L1 Lulus
    1.1.15 Pastikan izin file.penjadwal disetel ke 644 atau lebih ketat (Otomatis) L1 Lulus
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara
    1.1.17 Pastikan izin file konferensi.Pengontrol-pengelola ditetapkan ke 644 atau lebih ketat (Otomatis) L1 Lulus
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara
    1.1.20 Pastikan izin file sertifikat PKI Kubernetes ditetapkan ke 644 atau lebih ketat (Manual) L1 Lulus
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara
    1.2 Server API
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan
    1.2.2 Pastikan parameter --token-auth-file belum ditetapkan (Otomatis) L1 Lulus
    1.2.3 Pastikan --DenyServiceExternalIPs tidak disetel (Otomatis) L1 Lulus
    1.2.4 Pastikan argumen --kubelet-https ditetapkan ke true (Otomatis) L1 Lulus
    1.2.5 Pastikan argumen --kubelet-client-certificate dan --kubelet-client-key ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.6 Pastikan argumen --kubelet-certificate-authority ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.7 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    1.2.8 Pastikan argumen --authorization-mode menyertakan Node (Otomatis) L1 Lulus
    1.2.9 Pastikan argumen --authorization-mode menyertakan RBAC (Otomatis) L1 Lulus
    1.2.10 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan
    1.2.11 Memastikan plugin kontrol penerimaan AlwaysAdmit tidak disetel (Otomatis) L1 Lulus
    1.2.12 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan
    1.2.13 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan
    1.2.14 Pastikan ServiceAccount plugin kontrol penerimaan ditetapkan (Otomatis) L1 Lulus
    1.2.15 Memastikan plugin kontrol penerimaan Namespace Namespace ditetapkan (Otomatis) L1 Lulus
    1.2.16 Pastikan NodeRestriction plugin kontrol penerimaan ditetapkan (Otomatis) L1 Lulus
    1.2.17 Pastikan argumen --secure-port tidak ditetapkan ke 0 (Otomatis) L1 Lulus
    1.2.18 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.2.19 Pastikan argumen --audit-log-path ditetapkan (Otomatis) L1 Gagal
    1.2.20 Pastikan argumen --audit-log-maxage ditetapkan ke 30 atau sebagaimana yang sesuai (Otomatis) L1 Gagal
    1.2.21 Pastikan argumen --audit-log-maxbackup ditetapkan ke 10 atau sebagaimana yang sesuai (Otomatis) L1 Gagal
    1.2.22 Pastikan argumen --audit-log-maxsize ditetapkan ke 100 atau sebagaimana yang sesuai (Otomatis) L1 Gagal
    1.2.23 Pastikan argumen --request-timeout disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.24 Pastikan argumen --service-account-lookup ditetapkan ke true (Otomatis) L1 Lulus
    1.2.25 Pastikan argumen --service-account-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.26 Pastikan argumen --etcd-certfile dan --etcd-keyfile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.27 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.28 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.29 Pastikan argumen --etcd-cafile ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.2.30 Pastikan argumen --encryption-provider-config disetel sebagaimana mestinya (Manual) L1 Lulus
    1.2.31 Memastikan penyedia enkripsi dikonfigurasi dengan benar (Manual) L1 Lulus
    1.2.32 Memastikan Server API hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Lulus
    1.3 Controller Manager
    1.3.1 Pastikan argumen --terminated-pod-gc-threshold disetel sebagaimana mestinya (Manual) L1 Lulus
    1.3.2 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.3.3 Pastikan argumen --use-service-account-credentials ditetapkan ke true (Otomatis) L1 Lulus
    1.3.4 Pastikan argumen --service-account-private-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.5 Pastikan argumen --root-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    1.3.6 Pastikan argumen RotationKubeletServerCertificate disetel ke true (Otomatis) L2 Lulus
    1.3.7 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Lulus
    1.4 Scheduler
    1.4.1 Pastikan argumen --profiling ditetapkan ke salah (Otomatis) L1 Lulus
    1.4.2 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Lulus
    2 cis-1,23
    2 Konfigurasi Node Etcd
    2.1 Pastikan argumen --cert-file dan --key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2.2 Pastikan argumen --client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.3 Pastikan argumen --auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,4 Pastikan argumen --peer-cert-file dan --peer-key-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    2,5 Pastikan argumen --peer-client-cert-auth ditetapkan ke true (Otomatis) L1 Lulus
    2.6 Pastikan argumen --peer-auto-tls tidak ditetapkan ke true (Otomatis) L1 Lulus
    2,7 Pastikan Certificate Authority unik digunakan untuk dll. (Manual) L2 Lulus
    3 cis-1,23
    3.1 Autentikasi dan Otorisasi
    3.1.1 Autentikasi sertifikat klien tidak boleh digunakan untuk pengguna (Manual) L2 Lulus
    3.2 Logging
    3.2.1 Memastikan kebijakan audit minimal sudah dibuat (Manual) L1 Lulus
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara
    4 cis-1,23
    4.1 File Konfigurasi Worker Node
    4.1.1 Pastikan izin file layanan kubelet ditetapkan ke 644 atau yang lebih ketat (Otomatis) L1 Lulus
    4.1.2 Pastikan kepemilikan file layanan kubelet disetel ke root:root (Otomatis) L1 Lulus
    4.1.3 Jika file kubeconfig proxy ada, pastikan izin ditetapkan ke 644 atau yang lebih ketat (Manual) L1 Lulus
    4.1.4 Jika file kubeconfig proxy ada, pastikan kepemilikan disetel ke root:root (Manual) L1 Lulus
    4.1.5 Pastikan izin file conf --kubeconfig kubelet.ditetapkan ke 644 atau lebih ketat (Otomatis) L1 Lulus
    4.1.6 Pastikan bahwa --kubeconfig kubelet.kepemilikan file conf disetel ke root:root (Otomatis) L1 Lulus
    4.1.7 Pastikan izin file certificate authority ditetapkan ke 644 atau lebih ketat (Manual) L1 Lulus
    4.1.8 Pastikan kepemilikan file certificate authority klien ditetapkan ke root:root (Manual) L1 Lulus
    4.1.9 Pastikan file konfigurasi --config kubelet memiliki izin yang ditetapkan ke 644 atau yang lebih ketat (Otomatis) L1 Lulus
    4.1.10 Pastikan kepemilikan file konfigurasi --config kubelet disetel ke root:root (Otomatis) L1 Lulus
    4.2 Kubelet
    4.2.1 Pastikan argumen --anonymous-auth ditetapkan ke salah (Otomatis) L1 Lulus
    4.2.2 Pastikan argumen --authorization-mode tidak ditetapkan ke AlwaysAllow (Otomatis) L1 Lulus
    4.2.3 Pastikan argumen --client-ca-file ditetapkan sebagaimana mestinya (Otomatis) L1 Lulus
    4.2.4 Pastikan argumen --read-only-port disetel ke 0 (Manual) L1 Gagal
    4.2.5 Pastikan argumen --streaming-connection-idle-timeout tidak ditetapkan ke 0 (Manual) L1 Lulus
    4.2.6 Pastikan argumen --protect-kernel-defaults ditetapkan ke true (Otomatis) L1 Gagal
    4.2.7 Pastikan argumen --make-iptables-util-chains ditetapkan ke true (Otomatis) L1 Lulus
    4.2.8 Pastikan argumen --hostname-override tidak ditetapkan (Manual) L1 Lulus
    4.2.9 Pastikan argumen --event-qps disetel ke 0 atau level yang memastikan pengambilan peristiwa yang sesuai (Manual) L2 Peringatkan
    4.2.10 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L1 Kontrol Setara
    4.2.11 Pastikan argumen --rotate-certificates tidak ditetapkan ke salah (Otomatis) L1 Lulus
    4.2.12 Memastikan argumen RotationKubeletServerCertificate disetel ke true (Manual) L1 Lulus
    4.2.13 Memastikan Kubelet hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Kontrol Setara

    Kegagalan dan Kontrol Setara untuk GKE pada cluster admin Bare Metal:

    1,29

    # Rekomendasi Tingkat Status Nilai Justifikasi
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara 755 Cluster Anthos pada jalur Antarmuka Jaringan Container bare metal adalah /opt/cni/bin, dan izinnya ditetapkan ke 755 untuk operasi cluster normal.
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara 755 Direktori data etcd memiliki izin 755 default, tetapi subdirektorinya adalah 700.
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara 2003:2003 Direktori data etcd, /var/lib/etcd, dimiliki oleh 2003:2003 sebagai hasil dari rootless control-plane demi keamanan yang ditingkatkan.
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara 2002:2002 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara 2001:2001 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara variable:variable Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.20 Pastikan izin file sertifikat PKI Kubernetes ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara 644 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara 600~640 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan tidak ditetapkan Beberapa cluster Anthos pada operasi bare metal, seperti HA, mengharuskan autentikasi anonim diaktifkan.
    1.2.3 Pastikan --DenyServiceExternalIPs disetel (Manual) L1 Kontrol Setara tidak ditetapkan Diaktifkan secara default di Kubernetes v1.25 dan yang lebih baru.
    1.2.9 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.2.11 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan tidak ditetapkan Pengontrol penerimaan AlwaysPullImages memberikan beberapa perlindungan untuk image registry pribadi di cluster multi-tenant yang tidak kooperatif, dengan mengorbankan registry container sebagai titik kegagalan tunggal untuk membuat Pod baru di seluruh cluster. Cluster Anthos on bare metal tidak mengaktifkan pengontrol penerimaan AlwaysPullImages, sehingga admin cluster dapat menerapkan kebijakan penerimaan untuk melakukan kompromi ini sendiri.
    1.2.12 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan tidak ditetapkan Cluster Anthos on bare metal tidak mengaktifkan Kebijakan Keamanan Pod. Penerimaan Keamanan Pod diaktifkan di cluster Kubernetes 1.23 secara default. Buka https://kubernetes.io/docs/concepts/security/pod-security-admission/
    1.2.13 Pastikan ServiceAccount plugin kontrol penerimaan ditetapkan (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.3.7 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.4.2 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal menangkap log audit, tetapi tidak menggunakan flag ini untuk pengauditan, lebih lanjut terkait logging dan pemantauan.
    4.1.1 Pastikan izin file layanan kubelet ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.1.7 Pastikan izin file certificate authority ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.1.9 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasikan izin yang ditetapkan ke 600 atau lebih ketat (Otomatis) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.2.6 Pastikan argumen --make-iptables-util-chains ditetapkan ke true (Otomatis) L1 Gagal false Anthos di mesin cluster Bare Metal tidak melindungi default kernel dari Kubernetes, karena workload pelanggan mungkin ingin memodifikasinya.
    4.2.9 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L2 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal mengelola TLS server kubelet menggunakan flag --rotate-server-certificates.
    4.2.10 Pastikan argumen --rotate-certificates tidak ditetapkan ke salah (Otomatis) L1 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal mengelola TLS server kubelet menggunakan tanda --rotate-server-certificates.
    4.2.13 Memastikan batas ditetapkan di PID pod (Manual) L1 Peringatkan tidak ditetapkan Cluster Anthos pada kubelet bare metal --pod-max-pids tidak disetel secara default, sehingga tidak ada batasan eksplisit terkait jumlah PID yang dapat digunakan pod. Pod mewarisi batas PID keseluruhan host, yang biasanya ditetapkan oleh parameter kernel pid_max sistem operasi. Sistem operasi dimiliki oleh pengguna.

    1,28

    # Rekomendasi Tingkat Status Nilai Justifikasi
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara 755 Cluster Anthos pada jalur Antarmuka Jaringan Container bare metal adalah /opt/cni/bin, dan izinnya ditetapkan ke 755 untuk operasi cluster normal.
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara 755 Direktori data etcd memiliki izin 755 default, tetapi subdirektorinya adalah 700.
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara 2003:2003 Direktori data etcd, /var/lib/etcd, dimiliki oleh 2003:2003 sebagai hasil dari rootless control-plane demi keamanan yang ditingkatkan.
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara 2002:2002 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara 2001:2001 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara variable:variable Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.20 Pastikan izin file sertifikat PKI Kubernetes ditetapkan ke 600 atau lebih ketat (Manual) L1 Kontrol Setara 644 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara 600~640 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan tidak ditetapkan Beberapa cluster Anthos pada operasi bare metal, seperti HA, mengharuskan autentikasi anonim diaktifkan.
    1.2.3 Pastikan --DenyServiceExternalIPs disetel (Manual) L1 Kontrol Setara tidak ditetapkan Diaktifkan secara default di Kubernetes v1.25 dan yang lebih baru.
    1.2.9 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.2.11 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan tidak ditetapkan Pengontrol penerimaan AlwaysPullImages memberikan beberapa perlindungan untuk image registry pribadi di cluster multi-tenant yang tidak kooperatif, dengan mengorbankan registry container sebagai titik kegagalan tunggal untuk membuat Pod baru di seluruh cluster. Cluster Anthos on bare metal tidak mengaktifkan pengontrol penerimaan AlwaysPullImages, sehingga admin cluster dapat menerapkan kebijakan penerimaan untuk melakukan kompromi ini sendiri.
    1.2.12 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan tidak ditetapkan Cluster Anthos on bare metal tidak mengaktifkan Kebijakan Keamanan Pod. Penerimaan Keamanan Pod diaktifkan di cluster Kubernetes 1.23 secara default. Buka https://kubernetes.io/docs/concepts/security/pod-security-admission/
    1.2.13 Pastikan ServiceAccount plugin kontrol penerimaan ditetapkan (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.2.20 Pastikan argumen --audit-log-maxbackup ditetapkan ke 10 atau sebagaimana yang sesuai (Otomatis) L1 Gagal 1 Untuk diperbaiki dalam rilis mendatang.
    1.3.7 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    1.4.2 Pastikan argumen --bind-address disetel ke 127.0.0.1 (Otomatis) L1 Peringatkan tidak ditetapkan Untuk diperbaiki dalam rilis mendatang.
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal menangkap log audit, tetapi tidak menggunakan flag ini untuk pengauditan, lebih lanjut terkait logging dan pemantauan.
    4.1.1 Pastikan izin file layanan kubelet ditetapkan ke 600 atau yang lebih ketat (Otomatis) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.1.7 Pastikan izin file certificate authority ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.1.9 Jika konfigurasi kubelet.file konfigurasi yaml digunakan, validasikan izin yang ditetapkan ke 600 atau lebih ketat (Manual) L1 Gagal 644 Untuk diperbaiki dalam rilis mendatang.
    4.2.6 Pastikan argumen --make-iptables-util-chains ditetapkan ke true (Otomatis) L1 Gagal false Anthos di mesin cluster Bare Metal tidak melindungi default kernel dari Kubernetes, karena workload pelanggan mungkin ingin memodifikasinya.
    4.2.9 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L2 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal mengelola TLS server kubelet menggunakan flag --rotate-server-certificates.
    4.2.10 Pastikan argumen --rotate-certificates tidak ditetapkan ke salah (Otomatis) L1 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal mengelola TLS server kubelet menggunakan tanda --rotate-server-certificates.
    4.2.13 Memastikan batas ditetapkan di PID pod (Manual) L1 Peringatkan tidak ditetapkan Cluster Anthos pada kubelet bare metal --pod-max-pids tidak disetel secara default, sehingga tidak ada batasan eksplisit terkait jumlah PID yang dapat digunakan pod. Pod mewarisi batas PID keseluruhan host, yang biasanya ditetapkan oleh parameter kernel pid_max sistem operasi. Sistem operasi dimiliki oleh pengguna.

    1.16

    # Rekomendasi Tingkat Status Nilai Justifikasi
    1.1.9 Pastikan izin file Antarmuka Jaringan Penampung ditetapkan ke 644 atau lebih ketat (Manual) L1 Kontrol Setara 755 Cluster Anthos pada jalur Antarmuka Jaringan Container bare metal adalah /opt/cni/bin, dan izinnya ditetapkan ke 755 untuk operasi cluster normal.
    1.1.11 Pastikan izin direktori data dst. ditetapkan ke 700 atau yang lebih ketat (Otomatis) L1 Kontrol Setara 755 Direktori data etcd memiliki izin 755 default, tetapi subdirektorinya adalah 700.
    1.1.12 Pastikan kepemilikan direktori data etcd ditetapkan ke etcd:etcd (Otomatis) L1 Kontrol Setara 2003:2003 Direktori data etcd, /var/lib/etcd, dimiliki oleh 2003:2003 sebagai hasil dari rootless control-plane demi keamanan yang ditingkatkan.
    1.1.16 Pastikan kepemilikan file.penjadwal disetel ke root:root (Otomatis) L1 Kontrol Setara 2002:2002 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.18 Pastikan kepemilikan file konferensi.Pengontrol-pengelola ditetapkan ke root:root (Otomatis) L1 Kontrol Setara 2001:2001 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.19 Pastikan kepemilikan file dan direktori IKP Kubernetes ditetapkan ke root:root (Otomatis) L1 Kontrol Setara variable:variable Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.1.21 Pastikan izin file kunci PKI Kubernetes ditetapkan ke 600 (Manual) L1 Kontrol Setara 600~640 Cluster Anthos di bare metal, mulai rilis 1.9.0, mengimplementasikan bidang kontrol tanpa root untuk meningkatkan keamanan.
    1.2.1 Pastikan argumen --anonymous-auth disetel ke salah (Manual) L1 Peringatkan tidak ditetapkan Beberapa cluster Anthos pada operasi bare metal, seperti HA, mengharuskan autentikasi anonim diaktifkan.
    1.2.10 Pastikan plugin kontrol penerimaan EventRateLimit ditetapkan (Manual) L1 Peringatkan
    1.2.12 Pastikan plugin kontrol penerimaan AlwaysPullImages ditetapkan (Manual) L1 Peringatkan tidak ditetapkan Pengontrol penerimaan AlwaysPullImages memberikan beberapa perlindungan untuk image registry pribadi di cluster multi-tenant yang tidak kooperatif, dengan mengorbankan registry container sebagai titik kegagalan tunggal untuk membuat Pod baru di seluruh cluster. Cluster Anthos on bare metal tidak mengaktifkan pengontrol penerimaan AlwaysPullImages, sehingga admin cluster dapat menerapkan kebijakan penerimaan untuk melakukan kompromi ini sendiri.
    1.2.13 Pastikan plugin kontrol penerimaan SecurityContextDeny ditetapkan jika PodSecurityPolicy tidak digunakan (Manual) L1 Peringatkan tidak ditetapkan Cluster Anthos on bare metal tidak mengaktifkan Kebijakan Keamanan Pod. Penerimaan Keamanan Pod diaktifkan di cluster Kubernetes 1.23 secara default. Buka https://kubernetes.io/docs/concepts/security/pod-security-admission/
    1.2.19 Pastikan argumen --audit-log-path ditetapkan (Otomatis) L1 Gagal tidak ditetapkan secara default; tetapkan /var/log/apiserver/audit.log hanya jika Cloud Audit Logging dinonaktifkan Cluster Anthos di cluster bare metal secara default mengirim log audit server Kubernetes API ke Google Cloud.
    1.2.20 Pastikan argumen --audit-log-maxage ditetapkan ke 30 atau sebagaimana yang sesuai (Otomatis) L1 Gagal tidak ditetapkan secara default; tetapkan 30 hanya jika Cloud Audit Logging dinonaktifkan Cluster Anthos di cluster bare metal secara default mengirim log audit server Kubernetes API ke Google Cloud.
    1.2.21 Pastikan argumen --audit-log-maxbackup ditetapkan ke 10 atau sebagaimana yang sesuai (Otomatis) L1 Gagal tidak ditetapkan secara default, tetapkan 10 hanya jika Cloud Audit Logging dinonaktifkan Cluster Anthos di cluster bare metal secara default mengirim log audit server Kubernetes API ke Google Cloud.
    1.2.22 Pastikan argumen --audit-log-maxsize ditetapkan ke 100 atau sebagaimana yang sesuai (Otomatis) L1 Gagal tidak ditetapkan secara default, tetapkan 100 hanya jika Cloud Audit Logging dinonaktifkan Cluster Anthos di cluster bare metal secara default mengirim log audit server Kubernetes API ke Google Cloud.
    3.2.2 Memastikan kebijakan audit mencakup masalah keamanan utama (Manual) L2 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal menangkap log audit, tetapi tidak menggunakan flag ini untuk pengauditan, lebih lanjut terkait logging dan pemantauan.
    4.2.4 Pastikan argumen --read-only-port disetel ke 0 (Manual) L1 Gagal 10255 Cluster Anthos on bare metal saat ini menetapkan argumen --read-only-port ke 10255 untuk mengumpulkan metrik dari kubelet.
    4.2.6 Pastikan argumen --protect-kernel-defaults ditetapkan ke true (Otomatis) L1 Gagal false Anthos di mesin cluster Bare Metal tidak melindungi default kernel dari Kubernetes, karena workload pelanggan mungkin ingin memodifikasinya.
    4.2.9 Pastikan argumen --event-qps disetel ke 0 atau level yang memastikan pengambilan peristiwa yang sesuai (Manual) L2 Peringatkan tidak ditetapkan Peristiwa adalah objek Kubernetes yang disimpan di etcd. Untuk menghindari dll. yang berlebihan, tabel tersebut hanya disimpan selama satu jam, dan bukan merupakan mekanisme audit keamanan yang sesuai. Mengizinkan peristiwa tak terbatas seperti yang disarankan dalam kontrol ini akan mengekspos cluster ke risiko DoS yang tidak perlu dan bertentangan dengan rekomendasi untuk menggunakan admission EventRateLimits. Peristiwa keamanan yang relevan dan memerlukan penyimpanan permanen harus dikirim ke log.
    4.2.10 Pastikan argumen --tls-cert-file dan --tls-private-key-file ditetapkan sebagaimana mestinya (Manual) L1 Kontrol Setara tidak ditetapkan Cluster Anthos di bare metal mengelola TLS server kubelet menggunakan tanda --rotate-server-certificates.
    4.2.13 Memastikan Kubelet hanya menggunakan Cipher Kriptografis yang Kuat (Manual) L1 Kontrol Setara Dalam cluster Anthos pada node bare metal, kubelet menggunakan cipher suite Go default. Cluster Anthos on bare metal tidak menyediakan opsi konfigurasi bagi pengguna untuk menyesuaikan pemilihan cipher suite. Perhatikan bahwa klien modern menegosiasikan rangkaian penyandian dan tidak akan menggunakan penyandian yang lemah jika penyandian yang kuat tersedia secara bersama-sama.

    Cara mengaudit Tolok Ukur

    Petunjuk khusus untuk mengaudit setiap Rekomendasi tersedia sebagai bagian dari CIS Benchmark yang relevan. Namun, Anda mungkin ingin mengotomatiskan beberapa pemeriksaan ini untuk menyederhanakan verifikasi kontrol ini di lingkungan Anda. Alat seperti yang tercantum di bagian berikut dapat membantu menangani hal ini.

    Audit otomatis Tolok Ukur Kubernetes CIS

    Anda dapat menggunakan alat open source kube-bench untuk menguji konfigurasi cluster terhadap Benchmark Kubernetes CIS.

    Pastikan untuk menentukan versi yang sesuai, seperti yang ditunjukkan pada contoh berikut:

    kube-bench node --benchmark cis-1.8