Kontrol infrastruktur

Dokumen ini mencakup praktik terbaik dan panduan untuk Google Cloud layanan seperti Compute Engine, Google Kubernetes Engine (GKE), Pub/Sub, Dataflow, dan Cloud Run Functions saat menjalankan workload di Google Cloud.

Kontrol komputasi

Kontrol ini berlaku untuk layanan komputasi.

Menentukan instance VM yang dapat mengaktifkan penerusan IP

ID kontrol Google VPC-CO-6.3
Penerapan Wajib
Deskripsi
Batasan compute.vmCanIpForward menentukan instance VM yang dapat mengaktifkan penerusan IP. Secara default, semua VM dapat mengaktifkan penerusan IP di jaringan virtual mana pun. Tentukan instance VM menggunakan salah satu format berikut:
  • under:organizations/ORGANIZATION_ID
  • under:folders/FOLDER_ID
  • under:projects/PROJECT_ID
  • projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME.
Batasan ini tidak berlaku surut.
Produk yang berlaku
  • Organization Policy Service
  • Virtual Private Cloud (VPC)
  • Compute Engine
Jalur constraints/compute.vmCanIpForward
Operator =
Nilai
  • Your list of VM instances that can enable IP forwarding.
Jenis Daftar
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Menonaktifkan virtualisasi bertingkat VM

ID kontrol Google VPC-CO-6.6
Penerapan Wajib
Deskripsi
Batasan boolean compute.disableNestedVirtualization menonaktifkan virtualisasi bertingkat dengan akselerasi hardware untuk VM Compute Engine.
Produk yang berlaku
  • Organization Policy Service
  • Virtual Private Cloud (VPC)
  • Compute Engine
Jalur constraints/compute.disableNestedVirtualization
Operator Is
Nilai
  • True
Jenis Boolean
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Membatasi alamat IP eksternal pada VM

ID kontrol Google VPC-CO-6.2
Penerapan Wajib
Deskripsi

Kecuali jika diperlukan, cegah pembuatan instance Compute Engine dengan alamat IP publik. Batasan daftar compute.vmExternalIpAccess menentukan kumpulan instance VM Compute Engine yang dapat memiliki alamat IP eksternal.

Mencegah instance Compute Engine memiliki alamat IP eksternal untuk mengurangi secara drastis eksposurnya ke internet. Instance apa pun dengan alamat IP eksternal dapat langsung ditemukan dan menjadi target langsung untuk pemindaian otomatis, serangan brute force, dan upaya untuk mengeksploitasi kerentanan. Sebagai gantinya, mewajibkan instance menggunakan alamat IP pribadi dan mengelola akses melalui jalur yang terkontrol, diautentikasi, dan dicatat seperti tunnel Identity-Aware Proxy (IAP) atau bastion host.

Mengadopsi postur tolak secara default ini adalah praktik terbaik keamanan dasar yang membantu meminimalkan permukaan serangan Anda dan menerapkan pendekatan zero-trust ke jaringan Anda. Batasan ini tidak berlaku surut.

Produk yang berlaku
  • Organization Policy Service
  • Virtual Private Cloud (VPC)
  • Compute Engine
Jalur constraints/compute.vmExternalIpAccess
Operator =
Nilai
  • The list of VM instances in your organization that can have external IP addresses.
Jenis Daftar
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Menentukan alamat IP eksternal yang diizinkan untuk instance VM

ID kontrol Google CBD-CO-6.3
Penerapan Wajib
Deskripsi

Batasan daftar compute.vmExternalIpAccess memungkinkan Anda membatasi akses eksternal ke mesin virtual dengan tidak menetapkan alamat IP eksternal. Konfigurasi batasan daftar ini untuk menolak semua alamat IP eksternal ke mesin virtual.

Produk yang berlaku
  • Organization Policy Service
  • Compute Engine
Jalur compute.vmExternalIpAccess
Operator =
Nilai
  • Deny All
Jenis Daftar
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-12
  • AC-17
  • AC-20
Kontrol profil CRI terkait
  • PR.AC-3.1
  • PR.AC-3.2
  • PR.AC-4.1
  • PR.AC-4.2
  • PR.AC-4.3
  • PR.AC-6.1
  • PR.AC-7.1
  • PR.AC-7.2
  • PR.PT-3.1
  • PR-PT-4.1
Informasi terkait

Mewajibkan konektor VPC untuk fungsi Cloud Run

ID kontrol Google CF-CO-4.4
Penerapan Wajib
Deskripsi

Batasan boolean cloudfunctions.requireVPCConnector mewajibkan administrator menentukan konektor Akses VPC Serverless saat men-deploy fungsi Cloud Run. Jika diterapkan, fungsi harus menentukan konektor.

Produk yang berlaku
  • Organization Policy Service
  • Cloud Run Functions
Jalur constraints/cloudfunctions.requireVPCConnector
Operator =
Nilai
  • True
Jenis Boolean
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Mengonfigurasi kebijakan penyimpanan pesan

ID kontrol Google PS-CO-4.1
Penerapan Opsional
Deskripsi
Jika Anda memublikasikan pesan ke endpoint Pub/Sub global, Pub/Sub akan otomatis menyimpan pesan di region Google Cloud terdekat. Untuk mengontrol region tempat pesan Anda disimpan, konfigurasi kebijakan penyimpanan pesan di topik Anda. Gunakan salah satu cara berikut untuk mengonfigurasi kebijakan penyimpanan pesan untuk topik:
  • Tetapkan kebijakan penyimpanan pesan menggunakan batasan kebijakan organisasi Pembatasan Lokasi Resource (gcp.resourceLocations).
  • Konfigurasi kebijakan penyimpanan pesan saat membuat topik. Contoh:

    gcloud pubsub topics create TOPIC_ID \--message-storage-policy-allowed-regions=REGION1, REGION2

Produk yang berlaku
  • Organization Policy Service
  • Pub/Sub
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-17
  • AC-20
Kontrol profil CRI terkait
  • PR.AC-3.1
  • PR.AC-3.2
  • PR.AC-4.1
  • PR.AC-4.2
  • PR.AC-4.3
  • PR.AC-6.1
  • PR.PT-3.1
  • PR.PT-4.1
Informasi terkait

Menonaktifkan alamat IP eksternal untuk tugas Dataflow

ID kontrol Google DF-CO-6.1
Penerapan Opsional
Deskripsi

Nonaktifkan alamat IP eksternal untuk tugas administratif dan pemantauan yang terkait dengan tugas Dataflow. Sebagai gantinya, konfigurasi akses ke VM pekerja Dataflow Anda menggunakan SSH.

Aktifkan Akses Google Pribadi dan tentukan salah satu opsi berikut dalam tugas Dataflow Anda:

  • --usePublicIps=false dan --network=NETWORK-NAME
  • --subnetwork=SUBNETWORK-NAME

Dengan:

  • NETWORK-NAME: Nama jaringan Compute Engine Anda.
  • SUBNETWORK-NAME: Nama subnetwork Compute Engine Anda.
Produk yang berlaku
  • Compute Engine
  • Dataflow
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Menggunakan tag jaringan untuk aturan firewall

ID kontrol Google DF-CO-6.2
Penerapan Opsional
Deskripsi

Tag jaringan adalah atribut teks yang terpasang ke VM Compute Engine seperti VM pekerja Dataflow. Dengan tag jaringan, Anda dapat membuat aturan firewall jaringan VPC dan beberapa rute statis kustom yang berlaku untuk instance VM tertentu. Dataflow mendukung penambahan tag jaringan ke semua VM pekerja yang menjalankan tugas Dataflow tertentu.

Produk yang berlaku
  • Compute Engine
  • Dataflow
Kontrol NIST-800-53 terkait
  • SC-7
  • SC-8
Kontrol profil CRI terkait
  • PR.AC-5.1
  • PR.AC-5.2
  • PR.DS-2.1
  • PR.DS-2.2
  • PR.DS-5.1
  • PR.PT-4.1
  • DE.CM-1.1
  • DE.CM-1.2
  • DE.CM-1.3
  • DE.CM-1.4
Informasi terkait

Kontrol penampung

Kontrol ini berlaku untuk container dalam GKE.

Membatasi akses bidang kontrol

ID kontrol Google GKE-CO-1.1
Penerapan Wajib
Deskripsi

Secara default, bidang kontrol dan node cluster Google Kubernetes Engine (GKE) memiliki alamat yang dapat dirutekan di internet dan dapat diakses dari alamat IP mana pun. Batasi akses jaringan ke bidang kontrol dengan menggunakan endpoint berbasis DNS dan dengan membuat cluster pribadi. Bidang kontrol adalah pusat pengelolaan untuk cluster Kubernetes, dan mengeksposnya ke internet menjadikannya target utama bagi penyerang. Konfigurasi ini menjadikan bidang kontrol pribadi dan menghapusnya dari internet.

Membatasi akses bidang kontrol membantu memastikan bahwa hanya perangkat tepercaya dalam jaringan pribadi organisasi Anda yang dapat mengelola cluster, sehingga secara drastis mengurangi risiko serangan eksternal.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • SC-7
Kontrol profil CRI terkait
  • PR.AC-3.1
Informasi terkait

Menggunakan aturan firewall hak istimewa terendah

ID kontrol Google GKE-CO-1.2
Penerapan Wajib
Deskripsi

Saat Anda membuat aturan firewall, gunakan prinsip hak istimewa terendah guna membatasi akses hanya untuk tujuan yang diperlukan. Pastikan aturan firewall Anda tidak bentrok dengan aturan firewall default GKE jika memungkinkan.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-4
  • AC-17
  • SC-7
Informasi terkait

Menggunakan Google Grup untuk RBAC

ID kontrol Google GKE-CO-1.3
Penerapan Wajib
Deskripsi

Gunakan Google Grup untuk kontrol akses berbasis peran (RBAC), yang juga memungkinkan Anda berintegrasi dengan praktik pengelolaan akun pengguna yang ada, seperti mencabut akses saat seseorang keluar dari organisasi Anda. Google Grup untuk RBAC membantu memberikan pengelolaan akses cluster yang efisien menggunakan Identity and Access Management (IAM) dan Google Grup, yang cocok untuk sebagian besar organisasi yang menggunakan Google Grup.

Produk yang berlaku
  • Google Kubernetes Engine (GKE)
Kontrol NIST-800-53 terkait
  • AC-2
Kontrol profil CRI terkait
  • PR.AC-1.1
Informasi terkait

Mengaktifkan Node GKE yang Terlindungi

ID kontrol Google GKE-CO-1.4
Penerapan Wajib
Deskripsi

Aktifkan Shielded GKE Node untuk verifikasi kriptografis node di cluster Anda. Shielded GKE Node memberikan identitas dan integritas node yang kuat serta dapat diverifikasi. Aktifkan Node GKE yang Terlindungi saat membuat atau mengupdate cluster. Jika memungkinkan, gunakan Shielded GKE Node dengan Booting Aman untuk juga mengautentikasi komponen booting VM node Anda selama proses booting. Jangan gunakan booting aman jika Anda memerlukan modul kernel pihak ketiga yang tidak ditandatangani.

Node GKE yang Terlindungi diaktifkan secara default saat Anda membuat cluster.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-4
  • AC-17
  • SC-7
Informasi terkait

Menggunakan Container-Optimized OS dengan runtime containerd

ID kontrol Google GKE-CO-1.5
Penerapan Wajib
Deskripsi

Gunakan Container-Optimized OS untuk menerapkan OS container yang telah melalui proses hardening dan dikelola. Sistem operasi serbaguna mencakup banyak program tambahan yang tidak diperlukan untuk menjalankan container dan oleh karena itu menciptakan target yang lebih besar dan tidak perlu bagi penyerang. Container-Optimized OS adalah sistem operasi minimalis dan terkunci yang secara signifikan mengurangi permukaan serangan ini dengan hanya menyertakan apa yang diperlukan. Sebagai OS terkelola, Container-Optimized OS juga memiliki patch keamanan yang diterapkan secara otomatis oleh Google, yang membantu memastikan kerentanan penting diperbaiki dan mengurangi beban kerja operasional Anda.

Image yang menyertakan Container-Optimized OS dengan containerd (cos_containerd) memiliki containerd sebagai runtime container utama yang terintegrasi langsung dengan Kubernetes. containerd adalah komponen runtime inti Docker dan dirancang untuk memberikan fungsionalitas container inti untuk Antarmuka Runtime Container (CRI) Kubernetes. containerd jauh lebih sederhana daripada daemon Docker yang lengkap, sehingga memiliki permukaan serangan yang lebih kecil.

Produk yang berlaku
  • Container-Optimized OS
Kontrol NIST-800-53 terkait
  • CM-7
  • SC-7
  • SC-38
  • SI-2
  • SI-7
Kontrol profil CRI terkait
  • PR.PT-3.1
Informasi terkait

Menggunakan Workload Identity Federation for GKE

ID kontrol Google GKE-CO-1.6
Penerapan Wajib
Deskripsi

Gunakan Workload Identity Federation for GKE untuk melakukan autentikasi ke Google Cloud API secara aman dari workload Google Kubernetes Engine (GKE). Workload Identity Federation for GKE memberikan alternatif yang lebih sederhana dan aman untuk menggunakan kunci akun layanan.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • IA-2
Kontrol profil CRI terkait
  • PR.AC-1.1
Informasi terkait

Mengaktifkan GKE Sandbox

ID kontrol Google GKE-CO-1.7
Penerapan Wajib
Deskripsi

Gunakan GKE Sandbox untuk memberikan lapisan keamanan tambahan guna membantu mencegah kode yang tidak tepercaya memengaruhi kernel host di node cluster Google Kubernetes Engine (GKE) Anda. GKE Sandbox meningkatkan isolasi workload untuk workload yang tidak tepercaya atau sensitif, sehingga memberikan lapisan perlindungan tambahan terhadap serangan container escape.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • SC-39
Kontrol profil CRI terkait
  • PR.DS-1.1
Informasi terkait

Menonaktifkan port hanya baca kubelet

ID kontrol Google GKE-CO-1.9
Penerapan Wajib
Deskripsi

Nonaktifkan port hanya baca kubelet 10255 dan gunakan port 10250 yang lebih aman. Kubernetes tidak melakukan pemeriksaan autentikasi atau otorisasi apa pun di port ini. Kubelet melayani endpoint yang sama di port 10250 yang lebih aman dan diautentikasi.

Anda hanya dapat menonaktifkan port kubelet hanya baca yang tidak aman di GKE versi 1.26.4-gke.500 atau yang lebih baru.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • AC-3
  • SC-7
Informasi terkait

Menggunakan namespace dan RBAC untuk membatasi akses ke resource cluster

ID kontrol Google GKE-CO-1.10
Penerapan Wajib
Deskripsi

Buat namespace atau cluster terpisah untuk setiap tim dan lingkungan guna menerapkan akses hak istimewa terendah ke Kubernetes. Tetapkan pusat biaya dan label yang sesuai ke setiap namespace untuk akuntabilitas dan penagihan balik. Hanya berikan tingkat akses secukupnya kepada developer agar dapat mengakses namespace untuk men-deploy dan mengelola aplikasi mereka, terutama dalam produksi. Petakan tugas yang perlu dilakukan pengguna terhadap cluster dan tentukan izin yang diperlukan untuk melakukan setiap tugas.

Tetapkan peran Identity and Access Management (IAM) yang sesuai untuk Google Kubernetes Engine (GKE) kepada grup dan pengguna untuk memberikan izin di tingkat project dan gunakan RBAC untuk memberikan izin di tingkat cluster dan namespace.

Produk yang berlaku
  • GKE
  • IAM
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-4
  • AC-6
Informasi terkait

Membatasi traffic di antara pod

ID kontrol Google GKE-CO-1.11
Penerapan Wajib
Deskripsi

Secara default, semua pod dalam cluster dapat saling berkomunikasi. Kontrol komunikasi antar-pod sesuai dengan kebutuhan workload Anda. Membatasi akses jaringan ke layanan dapat mempersempit ruang gerak penyerang dalam cluster Anda, dan juga memberikan perlindungan tambahan terhadap denial of service baik yang disengaja maupun tidak.

Ada dua cara untuk mengontrol traffic:

  • Gunakan Cloud Service Mesh atau Istio untuk load balancing, otorisasi layanan, throttling, kuota, metrik, dan lainnya.
  • Gunakan kebijakan jaringan Kubernetes. Pilih opsi ini jika Anda memerlukan fungsionalitas kontrol akses dasar yang diekspos oleh Kubernetes.
Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • AC-3
  • AC-4
  • SC-7
Informasi terkait

Menggunakan pengontrol penerimaan untuk menerapkan kebijakan

ID kontrol Google GKE-CO-1.12
Penerapan Wajib
Deskripsi

Pengontrol penerimaan adalah plugin yang mengatur dan menerapkan cara penggunaan cluster. Aktifkan plugin ini agar dapat menggunakan beberapa fitur keamanan lanjutan di Kubernetes karena plugin ini merupakan bagian penting dari pendekatan pertahanan yang mendalam untuk melakukan hardening pada cluster Anda. Secara default, pod di Kubernetes dapat beroperasi dengan kemampuan melebihi yang dibutuhkan. Gunakan kontrol penerimaan untuk membatasi kemampuan pod hanya pada yang diperlukan untuk workload tersebut.

GKE mendukung banyak kontrol untuk membatasi pod Anda agar dijalankan dengan kemampuan yang diberikan secara eksplisit. Misalnya, Pengontrol Kebijakan tersedia untuk cluster dalam fleet. Kubernetes juga memiliki pengontrol penerimaan PodSecurity bawaan yang memungkinkan Anda menerapkan Standar Keamanan Pod untuk tiap-tiap cluster. Pengontrol Kebijakan adalah fitur GKE yang memungkinkan Anda menerapkan dan memvalidasi keamanan pada cluster GKE dalam skala besar menggunakan kebijakan deklaratif.

Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • CM-2
  • CM-3
  • CM-6
  • CM-7
Informasi terkait

Membatasi kemampuan workload dalam modifikasi mandiri

ID kontrol Google GKE-CO-1.13
Penerapan Wajib
Deskripsi

Workload Kubernetes tertentu, terutama workload sistem, memiliki izin untuk menjalankan modifikasi mandiri. Sebagai contoh, beberapa workload melakukan penskalaan otomatis secara vertikal. Meskipun berguna, modifikasi mandiri dapat memungkinkan penyerang yang telah menyusupi node untuk menjelajahi cluster lebih dalam lagi. Misalnya, penyerang dapat membuat workload pada node melakukan modifikasi mandiri untuk dijalankan sebagai akun layanan dengan hak istimewa yang berada di namespace yang sama.

Jangan berikan izin kepada workload untuk melakukan modifikasi mandiri secara default. Jika memerlukan modifikasi mandiri, batasi izin dengan menerapkan batasan Pemilah Komunikasi atau Pengontrol Kebijakan, seperti NoUpdateServiceAccount dari library open source Pemilah Komunikasi, yang memberikan beberapa solusi keamanan bermanfaat.

Saat Anda men-deploy kebijakan, izinkan pengontrol yang mengelola siklus proses cluster untuk mengabaikan kebijakan tersebut. Pengontrol harus membuat perubahan pada cluster, seperti menerapkan upgrade cluster. Misalnya, jika Anda men-deploy kebijakan NoUpdateServiceAccount di GKE, Anda harus menetapkan parameter berikut dalam batasan:

parameters: allowedGroups: - system:masters allowedUsers: - system:addon-manager
Produk yang berlaku
  • GKE
Kontrol NIST-800-53 terkait
  • AC-3
  • CM-3
  • SI-7
Informasi terkait

Memantau konfigurasi cluster Anda

ID kontrol Google GKE-CO-1.14
Penerapan Wajib
Deskripsi

Audit konfigurasi cluster Anda untuk menemukan penyimpangan dari setelan yang ditentukan. Setelan yang dibahas dalam praktik terbaik ini, serta kesalahan konfigurasi umum lainnya, dapat diperiksa secara otomatis menggunakan Security Command Center.

Produk yang berlaku
  • GKE
  • Security Command Center
Kontrol NIST-800-53 terkait
  • SI-4
  • SI-5
  • RA-5
Informasi terkait

Menerapkan Otorisasi Biner

ID kontrol Google BIN-CO-1.1
Penerapan Wajib
Deskripsi

Gunakan Otorisasi Biner untuk memastikan image tepercaya di-deploy ke Google Kubernetes Engine (GKE) dan Cloud Run. Otorisasi Biner membantu memastikan bahwa hanya image container terverifikasi dan tepercaya yang dapat di-deploy di cluster Anda, sehingga memperkuat keamanan supply chain software.

Produk yang berlaku
  • GKE
  • Otorisasi Biner
  • Cloud Run
Jalur constraints/binaryauthorization.requireBinauthz
Operator ==
Nilai
  • True
Kontrol NIST-800-53 terkait
  • SI-7
Kontrol profil CRI terkait
  • PR.DS-6.1
Informasi terkait

Langkah berikutnya