Memperbaiki temuan Security Health Analytics

Halaman ini menyediakan daftar panduan referensi dan teknik untuk memperbaiki temuan Security Health Analytics menggunakan Security Command Center.

Anda memerlukan peran Identity and Access Management (IAM) yang memadai untuk melihat atau mengedit temuan, serta untuk mengakses atau mengubah resource Google Cloud. Jika Anda mengalami error izin saat mengakses Security Command Center di konsol Google Cloud, minta bantuan administrator Anda dan, untuk mempelajari peran, lihat Kontrol akses. Untuk mengatasi error resource, baca dokumentasi untuk produk yang terpengaruh.

Perbaikan Security Health Analytics

Bagian ini mencakup petunjuk perbaikan untuk semua temuan Security Health Analytics.

Untuk menemukan jenis yang dipetakan ke CIS Benchmark, panduan perbaikan berasal dari Center for Internet Security (CIS), kecuali jika dinyatakan lain. Untuk informasi selengkapnya, lihat Pendeteksi dan kepatuhan.

Penonaktifan temuan setelah perbaikan

Setelah Anda memperbaiki temuan kerentanan atau kesalahan konfigurasi, Security Health Analytics akan otomatis menetapkan status temuan ke INACTIVE saat berikutnya memindai temuan tersebut. Waktu yang diperlukan Security Health Analytics untuk menetapkan temuan yang telah diperbaiki ke INACTIVE bergantung pada waktu temuan diperbaiki dan jadwal pemindaian yang mendeteksi temuan.

Security Health Analytics juga menetapkan status temuan ke INACTIVE saat pemindaian mendeteksi bahwa resource yang terpengaruh oleh temuan tersebut dihapus. Jika ingin menghapus temuan untuk resource yang dihapus dari layar saat menunggu Security Health Analytics mendeteksi bahwa resource tersebut dihapus, Anda dapat membisukan temuan. Untuk menonaktifkan temuan, lihat Menonaktifkan temuan di Security Command Center.

Jangan gunakan bisukan untuk menyembunyikan temuan yang telah diperbaiki untuk resource yang ada. Jika masalah tersebut berulang dan Security Health Analytics memulihkan status ACTIVE temuan, Anda mungkin tidak melihat temuan yang diaktifkan kembali, karena temuan yang dibisukan dikecualikan dari kueri temuan yang menentukan NOT mute="MUTED", seperti kueri temuan default.

Untuk mengetahui informasi tentang interval pemindaian, lihat Jenis pemindaian Security Health Analytics.

Access Transparency disabled

Nama kategori di API: ACCESS_TRANSPARENCY_DISABLED

Log Transparansi Akses saat karyawan Google Cloud mengakses project di organisasi Anda untuk memberikan dukungan. Aktifkan Transparansi Akses untuk mencatat siapa dari Google Cloud yang mengakses informasi Anda, kapan, dan alasannya. Untuk informasi selengkapnya, lihat Transparansi Akses.

Untuk mengaktifkan Transparansi Akses pada project, project tersebut harus dikaitkan dengan akun penagihan.

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan guna melakukan tugas ini, minta administrator untuk memberi Anda peran IAM Access Transparency Admin (roles/axt.admin) di tingkat organisasi. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.

Peran bawaan ini berisi izin axt.labels.get dan axt.labels.set, yang diperlukan untuk melakukan tugas ini. Anda mungkin juga dapat mendapatkan izin ini dengan peran khusus atau peran standar lainnya.

Langkah-langkah perbaikan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Periksa izin tingkat organisasi Anda:

    1. Buka halaman Identity and Access Management di konsol Google Cloud.

      Buka Identity and Access Management

    2. Jika diminta, pilih organisasi Google Cloud di menu pemilih.

  2. Pilih project Google Cloud dalam organisasi menggunakan menu pemilih.

    Transparansi Akses dikonfigurasi di halaman project Google Cloud, tetapi Transparansi Akses diaktifkan untuk seluruh organisasi.

  3. Buka halaman IAM & Admin > Settings.

  4. Klik Enable Access Transparency.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB auto backup disabled

Nama kategori di API: ALLOYDB_AUTO_BACKUP_DISABLED

Pencadangan otomatis tidak diaktifkan untuk cluster AlloyDB untuk PostgreSQL.

Untuk membantu mencegah kehilangan data, aktifkan pencadangan otomatis untuk cluster Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi pencadangan otomatis tambahan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Klik cluster di kolom Resource Name.

  3. Klik Data protection.

  4. Di bagian Automated backup policy, klik Edit di baris Automated backups.

  5. Centang kotak Pencadangan otomatis.

  6. Klik Perbarui.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB backups disabled

Nama kategori di API: ALLOYDB_BACKUPS_DISABLED

Cluster AlloyDB untuk PostgreSQL tidak mengaktifkan cadangan otomatis maupun berkelanjutan.

Untuk membantu mencegah kehilangan data, aktifkan pencadangan otomatis atau berkelanjutan untuk cluster Anda. Untuk informasi selengkapnya, lihat Mengonfigurasi pencadangan tambahan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Di kolom Resource Name, klik nama cluster yang diidentifikasi dalam temuan.

  3. Klik Data protection.

  4. Siapkan kebijakan pencadangan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB CMEK disabled

Nama kategori di API: ALLOYDB_CMEK_DISABLED

Cluster AlloyDB tidak menggunakan kunci enkripsi yang dikelola pelanggan (CMEK).

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol terhadap akses ke data Anda. Untuk informasi selengkapnya, lihat Tentang CMEK. CMEK akan dikenai biaya tambahan terkait Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Di kolom Resource Name, klik nama cluster yang diidentifikasi dalam temuan.

  3. Klik Buat Cadangan. Menetapkan ID cadangan.

  4. Klik Create.

  5. Di bagian Pencadangan/Pemulihan, klik Pulihkan di samping entri ID Cadangan yang Anda pilih.

  6. Tetapkan ID dan jaringan cluster baru.

  7. Klik Advanced Encryption Options. Pilih CMEK yang ingin Anda gunakan untuk mengenkripsi cluster baru.

  8. Klik Pulihkan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB log min error statement severity

Nama kategori di API: ALLOYDB_LOG_MIN_ERROR_STATEMENT_SEVERITY

Instance AlloyDB untuk PostgreSQL tidak memiliki flag database log_min_error_statement yang disetel ke error atau nilai rekomendasi lainnya.

Flag log_min_error_statement mengontrol apakah pernyataan SQL yang menyebabkan kondisi error dicatat dalam log server. Pernyataan SQL dari tingkat keparahan yang ditentukan atau yang lebih tinggi dicatat ke dalam log. Makin tinggi tingkat keparahan, makin sedikit pesan yang dicatat. Jika disetel ke tingkat keparahan yang terlalu tinggi, pesan error mungkin tidak dicatat ke dalam log.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Klik cluster di kolom Resource Name.

  3. Di bagian Instances in your cluster, klik Edit untuk instance.

  4. Klik Opsi Konfigurasi Lanjutan.

  5. Di bagian Flags, tetapkan flag database log_min_error_statement dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  6. Klik Update Instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB log min messages

Nama kategori di API: ALLOYDB_LOG_MIN_MESSAGES

Instance AlloyDB untuk PostgreSQL tidak memiliki flag database log_min_messages yang disetel ke minimal warning.

Flag log_min_messages mengontrol tingkat pesan mana yang dicatat dalam log server. Makin tinggi tingkat keparahan, makin sedikit pesan yang dicatat. Menyetel nilai minimum terlalu rendah dapat menyebabkan peningkatan ukuran dan panjang penyimpanan log, sehingga menyulitkan Anda untuk menemukan error sebenarnya.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Klik cluster di kolom Resource Name.

  3. Di bagian Instances in your cluster, klik Edit untuk instance.

  4. Klik Opsi Konfigurasi Lanjutan.

  5. Di bagian Flags, tetapkan flag database log_min_messages dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  6. Klik Update Instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB log error verbosity

Nama kategori di API: ALLOYDB_LOG_ERROR_VERBOSITY

Instance AlloyDB untuk PostgreSQL tidak memiliki flag database log_error_verbosity yang disetel ke default atau nilai lain yang tidak terlalu ketat.

Flag log_error_verbosity mengontrol jumlah detail dalam pesan yang dicatat ke dalam log. Makin panjang informasi, makin banyak detail yang tercatat dalam pesan. Sebaiknya tetapkan flag ini ke default atau nilai lain yang tidak begitu ketat.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Klik cluster di kolom Resource Name.

  3. Di bagian Instances in your cluster, klik Edit untuk instance.

  4. Klik Opsi Konfigurasi Lanjutan.

  5. Di bagian Flags, tetapkan flag database log_error_verbosity dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • default
    • verbose
  6. Klik Update Instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB Public IP

Nama kategori di API: ALLOYDB_PUBLIC_IP

Instance database AlloyDB untuk PostgreSQL memiliki alamat IP publik.

Untuk mengurangi permukaan serangan organisasi, gunakan alamat IP pribadi, bukan alamat IP publik. Alamat IP pribadi memberikan keamanan jaringan yang lebih baik dan latensi yang lebih rendah untuk aplikasi Anda.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Di kolom Resource Name, klik nama cluster yang diidentifikasi dalam temuan.

  3. Di bagian Instances in your cluster, klik Edit untuk instance.

  4. Di bagian Connectivity, hapus centang pada kotak Enable Public IP.

  5. Klik Update Instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

AlloyDB SSL not enforced

Nama kategori di API: ALLOYDB_SSL_NOT_ENFORCED

Instance database AlloyDB untuk PostgreSQL tidak mewajibkan semua koneksi masuk untuk menggunakan SSL.

Untuk menghindari kebocoran data sensitif yang dikirim melalui komunikasi yang tidak terenkripsi, semua koneksi masuk ke instance database AlloyDB Anda harus menggunakan SSL. Pelajari lebih lanjut Mengonfigurasi SSL/TLS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman cluster AlloyDB untuk PostgreSQL di konsol Google Cloud.

    Buka cluster AlloyDB untuk PostgreSQL

  2. Di kolom Resource Name, klik nama cluster yang diidentifikasi dalam temuan.

  3. Di bagian Instances in your cluster, klik Edit untuk instance.

  4. Di bagian Network Security, klik kotak untuk Require SSL Encryption.

  5. Klik Update Instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Admin service account

Nama kategori di API: ADMIN_SERVICE_ACCOUNT

Akun layanan di organisasi atau project Anda memiliki hak istimewa Admin, Pemilik, atau Editor. Peran ini memiliki izin yang luas dan tidak boleh ditetapkan ke akun layanan. Untuk mempelajari akun layanan dan peran yang tersedia untuknya, lihat Akun layanan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman kebijakan IAM di konsol Google Cloud.

    Buka kebijakan IAM

  2. Untuk setiap akun utama yang diidentifikasi dalam temuan:

    1. Klik Edit akun utama di samping akun utama.
    2. Untuk menghapus izin, klik Hapus peran di samping peran.
    3. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Alpha cluster enabled

Nama kategori di API: ALPHA_CLUSTER_ENABLED

Fitur cluster alfa diaktifkan untuk cluster Google Kubernetes Engine (GKE).

Cluster alfa memungkinkan pengguna awal bereksperimen dengan workload yang menggunakan fitur baru sebelum dirilis ke publik. Cluster alfa telah mengaktifkan semua fitur GKE API, tetapi tidak tercakup dalam SLA GKE, tidak menerima update keamanan, upgrade otomatis node, dan perbaikan otomatis node dinonaktifkan, serta tidak dapat diupgrade. File tersebut juga akan otomatis dihapus setelah 30 hari.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Cluster alfa tidak dapat dinonaktifkan. Anda harus membuat cluster baru dengan fitur alfa yang dinonaktifkan.

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik Create.

  3. Pilih Configure di samping jenis cluster yang ingin Anda buat.

  4. Di tab Features, pastikan Enable Kubernetes alpha features in this cluster dinonaktifkan.

  5. Klik Create.

  6. Untuk memindahkan workload ke cluster baru, lihat Memigrasikan workload ke jenis mesin yang berbeda.

  7. Untuk menghapus cluster asli, lihat Menghapus cluster.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

API key APIs unrestricted

Nama kategori di API: API_KEY_APIS_UNRESTRICTED

Ada kunci API yang digunakan terlalu luas.

Kunci API yang tidak dibatasi bersifat tidak aman karena dapat diambil dari perangkat tempat kunci tersebut disimpan atau dapat dilihat secara publik, misalnya, dari dalam browser. Sesuai dengan prinsip hak istimewa terendah, konfigurasikan kunci API agar hanya memanggil API yang diperlukan oleh aplikasi. Untuk informasi selengkapnya, lihat Menerapkan pembatasan kunci API.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman API keys di konsol Google Cloud.

    Buka kunci API

  2. Untuk setiap kunci API:

    1. Di bagian API keys, pada baris untuk setiap kunci API yang API-nya perlu Anda batasi, klik Actions.
    2. Dari menu Actions, klik Edit API key. Halaman Edit API key akan terbuka.
    3. Di bagian API restrictions, pilih Restrict APIs. Menu drop-down Pilih API akan muncul.
    4. Di menu drop-down Select APIs, pilih API yang akan diizinkan.
    5. Klik Simpan. Mungkin perlu waktu hingga lima menit agar setelan diterapkan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

API key apps unrestricted

Nama kategori di API: API_KEY_APPS_UNRESTRICTED

Ada kunci API yang digunakan dengan cara yang tidak dibatasi, sehingga memungkinkan penggunaan oleh aplikasi yang tidak tepercaya.

Kunci API yang tidak dibatasi bersifat tidak aman karena dapat diambil di perangkat tempat kunci tersebut disimpan atau dapat dilihat secara publik, misalnya, dari dalam browser. Sesuai dengan prinsip hak istimewa terendah, batasi penggunaan kunci API ke host, perujuk HTTP, dan aplikasi tepercaya. Untuk informasi selengkapnya, lihat Menerapkan pembatasan kunci API.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman API keys di konsol Google Cloud.

    Buka kunci API

  2. Untuk setiap kunci API:

    1. Di bagian API keys, pada baris untuk setiap kunci API yang aplikasinya perlu Anda batasi, klik Actions.
    2. Dari menu Actions, klik Edit API key. Halaman Edit API key akan terbuka.
    3. Di halaman Edit API key, di bagian Application restrictions, pilih kategori pembatasan. Anda dapat menetapkan satu pembatasan aplikasi per kunci.
    4. Di kolom Add an item yang muncul saat Anda memilih batasan, klik Add an item untuk menambahkan batasan berdasarkan kebutuhan aplikasi Anda.
    5. Setelah selesai menambahkan item, klik Selesai.
    6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

API key exists

Nama kategori di API: API_KEY_EXISTS

Project menggunakan kunci API, bukan autentikasi standar.

Kunci API kurang aman dibandingkan metode autentikasi lainnya karena merupakan string terenkripsi sederhana dan mudah ditemukan serta digunakan orang lain. Kunci tersebut dapat diambil di perangkat tempat kunci tersebut disimpan atau dapat dilihat secara publik, misalnya dari dalam browser. Selain itu, kunci API tidak secara unik mengidentifikasi pengguna atau aplikasi yang membuat permintaan. Sebagai alternatif, Anda dapat menggunakan alur autentikasi standar, dengan akun layanan atau akun pengguna.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Pastikan aplikasi Anda dikonfigurasi dengan format autentikasi alternatif.
  2. Buka halaman Kredensial API di konsol Google Cloud.

    Buka kredensial API

  3. Di bagian API keys pada baris untuk setiap kunci API yang ingin Anda hapus, klik Actions.

  4. Dari menu Actions, klik Delete API key.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

API key not rotated

Nama kategori di API: API_KEY_NOT_ROTATED

Kunci API belum dirotasi selama lebih dari 90 hari.

Kunci API tidak memiliki masa berakhir, jadi jika dicuri, kunci itu dapat terus-menerus digunakan kecuali jika pemilik project mencabut atau merotasi kunci. Membuat ulang kunci API secara rutin akan mengurangi peluang kunci API curian dapat digunakan untuk mengakses data pada akun yang dibobol atau dihentikan. Rotasi kunci API setidaknya setiap 90 hari. Untuk informasi selengkapnya, lihat Praktik terbaik untuk mengelola kunci API.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman API keys di konsol Google Cloud.

    Buka kunci API

  2. Untuk setiap kunci API:

    1. Di bagian API keys, pada baris untuk setiap kunci API yang perlu Anda putar, klik Actions.
    2. Dari menu Actions, klik Edit API key. Halaman Edit API key akan terbuka.
    3. Di halaman Edit API key, jika tanggal di kolom Creation date lebih dari 90 hari, klik Regenerate key. Kunci baru akan dibuat.
    4. Klik Simpan.
    5. Untuk memastikan aplikasi Anda terus berfungsi tanpa gangguan, update aplikasi tersebut agar menggunakan kunci API baru. Kunci API lama berfungsi selama 24 jam sebelum dinonaktifkan secara permanen.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Audit config not monitored

Nama kategori di API: AUDIT_CONFIG_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan konfigurasi audit.

Cloud Logging menghasilkan log Aktivitas Admin dan Akses Data yang memungkinkan analisis keamanan, pelacakan perubahan resource, dan audit kepatuhan. Dengan memantau perubahan konfigurasi audit, Anda dapat memastikan bahwa semua aktivitas dalam project Anda dapat diaudit kapan saja. Untuk informasi lebih lanjut, baca Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, buat metrik, jika perlu, dan kebijakan pemberitahuan:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      protoPayload.methodName="SetIamPolicy"
      AND protoPayload.serviceData.policyDelta.auditConfigDeltas:*

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Audit logging disabled

Nama kategori di API: AUDIT_LOGGING_DISABLED

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Logging audit dinonaktifkan untuk satu atau beberapa layanan Google Cloud, atau satu atau beberapa akun utama dikecualikan dari logging audit akses data.

Aktifkan Cloud Logging untuk semua layanan guna melacak semua aktivitas admin, akses baca, dan akses tulis ke data pengguna. Bergantung pada jumlah informasi, biaya Cloud Logging dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Jika ada akun utama yang dikecualikan dari logging audit akses data di konfigurasi logging audit akses data default atau konfigurasi logging untuk setiap layanan, hapus pengecualian tersebut.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Konfigurasi default log audit Akses Data di konsol Google Cloud.

    Buka konfigurasi default

  2. Di tab Log types, aktifkan logging audit akses data dalam konfigurasi default:

    1. Pilih Admin Read, Data Read, dan Data Write.
    2. Klik Simpan.
  3. Pada tab Prinsipal yang dikecualikan, hapus semua pengguna yang dikecualikan dari konfigurasi default:

    1. Hapus setiap akun utama yang tercantum dengan mengklik Hapus di samping setiap nama.
    2. Klik Simpan.
  4. Buka halaman Log Audit.

    Buka log audit

  5. Hapus akun utama yang dikecualikan dari konfigurasi log audit akses data di setiap layanan.

    1. Di bagian Data access audit logs configuration, untuk setiap layanan yang menunjukkan akun utama yang dikecualikan, klik layanan tersebut. Panel konfigurasi log audit akan terbuka untuk layanan tersebut.
    2. Di tab Akun utama yang dikecualikan, hapus semua akun utama yang dikecualikan dengan mengklik Hapus di samping setiap nama.
    3. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Auto backup disabled

Nama kategori di API: AUTO_BACKUP_DISABLED

Pencadangan otomatis tidak diaktifkan untuk database Cloud SQL.

Untuk mencegah kehilangan data, aktifkan pencadangan otomatis untuk instance SQL Anda. Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola pencadangan on demand dan otomatis.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance

  2. Klik nama instance.

  3. Klik Cadangan.

  4. Di samping Setelan, klik Edit.

  5. Centang kotak Pencadangan harian otomatis.

  6. Opsional: Di kotak Jumlah hari, masukkan jumlah hari cadangan yang ingin Anda simpan.

  7. Opsional: Di daftar Jendela pencadangan, pilih periode waktu untuk membuat cadangan.

  8. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Auto repair disabled

Nama kategori di API: AUTO_REPAIR_DISABLED

Fitur perbaikan otomatis cluster Google Kubernetes Engine (GKE), yang menjaga node dalam keadaan berjalan dengan baik, dinonaktifkan.

Jika diaktifkan, GKE melakukan pemeriksaan berkala pada status respons setiap node di cluster Anda. Jika health check node gagal berturut-turut dalam jangka waktu yang lama, GKE akan memulai proses perbaikan untuk node tersebut. Untuk informasi selengkapnya, lihat Memperbaiki node secara otomatis.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik tab Nodes.

  3. Untuk setiap node pool:

    1. Klik nama node pool untuk membuka halaman detailnya.
    2. Klik Edit.
    3. Di bagian Management, pilih Enable auto-repair.
    4. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Auto upgrade disabled

Nama kategori di API: AUTO_UPGRADE_DISABLED

Fitur upgrade otomatis cluster GKE, yang membuat cluster dan node pool tetap menggunakan Kubernetes versi stabil terbaru, dinonaktifkan.

Untuk informasi selengkapnya, lihat Mengupgrade node secara otomatis.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di daftar cluster, klik nama cluster.

  3. Klik tab Nodes.

  4. Untuk setiap node pool:

    1. Klik nama node pool untuk membuka halaman detailnya.
    2. Klik Edit.
    3. Di bagian Pengelolaan, pilih Aktifkan upgrade otomatis.
    4. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

BigQuery table CMEK disabled

Nama kategori di API: BIGQUERY_TABLE_CMEK_DISABLED

Tabel BigQuery tidak dikonfigurasi untuk menggunakan kunci enkripsi yang dikelola pelanggan (CMEK).

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google Cloud untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol atas akses ke data Anda. Untuk mengetahui informasi selengkapnya, lihat Melindungi data dengan kunci Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Membuat tabel yang dilindungi oleh Cloud Key Management Service.
  2. Salin tabel Anda ke tabel baru yang mengaktifkan CMEK.
  3. Hapus tabel asli.

Untuk menetapkan kunci CMEK default yang mengenkripsi semua tabel baru di set data, lihat Menetapkan kunci default set data.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Binary authorization disabled

Nama kategori di API: BINARY_AUTHORIZATION_DISABLED

Otorisasi Biner dinonaktifkan di cluster GKE.

Otorisasi Biner menyertakan fitur opsional yang melindungi keamanan supply chain dengan hanya mengizinkan image container yang ditandatangani oleh otoritas tepercaya selama proses pengembangan untuk di-deploy di cluster. Dengan menerapkan deployment berbasis tanda tangan, Anda akan mendapatkan kontrol yang lebih ketat atas lingkungan container, sehingga memastikan hanya image terverifikasi yang diizinkan untuk di-deploy.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di bagian Security, klik Edit di baris Binary Authorization.

    Jika konfigurasi cluster baru saja diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  3. Dalam dialog, pilih Enable Binary Authorization.

  4. Klik Simpan perubahan.

  5. Buka halaman penyiapan Binary Authorization.

    Buka Otorisasi Biner

  6. Pastikan kebijakan yang memerlukan pengautentikasi dikonfigurasi dan aturan default project tidak dikonfigurasi ke Allow all images. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan untuk GKE.

    Untuk memastikan bahwa image yang melanggar kebijakan diizinkan untuk di-deploy dan pelanggaran dicatat ke Cloud Audit Logs, Anda dapat mengaktifkan mode uji coba.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Bucket CMEK disabled

Nama kategori di API: BUCKET_CMEK_DISABLED

Bucket tidak dienkripsi dengan kunci enkripsi yang dikelola pelanggan (CMEK).

Menyetel CMEK default di bucket memberi Anda lebih banyak kontrol atas akses ke data Anda. Untuk informasi selengkapnya, lihat Kunci enkripsi yang dikelola pelanggan.

Untuk memperbaiki temuan ini, gunakan CMEK dengan bucket dengan mengikuti Menggunakan kunci enkripsi yang dikelola pelanggan. CMEK dikenai biaya tambahan terkait Cloud KMS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Bucket IAM not monitored

Nama kategori di API: BUCKET_IAM_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan izin IAM Cloud Storage.

Memantau perubahan izin bucket Cloud Storage membantu Anda mengidentifikasi pengguna dengan hak istimewa berlebih atau aktivitas yang mencurigakan. Untuk informasi lebih lanjut, baca Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      resource.type=gcs_bucket
      AND protoPayload.methodName="storage.setIamPermissions"

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Bucket logging disabled

Nama kategori di API: BUCKET_LOGGING_DISABLED

Ada bucket penyimpanan tanpa logging yang diaktifkan.

Untuk membantu menyelidiki masalah keamanan dan memantau konsumsi penyimpanan, aktifkan log akses dan informasi penyimpanan untuk bucket Cloud Storage Anda. Log akses memberikan informasi untuk semua permintaan yang dibuat pada bucket yang ditentukan, dan log penyimpanan memberikan informasi tentang konsumsi penyimpanan dari bucket tersebut.

Untuk memperbaiki temuan ini, siapkan logging untuk bucket yang ditunjukkan oleh temuan Security Health Analytics dengan menyelesaikan panduan log penggunaan & log penyimpanan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Bucket policy only disabled

Nama kategori di API: BUCKET_POLICY_ONLY_DISABLED

Akses level bucket yang seragam, yang sebelumnya disebut Khusus Kebijakan Bucket, tidak dikonfigurasi.

Akses level bucket yang seragam menyederhanakan kontrol akses bucket dengan menonaktifkan izin level objek (ACL). Jika diaktifkan, hanya izin IAM level bucket yang memberikan akses ke bucket dan objek yang ada di dalamnya. Untuk mengetahui informasi selengkapnya, lihat Akses tingkat bucket seragam.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Browser Cloud Storage di konsol Google Cloud.

    Buka browser Cloud Storage

  2. Dalam daftar bucket, klik nama bucket yang diinginkan.

  3. Klik tab Configuration.

  4. Di bagian Permissions, di baris untuk Access control, klik Edit access control model.

  5. Dalam dialog, pilih Seragam.

  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloud Asset API disabled

Nama kategori di API: CLOUD_ASSET_API_DISABLED

Layanan Cloud Asset Inventory tidak diaktifkan untuk project.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Library API di konsol Google Cloud.

    Buka Library API

  2. Telusuri Cloud Asset Inventory.

  3. Pilih hasil untuk layanan Cloud Asset API.

  4. Pastikan API Enabled ditampilkan.

Cluster logging disabled

Nama kategori di API: CLUSTER_LOGGING_DISABLED

Logging tidak diaktifkan untuk cluster GKE.

Untuk membantu menyelidiki masalah keamanan dan memantau penggunaan, aktifkan Cloud Logging di cluster Anda.

Bergantung pada jumlah informasi, biaya Cloud Logging dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Pilih cluster yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Pada menu drop-down Stackdriver Logging Lama atau Stackdriver Kubernetes Engine Monitoring, pilih Enabled.

    Opsi ini tidak kompatibel. Pastikan Anda menggunakan Stackdriver Kubernetes Engine Monitoring saja, atau Legacy Stackdriver Logging dengan Legacy Stackdriver Monitoring.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cluster monitoring disabled

Nama kategori di API: CLUSTER_MONITORING_DISABLED

Pemantauan dinonaktifkan di cluster GKE.

Untuk membantu menyelidiki masalah keamanan dan memantau penggunaan, aktifkan Cloud Monitoring di cluster Anda.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Pilih cluster yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Pada menu drop-down Legacy Stackdriver Monitoring atau Stackdriver Kubernetes Engine Monitoring, pilih Enabled.

    Opsi ini tidak kompatibel. Pastikan Anda menggunakan Stackdriver Kubernetes Engine Monitoring saja, atau Legacy Stackdriver Monitoring dengan Legacy Stackdriver Logging.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cluster private Google access disabled

Nama kategori di API: CLUSTER_PRIVATE_GOOGLE_ACCESS_DISABLED

Host cluster tidak dikonfigurasi untuk hanya menggunakan alamat IP internal pribadi untuk mengakses Google API.

Akses Google Pribadi memungkinkan instance virtual machine (VM) dengan hanya alamat IP internal pribadi untuk menjangkau alamat IP publik dari API dan layanan Google. Untuk informasi selengkapnya, lihat Mengonfigurasi Akses Pribadi Google.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Virtual Private Cloud networks di konsol Google Cloud.

    Buka VPC networks

  2. Dalam daftar jaringan, klik nama jaringan yang diinginkan.

  3. Di halaman VPC network details, klik tab Subnets.

  4. Dalam daftar subnet, klik nama subnet yang terkait dengan cluster Kubernetes dalam temuan.

  5. Di halaman Subnet details, klik Edit.

  6. Di bagian Private Google Access, pilih On.

  7. Klik Simpan.

  8. Untuk menghapus IP publik (eksternal) dari instance VM yang traffic eksternalnya hanya ke Google API, lihat Membatalkan penetapan alamat IP eksternal statis.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cluster secrets encryption disabled

Nama kategori di API: CLUSTER_SECRETS_ENCRYPTION_DISABLED

Enkripsi secret lapisan aplikasi dinonaktifkan di cluster GKE.

Enkripsi secret lapisan aplikasi memastikan secret GKE dienkripsi menggunakan kunci Cloud KMS. Fitur ini memberikan lapisan keamanan tambahan untuk data sensitif, seperti secret yang ditentukan pengguna dan secret yang diperlukan untuk operasi cluster, seperti kunci akun layanan, yang semuanya disimpan di etcd.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kunci Cloud KMS di konsol Google Cloud.

    Buka kunci Cloud KMS

  2. Tinjau kunci aplikasi Anda atau buat kunci enkripsi database (DEK). Untuk mengetahui informasi selengkapnya, lihat Membuat kunci Cloud KMS.

  3. Buka halaman Cluster Kubernetes.

    Buka cluster Kubernetes

  4. Pilih cluster dalam temuan.

  5. Di bagian Security, di kolom Application-layer secrets encryption, klik Edit Application-layer Secrets Encryption.

  6. Centang kotak Enable Application-layer Secrets Encryption, lalu pilih DEK yang Anda buat.

  7. Klik Simpan Perubahan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cluster shielded nodes disabled

Nama kategori di API: CLUSTER_SHIELDED_NODES_DISABLED

Node GKE yang terlindungi tidak diaktifkan untuk cluster.

Tanpa node GKE yang Terlindungi, penyerang dapat mengeksploitasi kerentanan dalam Pod untuk mengekstrak kredensial bootstrap dan meniru identitas node di cluster Anda. Kerentanan ini dapat memberi penyerang akses ke secret cluster.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Pilih cluster dalam temuan.

  3. Di bagian Security, di kolom Shielded GKE nodes, klik Edit Shielded GKE nodes.

  4. Pilih kotak centang Enable Shielded GKE nodes.

  5. Klik Simpan Perubahan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Compute project wide SSH keys allowed

Nama kategori di API: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED

Kunci SSH di seluruh project digunakan, sehingga memungkinkan login ke semua instance dalam project.

Menggunakan kunci SSH di seluruh project akan memudahkan pengelolaan kunci SSH, tetapi jika dibobol, akan menimbulkan risiko keamanan yang dapat memengaruhi semua instance dalam project. Anda harus menggunakan kunci SSH khusus instance, yang membatasi platform yang diserang jika kunci SSH disusupi. Untuk mengetahui informasi selengkapnya, lihat Mengelola kunci SSH dalam metadata.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Di halaman VM instance details, klik Edit.

  4. Di bagian SSH Keys, pilih Block project-wide SSH keys.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Compute Secure Boot disabled

Nama kategori di API: COMPUTE_SECURE_BOOT_DISABLED

Shielded VM tidak mengaktifkan Booting Aman.

Penggunaan Booting Aman membantu melindungi virtual machine Anda dari rootkit dan bootkit. Compute Engine tidak mengaktifkan Booting Aman secara default karena beberapa driver yang tidak ditandatangani dan software level rendah tidak kompatibel. Jika VM Anda tidak menggunakan software yang tidak kompatibel dan melakukan booting dengan mengaktifkan Booting Aman, Google merekomendasikan penggunaan Booting Aman. Jika Anda menggunakan modul pihak ketiga dengan driver Nvidia, pastikan modul tersebut kompatibel dengan Booting Aman sebelum mengaktifkannya.

Untuk informasi selengkapnya, lihat Booting Aman.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Di halaman VM instance details, klik Stop.

  4. Setelah instance dihentikan, klik Edit.

  5. Di bagian Shielded VM, pilih Turn on Secure Boot.

  6. Klik Simpan.

  7. Klik Mulai untuk memulai instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Compute serial ports enabled

Nama kategori di API: COMPUTE_SERIAL_PORTS_ENABLED

Port serial diaktifkan untuk instance, sehingga memungkinkan koneksi ke konsol serial instance.

Jika Anda mengaktifkan konsol serial interaktif pada instance, klien dapat mencoba terhubung ke instance tersebut dari alamat IP mana pun. Oleh karena itu, dukungan konsol serial interaktif harus dinonaktifkan. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan akses untuk project.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Di halaman VM instance details, klik Edit.

  4. Di bagian Remote access, hapus centang Enable connecting to serial ports.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Confidential Computing disabled

Nama kategori di API: CONFIDENTIAL_COMPUTING_DISABLED

Instance Compute Engine tidak mengaktifkan Confidential Computing.

Confidential Computing menambahkan pilar ketiga ke dalam alur enkripsi end-to-end dengan mengenkripsi data selama penggunaan. Dengan lingkungan eksekusi rahasia yang disediakan oleh Confidential Computing dan AMD Secure Encrypted Virtualization (SEV), Google Cloud menjaga kode sensitif dan data lain yang terenkripsi di memori selama pemrosesan.

Confidential Computing hanya dapat diaktifkan saat instance dibuat. Oleh karena itu, Anda harus menghapus instance saat ini dan membuat yang baru.

Untuk informasi selengkapnya, lihat Confidential VM dan Compute Engine.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Di halaman VM instance details, klik Delete.

  4. Buat Confidential VM menggunakan Konsol Google Cloud.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

COS not used

Nama kategori di API: COS_NOT_USED

VM Compute Engine tidak menggunakan Container-Optimized OS, yang dirancang untuk menjalankan container Docker di Google Cloud dengan aman.

Container-Optimized OS adalah OS yang direkomendasikan Google untuk menghosting dan menjalankan container di Google Cloud. Jejak OS yang kecil meminimalkan risiko keamanan, sedangkan update otomatis menerapkan patch pada kerentanan keamanan pada waktu yang tepat. Untuk informasi selengkapnya, lihat Ringkasan Container-Optimized OS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di daftar cluster, klik nama cluster dalam temuan.

  3. Klik tab Nodes.

  4. Untuk setiap node pool:

    1. Klik nama node pool untuk membuka halaman detailnya.
    2. Klik Edit .
    3. Di bagian Nodes -> Image type, klik Change.
    4. Pilih Container-Optimized OS, lalu klik Change.
    5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Custom role not monitored

Nama kategori di API: CUSTOM_ROLE_NOT_MONITORED

Notifikasi dan metrik log tidak dikonfigurasi untuk memantau perubahan peran kustom.

IAM menyediakan peran bawaan dan kustom yang memberikan akses ke resource Google Cloud tertentu. Dengan memantau aktivitas pembuatan, penghapusan, dan pembaruan peran, Anda dapat mengidentifikasi peran dengan hak istimewa berlebih secara dini. Untuk informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      resource.type="iam_role"
      AND (protoPayload.methodName="google.iam.admin.v1.CreateRole"
      OR protoPayload.methodName="google.iam.admin.v1.DeleteRole"
      OR protoPayload.methodName="google.iam.admin.v1.UpdateRole")

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dataproc CMEK disabled

Nama kategori di API: DATAPROC_CMEK_DISABLED

Cluster Dataproc dibuat tanpa CMEK konfigurasi enkripsi. Dengan CMEK, kunci yang Anda buat dan kelola di Cloud Key Management Service akan menggabungkan kunci yang digunakan Google Cloud untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol atas akses ke data Anda.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Cluster Dataproc di konsol Google Cloud.

    Buka cluster Dataproc

  2. Pilih project Anda, lalu klik Create Cluster.

  3. Di bagian Manage security, klik Encryption, lalu pilih Customer-managed key.

  4. Pilih kunci yang dikelola pelanggan dari daftar.

    Jika tidak memiliki kunci yang dikelola pelanggan, Anda harus membuatnya untuk digunakan. Untuk informasi selengkapnya, lihat Kunci enkripsi yang dikelola pelanggan.

  5. Pastikan kunci KMS yang dipilih memiliki peran Pengenkripsi/Pendekripsi Cloud KMS CryptoKey yang ditetapkan ke akun layanan Cluster Dataproc ("serviceAccount:service-project_number@compute-system.").

  6. Setelah cluster dibuat, migrasikan semua workload Anda dari cluster lama ke cluster baru.

  7. Buka cluster Dataproc, lalu pilih project Anda.

  8. Pilih cluster lama, lalu klik Hapus cluster.

  9. Ulangi semua langkah di atas untuk cluster Dataproc lain yang tersedia dalam project yang dipilih.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dataproc image outdated

Nama kategori di API: DATAPROC_IMAGE_OUTDATED

Cluster Dataproc dibuat menggunakan versi image Dataproc yang terpengaruh oleh kerentanan keamanan di utilitas Apache Log4j 2 (CVE-2021-44228 dan CVE-2021-45046).

Detektor ini menemukan kerentanan dengan memeriksa apakah kolom softwareConfig.imageVersion di properti config dari Cluster memiliki salah satu versi berikut yang terpengaruh:

  • Versi image yang lebih lama dari 1.3.95.
  • Versi image subminor yang lebih lama dari 1.4.77, 1.5.53, dan 2.0.27.

Nomor versi image Dataproc kustom dapat digaanti secara manual. Perhatikan skenario berikut:

  • Anda dapat mengubah versi image kustom yang terpengaruh agar tampak tidak terpengaruh. Dalam hal ini, detektor ini tidak mengeluarkan temuan.
  • Anda dapat mengganti versi image kustom yang tidak terpengaruh dengan image yang diketahui memiliki kerentanan. Dalam hal ini, detektor ini memunculkan temuan positif palsu. Untuk menyembunyikan temuan positif palsu ini, Anda dapat membisukan temuan tersebut.

Untuk memperbaiki temuan ini, buat ulang dan perbarui cluster yang terpengaruh.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dataset CMEK disabled

Nama kategori di API: DATASET_CMEK_DISABLED

Set data BigQuery tidak dikonfigurasi untuk menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) default.

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google Cloud untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol atas akses ke data Anda. Untuk mengetahui informasi selengkapnya, lihat Melindungi data dengan kunci Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Anda tidak dapat mengganti tabel antara enkripsi default dan enkripsi CMEK. Untuk menetapkan kunci CMEK default yang dapat digunakan untuk mengenkripsi semua tabel baru di set data, ikuti petunjuk untuk Menetapkan kunci default set data.

Menyetel kunci default tidak akan secara retroaktif mengenkripsi ulang tabel yang saat ini berada di set data dengan kunci baru. Untuk menggunakan CMEK untuk data yang ada, lakukan hal berikut:

  1. Buat set data baru.
  2. Tetapkan kunci CMEK default pada set data yang Anda buat.
  3. Untuk menyalin tabel ke set data yang mengaktifkan CMEK, ikuti petunjuk untuk Menyalin tabel.
  4. Setelah berhasil menyalin data, hapus set data asli.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Default network

Nama kategori di API: DEFAULT_NETWORK

Jaringan default ada dalam project.

Jaringan default secara otomatis membuat aturan firewall dan konfigurasi jaringan yang mungkin tidak aman. Untuk informasi selengkapnya, lihat Jaringan default.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di Konsol Google Cloud.

    Buka jaringan VPC

  2. Dalam daftar jaringan, klik nama jaringan default.

  3. Di halaman VPC network details, klik Delete VPC Network.

  4. Untuk membuat jaringan baru dengan aturan firewall kustom, lihat Membuat jaringan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Default service account used

Nama kategori di API: DEFAULT_SERVICE_ACCOUNT_USED

Instance Compute Engine dikonfigurasi untuk menggunakan akun layanan default.

Akun layanan Compute Engine default memiliki peran Editor di project, yang memungkinkan akses baca dan tulis ke sebagian besar layanan Google Cloud. Untuk melindungi dari eskalasi akses dan akses tidak sah, jangan gunakan akun layanan Compute Engine default. Sebagai gantinya, buat akun layanan baru dan hanya tetapkan izin yang diperlukan oleh instance Anda. Baca Kontrol akses untuk mengetahui informasi tentang peran dan izin.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Pilih instance yang terkait dengan temuan Security Health Analytics.

  3. Di halaman Instance details yang dimuat, klik Stop.

  4. Setelah instance dihentikan, klik Edit.

  5. Di bagian Service Account, pilih akun layanan Compute Engine other than the default. Anda mungkin perlu membuat akun layanan baru terlebih dahulu. Baca Kontrol akses untuk mengetahui informasi tentang peran dan izin IAM.

  6. Klik Simpan. Konfigurasi baru akan muncul di halaman Detail instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Disk CMEK disabled

Nama kategori di API: DISK_CMEK_DISABLED

Disk di VM ini tidak dienkripsi dengan kunci enkripsi yang dikelola pelanggan (CMEK).

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google Cloud untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol terhadap akses ke data Anda. Untuk informasi selengkapnya, lihat Melindungi Resource dengan Kunci Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Disk Compute Engine di Konsol Google Cloud.

    Buka disk Compute Engine

  2. Dalam daftar disk, klik nama disk yang ditunjukkan dalam temuan.

  3. Di halaman Manage disk, klik Delete.

  4. Untuk membuat disk baru dengan CMEK yang diaktifkan, lihat Mengenkripsi persistent disk baru dengan kunci Anda sendiri. CMEK dikenai biaya tambahan terkait Cloud KMS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Disk CSEK disabled

Nama kategori di API: DISK_CSEK_DISABLED

Disk di VM ini tidak dienkripsi dengan Kunci Enkripsi yang Disediakan Pelanggan (CSEK). Disk untuk VM penting harus dienkripsi dengan CSEK.

Jika Anda menyediakan kunci enkripsi sendiri, Compute Engine akan menggunakan kunci dari Anda untuk melindungi kunci buatan Google yang digunakan untuk mengenkripsi dan mendekripsi data Anda. Untuk mengetahui informasi selengkapnya, lihat Kunci Enkripsi yang Disediakan Pelanggan. CSEK menimbulkan biaya tambahan terkait Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Menghapus dan membuat disk

Anda hanya dapat mengenkripsi persistent disk baru dengan kunci Anda sendiri. Anda tidak dapat mengenkripsi persistent disk yang sudah ada dengan kunci Anda sendiri.

  1. Buka halaman Disk Compute Engine di Konsol Google Cloud.

    Buka disk Compute Engine

  2. Dalam daftar disk, klik nama disk yang ditunjukkan dalam temuan.

  3. Di halaman Manage disk, klik Delete.

  4. Untuk membuat disk baru dengan CSEK yang diaktifkan, lihat Mengenkripsi disk dengan kunci enkripsi yang disediakan pelanggan.

  5. Selesaikan langkah-langkah yang tersisa untuk mengaktifkan pendeteksi.

Mengaktifkan detektor

  1. Buka halaman Aset Security Command Center di Konsol Google Cloud.

    Buka Aset

  2. Di bagian Resource type pada panel Quick filters, pilih compute.Disk.

    Jika Anda tidak melihat compute.Disk, klik Lihat lainnya, masukkan Disk di kolom penelusuran, lalu klik Terapkan.

    Panel Hasil diperbarui untuk hanya menampilkan instance jenis resource compute.Disk.

  3. Di kolom Display name, pilih kotak di samping nama disk yang ingin Anda gunakan dengan CSEK, lalu klik Set Security Marks.

  4. Pada dialog, klik Tambahkan Tanda.

  5. Di kolom key, masukkan enforce_customer_supplied_disk_encryption_keys, dan di kolom value, masukkan true.

  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

DNS logging disabled

Nama kategori di API: DNS_LOGGING_DISABLED

Pemantauan log Cloud DNS memberikan visibilitas ke nama DNS yang diminta oleh klien dalam jaringan VPC. Log ini dapat dipantau untuk nama domain yang memiliki anomali dan dievaluasi berdasarkan kecerdasan ancaman. Sebaiknya aktifkan logging DNS untuk jaringan VPC.

Bergantung pada jumlah informasi, biaya logging Cloud DNS dapat signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga untuk Google Cloud Observability: Cloud Logging.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di konsol Google Cloud.

    Buka jaringan VPC

  2. Dalam daftar jaringan, klik nama jaringan VPC.

  3. Buat kebijakan server baru (jika belum ada) atau edit kebijakan yang ada:

    • Jika jaringan tidak memiliki kebijakan server DNS, selesaikan langkah-langkah berikut:

      1. Klik Edit.
      2. Di kolom DNS server policy, klik Create a new server policy.
      3. Masukkan nama untuk kebijakan server baru.
      4. Setel Logs ke On.
      5. Klik Simpan.
    • Jika jaringan memiliki kebijakan server DNS, selesaikan langkah-langkah berikut:

      1. Di kolom DNS server policy, klik nama kebijakan DNS.
      2. Klik Edit kebijakan.
      3. Setel Logs ke On.
      4. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

DNSSEC disabled

Nama kategori di API: DNSSEC_DISABLED

Domain Name System Security Extensions (DNSSEC) dinonaktifkan untuk zona Cloud DNS.

DNSSEC memvalidasi respons DNS dan memitigasi risiko, seperti pembajakan DNS dan serangan person-in-the-middle, dengan menandatangani data DNS secara kriptografis. Anda harus mengaktifkan DNSSEC. Untuk informasi selengkapnya, lihat ringkasan DNS Security Extensions (DNSSEC).

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Cloud DNS di konsol Google Cloud.

    Buka jaringan Cloud DNS

  2. Temukan baris dengan zona DNS yang ditunjukkan dalam temuan.

  3. Klik setelan DNSSEC di baris, lalu di bagian DNSSEC, pilih Aktif.

  4. Baca dialog yang muncul. Jika sudah puas, klik Aktifkan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Effectively Anonymous Users Granted GKE Cluster Access

Nama kategori di API: GKE_PRIVILEGE_ESCALATION_DEFAULT_USERS_GROUPS

Seseorang membuat binding RBAC yang mereferensikan salah satu pengguna atau grup berikut:

  • system:anonymous
  • system:authenticated
  • system:unauthenticated

Pengguna dan grup ini secara efektif bersifat anonim dan tidak boleh digunakan dalam RoleBindings atau ClusterRoleBindings. Untuk mengetahui detailnya, lihat Menghindari peran dan grup default.

Untuk memperbaiki temuan ini, terapkan langkah-langkah berikut ke resource yang terpengaruh:

  1. Buka manifes untuk setiap ClusterRoleBinding atau RoleBinding yang terpengaruh.
  2. Tetapkan kolom yang dibatasi berikut ke salah satu nilai yang diizinkan.

Kolom yang dibatasi

  • subjects[*].name

Nilai yang diizinkan

  • Grup, pengguna, atau akun layanan apa pun yang tidak menyertakan system:anonymous, system:authenticated, atau system:unauthenticated.

Egress deny rule not set

Nama kategori di API: EGRESS_DENY_RULE_NOT_SET

Aturan penolakan keluar tidak ditetapkan di firewall.

Firewall yang menolak semua traffic jaringan keluar akan mencegah koneksi jaringan keluar yang tidak diinginkan, kecuali koneksi yang secara eksplisit diizinkan oleh firewall lain. Untuk mengetahui informasi selengkapnya, lihat Kasus ekspor.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Klik Create Firewall Rule.

  3. Beri nama firewall dan, secara opsional, deskripsi.

  4. Di bagian Direction of traffic, pilih Egress.

  5. Di bagian Action on match, pilih Deny.

  6. Di menu drop-down Targets, pilih All instances in the network.

  7. Di menu drop-down Destination filter, pilih IP ranges, lalu ketik 0.0.0.0/0 ke dalam kotak Destination IP ranges.

  8. Di bagian Protocols and ports, pilih Deny all.

  9. Klik Nonaktifkan Aturan, lalu di bagian Penerapan, pilih Diaktifkan.

  10. Klik Create.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Essential contacts not configured

Nama kategori di API: ESSENTIAL_CONTACTS_NOT_CONFIGURED

Organisasi Anda belum menetapkan orang atau grup untuk menerima notifikasi dari Google Cloud tentang peristiwa penting seperti serangan, kerentanan, dan insiden data dalam organisasi Google Cloud Anda. Sebaiknya Anda menunjuk satu atau beberapa orang atau grup di organisasi bisnis Anda sebagai kontak penting.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kontak Penting di konsol Google Cloud.

    Buka Kontak Penting

  2. Pastikan organisasi muncul di pemilih resource di bagian atas halaman. Pemilih resource memberi tahu Anda project, folder, atau organisasi tempat Anda mengelola kontak saat ini.

  3. Klik +Tambahkan kontak. Panel Tambahkan kontak akan terbuka.

  4. Di kolom Email dan Confirm Email, masukkan alamat email kontak.

  5. Dari bagian Notification categories, pilih notification categories yang Anda inginkan untuk komunikasi yang diterima kontak. Pastikan alamat email yang sesuai telah dikonfigurasi untuk setiap kategori notifikasi berikut:

    1. Hukum
    2. Keamanan
    3. Penangguhan
    4. Teknis
  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Firewall not monitored

Nama kategori di API: FIREWALL_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan aturan Firewall Jaringan VPC.

Dengan memantau peristiwa pembuatan dan pembaruan aturan firewall, Anda akan memperoleh data terkait perubahan akses jaringan dan dapat mendeteksi aktivitas mencurigakan dengan cepat. Untuk mengetahui informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      resource.type="gce_firewall_rule"
      AND (protoPayload.methodName:"compute.firewalls.insert"
      OR protoPayload.methodName:"compute.firewalls.patch"
      OR protoPayload.methodName:"compute.firewalls.delete")

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Firewall rule logging disabled

Nama kategori di API: FIREWALL_RULE_LOGGING_DISABLED

Logging aturan firewall dinonaktifkan.

Logging aturan firewall memungkinkan Anda mengaudit, memverifikasi, dan menganalisis efek aturan firewall Anda. Tindakan ini dapat berguna untuk mengaudit akses jaringan atau memberikan peringatan dini bahwa jaringan sedang digunakan dengan cara yang tidak disetujui. Biaya log dapat menjadi signifikan. Untuk informasi selengkapnya tentang Logging Aturan Firewall dan biayanya, lihat Menggunakan Logging Aturan Firewall.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall yang diinginkan.

  3. Klik Edit.

  4. Di bagian Logs, pilih On.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Flow logs disabled

Nama kategori di API: FLOW_LOGS_DISABLED

Ada subnetwork VPC yang menonaktifkan log alur.

VPC Flow Logs mencatat sampel alur jaringan yang dikirim dari dan diterima oleh instance VM. Log ini dapat digunakan untuk pemantauan jaringan, forensik, analisis keamanan real-time, dan pengoptimalan biaya. Untuk informasi selengkapnya tentang log aliran dan biayanya, lihat Menggunakan Log Aliran VPC.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di konsol Google Cloud.

    Buka jaringan VPC

  2. Dalam daftar jaringan, klik nama jaringan yang diinginkan.

  3. Di halaman VPC network details, klik tab Subnets.

  4. Dalam daftar subnet, klik nama subnet yang ditunjukkan dalam temuan.

  5. Di halaman Subnet details, klik Edit.

  6. Di bagian Flow logs, pilih On.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Nama kategori di API: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED

Dalam konfigurasi subnet di jaringan VPC, layanan VPC Flow Logs tidak aktif atau tidak dikonfigurasi berdasarkan rekomendasi CIS Benchmark 1.3. VPC Flow Logs mencatat sampel aliran jaringan yang dikirim dari dan diterima oleh instance VM yang dapat digunakan untuk mendeteksi ancaman.

Untuk mengetahui informasi selengkapnya tentang Log Aliran VPC dan biayanya, lihat Menggunakan Log Aliran VPC.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di konsol Google Cloud.

    Buka jaringan VPC

  2. Dalam daftar jaringan, klik nama jaringan.

  3. Di halaman VPC network details, klik tab Subnets.

  4. Dalam daftar subnet, klik nama subnet yang ditunjukkan dalam temuan.

  5. Di halaman Subnet details, klik Edit.

  6. Di bagian Flow logs, pilih On.

    1. Anda memiliki opsi untuk mengubah konfigurasi log dengan mengklik tombol Configure logs untuk memperluas tab. CIS Benchmarks merekomendasikan setelan berikut:
      1. Setel Aggregation Interval ke 5 SEC.
      2. Di kotak centang Additional fields, pilih opsi Include metadata.
      3. Tetapkan Sample rate ke 100%.
      4. Klik tombol SIMPAN.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Full API access

Nama kategori di API: FULL_API_ACCESS

Instance Compute Engine dikonfigurasi untuk menggunakan akun layanan default dengan akses penuh ke semua Google Cloud API.

Instance yang dikonfigurasi dengan akun layanan default dan cakupan akses API yang ditetapkan ke Allow full access to all Cloud APIs dapat mengizinkan pengguna untuk melakukan operasi atau panggilan API yang izin IAM-nya tidak dimiliki. Untuk mengetahui informasi selengkapnya, lihat Akun layanan default Compute Engine.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Jika instance berjalan, klik Hentikan.

  4. Saat instance dihentikan, klik Edit.

  5. Di bagian Keamanan dan akses, pada Akun layanan, pilih Akun layanan default Compute Engine.

  6. Di bagian Access scopes, pilih Allow default access atau Set access for each API. Hal ini membatasi API yang dapat diakses oleh proses atau workload apa pun yang menggunakan akun layanan VM default.

  7. Jika Anda memilih Tetapkan akses untuk setiap API, lakukan hal berikut:

    • Nonaktifkan Cloud Platform dengan menyetelnya ke None.
    • Aktifkan API tertentu yang memerlukan akses akun layanan VM default.
  8. Klik Simpan.

  9. Klik Mulai untuk memulai instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

HTTP load balancer

Nama kategori di API: HTTP_LOAD_BALANCER

Instance Compute Engine menggunakan load balancer yang dikonfigurasi untuk menggunakan proxy HTTP target, bukan proxy HTTPS target.

Untuk melindungi integritas data dan mencegah penyusup mengutak-atik komunikasi Anda, konfigurasikan load balancer HTTP(S) untuk hanya mengizinkan traffic HTTPS. Untuk informasi selengkapnya, lihat Ringkasan Load Balancing HTTP(S) Eksternal.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Target proxy di konsol Google Cloud.

    Buka Proxy target

  2. Dalam daftar proxy target, klik nama proxy target dalam temuan.

  3. Klik link di bagian URL map.

  4. Klik Edit.

  5. Klik Frontend configuration.

  6. Hapus semua konfigurasi Frontend IP dan port yang mengizinkan traffic HTTP dan buat konfigurasi baru yang mengizinkan traffic HTTPS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Instance OS login disabled

Nama kategori di API: INSTANCE_OS_LOGIN_DISABLED

Login OS dinonaktifkan di instance Compute Engine ini.

Login OS mengaktifkan pengelolaan kunci SSH terpusat dengan IAM, dan menonaktifkan konfigurasi kunci SSH berbasis metadata di semua instance dalam project. Pelajari cara menyiapkan dan mengonfigurasi Login OS.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Di halaman Instance details yang dimuat, klik Stop.

  4. Setelah instance dihentikan, klik Edit.

  5. Di bagian Custom metadata, pastikan bahwa item dengan kunci enable-oslogin memiliki nilai TRUE.

  6. Klik Simpan.

  7. Klik Mulai untuk memulai instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Integrity monitoring disabled

Nama kategori di API: INTEGRITY_MONITORING_DISABLED

Pemantauan integritas dinonaktifkan di cluster GKE.

Pemantauan integritas memungkinkan Anda memantau dan memverifikasi integritas booting runtime node terlindungi menggunakan Monitoring. Hal ini memungkinkan Anda merespons kegagalan integritas dan mencegah agar node yang dibobol tidak di-deploy ke dalam cluster.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Setelah disediakan, node tidak dapat diupdate untuk mengaktifkan pemantauan integritas. Anda harus membuat node pool baru dengan pemantauan integritas yang diaktifkan.

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik nama cluster dalam temuan.

  3. Klik Add Node Pool.

  4. Di tab Security, pastikan Enable integrity monitoring sudah diaktifkan.

  5. Klik Create.

  6. Untuk memigrasikan workload Anda dari node pool yang tidak sesuai ke node pool baru, lihat Memigrasikan workload ke jenis mesin yang berbeda.

  7. Setelah workload Anda dipindah, hapus node pool awal yang tidak sesuai.

    1. Di halaman Cluster Kubernetes, di menu Node pools, klik nama node pool yang ingin Anda hapus.
    2. Klik Remove node pool.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Intranode visibility disabled

Nama kategori di API: INTRANODE_VISIBILITY_DISABLED

Visibilitas intranode dinonaktifkan untuk cluster GKE.

Dengan mengaktifkan visibilitas intranode, traffic Pod-to-Pod intranode Anda akan terlihat oleh fabric jaringan. Dengan fitur ini, Anda dapat menggunakan logging alur VPC atau fitur VPC lainnya untuk memantau atau mengontrol traffic intranode. Untuk mendapatkan log, Anda harus mengaktifkan log alur VPC di subnetwork yang dipilih. Untuk mengetahui informasi selengkapnya, lihat Menggunakan log aliran VPC.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Setelah disediakan, node tidak dapat diupdate untuk mengaktifkan pemantauan integritas. Anda harus membuat node pool baru dengan pemantauan integritas yang diaktifkan.

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di bagian Networking, klik Edit visibilitas intranode di baris Intranode visibility.

    Jika konfigurasi cluster baru saja diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  3. Dalam dialog, pilih Enable Intranode visibility.

  4. Klik Simpan Perubahan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

IP alias disabled

Nama kategori di API: IP_ALIAS_DISABLED

Cluster GKE dibuat dengan rentang IP alias dinonaktifkan.

Jika Anda mengaktifkan rentang IP alias, cluster GKE akan mengalokasikan alamat IP dari blok CIDR yang diketahui, sehingga cluster Anda skalabel dan berinteraksi lebih baik dengan produk dan entity Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Ringkasan rentang IP alias.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Anda tidak dapat memigrasikan cluster yang ada untuk menggunakan IP alias. Untuk membuat cluster baru dengan IP alias diaktifkan, lakukan hal berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik Create.

  3. Dari panel navigasi, di bagian Cluster, klik Networking.

  4. Di bagian Advanced networking options, pilih Enable VPC-native traffic routing (menggunakan IP alias).

  5. Klik Create.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

IP forwarding enabled

Nama kategori di API: IP_FORWARDING_ENABLED

Penerusan IP diaktifkan di instance Compute Engine.

Cegah kehilangan data atau pengungkapan informasi dengan menonaktifkan penerusan IP paket data untuk VM Anda.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, centang kotak di samping nama instance dalam temuan.

  3. Klik Delete.

  4. Pilih Buat Instance untuk membuat instance baru guna menggantikan instance yang Anda hapus.

  5. Untuk memastikan IP forwarding dinonaktifkan, klik Management, disks, networking, SSH keys, lalu klik Networking.

  6. Di bagian Network interfaces, klik Edit.

  7. Di bagian Penerusan IP, di menu drop-down, pastikan Nonaktif dipilih.

  8. Tentukan parameter instance lainnya, lalu klik Create. Untuk mengetahui informasi selengkapnya, lihat Membuat dan memulai instance VM.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

KMS key not rotated

Nama kategori di API: KMS_KEY_NOT_ROTATED

Rotasi tidak dikonfigurasi pada kunci enkripsi Cloud KMS.

Memutar kunci enkripsi secara rutin memberikan perlindungan jika kunci disusupi dan membatasi jumlah pesan terenkripsi yang tersedia untuk kriptoanalisis untuk versi kunci tertentu. Untuk informasi selengkapnya, lihat Rotasi kunci.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kunci Cloud KMS di konsol Google Cloud.

    Buka kunci Cloud KMS

  2. Klik nama key ring yang ditunjukkan dalam temuan.

  3. Klik nama kunci yang ditunjukkan dalam temuan.

  4. Klik Edit Rotation Period.

  5. Tetapkan periode rotasi maksimal 90 hari.

  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

KMS project has owner

Nama kategori di API: KMS_PROJECT_HAS_OWNER

Pengguna memiliki izin roles/Owner di project yang memiliki kunci kriptografis. Untuk informasi selengkapnya, lihat Izin dan peran.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka halaman IAM

  2. Jika perlu, pilih project dalam temuan.

  3. Untuk setiap akun utama yang diberi peran Pemilik:

    1. Klik Edit.
    2. Di panel Izin edit, di samping peran Pemilik, klik Hapus.
    3. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

KMS public key

Nama kategori di API: KMS_PUBLIC_KEY

Cryptokey Cloud KMS atau Key Ring Cloud KMS bersifat publik dan dapat diakses oleh siapa saja di internet. Untuk informasi selengkapnya, lihat Menggunakan IAM dengan Cloud KMS.

Untuk memperbaiki temuan ini, jika terkait dengan Cryptokey:

  1. Buka halaman Kunci Kriptografis di konsol Google Cloud.

    Kunci Kriptografis

  2. Di bagian Name, pilih key ring yang berisi kunci kriptografis yang terkait dengan temuan Security Health Analytics.

  3. Di halaman Detail ring kunci yang dimuat, centang kotak di samping kunci kriptografis.

  4. Jika INFO PANEL tidak ditampilkan, klik tombol SHOW INFO PANEL.

  5. Gunakan kotak filter sebelum Peran / Akun Utama untuk menelusuri akun utama untuk allUsers dan allAuthenticatedUsers, lalu klik Hapus untuk menghapus akses untuk akun utama tersebut.

Untuk memperbaiki temuan ini, jika terkait dengan Key Ring:

  1. Buka halaman Kunci Kriptografis di konsol Google Cloud.

    Kunci Kriptografis

  2. Temukan baris dengan key ring dalam temuan dan pilih kotak centangnya.

  3. Jika INFO PANEL tidak ditampilkan, klik tombol SHOW INFO PANEL.

  4. Gunakan kotak filter sebelum Peran / Akun Utama untuk menelusuri akun utama untuk allUsers dan allAuthenticatedUsers, lalu klik Hapus untuk menghapus akses untuk akun utama tersebut.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

KMS role separation

Nama kategori di API: KMS_ROLE_SEPARATION

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Satu atau beberapa akun utama memiliki beberapa izin Cloud KMS yang ditetapkan. Sebaiknya jangan ada akun yang secara bersamaan memiliki Admin Cloud KMS bersama dengan izin Cloud KMS lainnya. Untuk mengetahui informasi selengkapnya, lihat Izin dan peran.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka IAM

  2. Untuk setiap akun utama yang tercantum dalam temuan, lakukan hal berikut:

    1. Periksa apakah peran diwariskan dari folder atau resource organisasi dengan melihat kolom Inheritance. Jika kolom berisi link ke resource induk, klik link untuk membuka halaman IAM resource induk.
    2. Klik Edit di samping akun utama.
    3. Untuk menghapus izin, klik Hapus di samping Admin Cloud KMS. Jika Anda ingin menghapus semua izin untuk akun utama, klik Hapus di samping semua izin lainnya.
  3. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Legacy authorization enabled

Nama kategori di API: LEGACY_AUTHORIZATION_ENABLED

Otorisasi Lama diaktifkan di cluster GKE.

Di Kubernetes, kontrol akses berbasis peran (RBAC) memungkinkan Anda menentukan peran dengan aturan yang berisi serangkaian izin, dan memberikan izin pada level cluster dan namespace. Fitur ini memberikan keamanan yang lebih baik dengan memastikan bahwa pengguna hanya dapat mengakses resource tertentu. Pertimbangkan untuk menonaktifkan kontrol akses berbasis atribut (ABAC) lama.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Pilih cluster yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Di menu drop-down Legacy Authorization, pilih Disabled.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Legacy metadata enabled

Nama kategori di API: LEGACY_METADATA_ENABLED

Metadata lama diaktifkan di cluster GKE.

Server metadata instance Compute Engine mengekspos endpoint /0.1/ dan /v1beta1/ lama, yang tidak menerapkan header kueri metadata. Ini adalah fitur di /v1/ API yang mempersulit calon penyerang untuk mengambil metadata instance. Kecuali jika diperlukan, sebaiknya Anda nonaktifkan API /0.1/ dan /v1beta1/ lama ini.

Untuk mengetahui informasi selengkapnya, lihat Menonaktifkan dan bertransisi dari API metadata lama.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Anda hanya dapat menonaktifkan API metadata lama saat membuat cluster baru atau saat menambahkan node pool baru ke cluster yang ada. Untuk mengupdate cluster yang ada dan menonaktifkan API metadata lama, lihat Memigrasikan workload ke jenis mesin yang berbeda.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Legacy network

Nama kategori di API: LEGACY_NETWORK

Jaringan lama ada dalam project.

Jaringan lama tidak direkomendasikan karena banyak fitur keamanan Google Cloud baru yang tidak didukung di jaringan lama. Sebagai gantinya, gunakan jaringan VPC. Untuk mengetahui informasi selengkapnya, lihat Jaringan lama.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di konsol Google Cloud.

    Buka jaringan VPC

  2. Untuk membuat jaringan non-lama yang baru, klik Create Network.

  3. Kembali ke halaman Jaringan VPC.

  4. Di daftar jaringan, klik legacy_network.

  5. Di halaman VPC network details, klik Delete VPC Network.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Load balancer logging disabled

Nama kategori di API: LOAD_BALANCER_LOGGING_DISABLED

Logging dinonaktifkan untuk layanan backend di load balancer.

Dengan mengaktifkan logging untuk load balancer, Anda dapat melihat traffic jaringan HTTP(S) untuk aplikasi web Anda. Untuk informasi selengkapnya, lihat Load balancer.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Cloud Load Balancing di Konsol Google Cloud.

    Buka Cloud Load Balancing

  2. Klik nama load balancer Anda.

  3. Klik Edit.

  4. Klik Backend configuration.

  5. Di halaman Backend configuration, klik Edit.

  6. Di bagian Logging, pilih Enable logging dan pilih frekuensi sampel terbaik untuk project Anda.

  7. Untuk menyelesaikan pengeditan layanan backend, klik Update.

  8. Untuk menyelesaikan pengeditan load balancer, klik Update.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Locked retention policy not set

Nama kategori di API: LOCKED_RETENTION_POLICY_NOT_SET

Kebijakan retensi terkunci tidak ditetapkan untuk log.

Kebijakan retensi terkunci mencegah log ditimpa dan bucket log dihapus. Untuk informasi selengkapnya, lihat Kunci Bucket.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Browser Storage di konsol Google Cloud.

    Buka Browser Penyimpanan

  2. Pilih bucket yang tercantum dalam temuan Security Health Analytics.

  3. Di halaman Detail bucket, klik tab Retensi.

  4. Jika kebijakan retensi belum ditetapkan, klik Tetapkan Kebijakan Retensi.

  5. Masukkan periode retensi data.

  6. Klik Simpan. Kebijakan retensi ditampilkan di tab Retensi.

  7. Klik Kunci untuk memastikan periode retensi tidak dipersingkat atau dihapus.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Log not exported

Nama kategori di API: LOG_NOT_EXPORTED

Resource tidak memiliki sink log yang sesuai yang dikonfigurasi.

Cloud Logging membantu Anda menemukan akar masalah dalam sistem dan aplikasi dengan cepat. Namun, sebagian besar log hanya disimpan selama 30 hari secara default. Mengekspor salinan semua entri log untuk memperpanjang periode penyimpanan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan ekspor log.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Log Router di konsol Google Cloud.

    Buka Router Log

  2. Klik Create Sink.

  3. Untuk memastikan semua log diekspor, biarkan filter penyertaan dan pengecualian kosong.

  4. Klik Create Sink.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Master authorized networks disabled

Nama kategori di API: MASTER_AUTHORIZED_NETWORKS_DISABLED

Jaringan yang Diizinkan Bidang Kontrol tidak diaktifkan di cluster GKE.

Jaringan yang Diizinkan Bidang Kontrol meningkatkan keamanan untuk cluster penampung Anda dengan memblokir alamat IP yang ditentukan agar tidak mengakses bidang kontrol cluster Anda. Untuk informasi selengkapnya, lihat Menambahkan jaringan yang diizinkan untuk akses panel kontrol.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Pilih cluster yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Pada menu drop-down Control Plane Authorized Networks, pilih Enabled.

  5. Klik Add authorized network.

  6. Tentukan jaringan yang diizinkan yang ingin Anda gunakan.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

MFA not enforced

Nama kategori di API: MFA_NOT_ENFORCED

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Autentikasi multi-faktor, khususnya Verifikasi 2 Langkah (2SV), dinonaktifkan untuk beberapa pengguna di organisasi Anda.

Autentikasi multi-faktor digunakan untuk melindungi akun dari akses tidak sah dan merupakan alat paling penting untuk melindungi organisasi Anda dari pembobolan kredensial login. Untuk informasi selengkapnya, lihat Melindungi bisnis dengan Verifikasi 2 Langkah.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Konsol Admin di konsol Google Cloud.

    Buka konsol Admin

  2. Terapkan Verifikasi 2 Langkah untuk semua unit organisasi.

Menyembunyikan temuan jenis ini

Untuk menyembunyikan temuan jenis ini, tentukan aturan bisukan yang secara otomatis membisukan temuan mendatang dari jenis ini. Untuk informasi selengkapnya, lihat Menonaktifkan temuan di Security Command Center.

Meskipun bukan cara yang direkomendasikan untuk menyembunyikan temuan, Anda juga dapat menambahkan tanda keamanan khusus ke aset sehingga detektor Security Health Analytics tidak membuat temuan keamanan untuk aset tersebut.

  • Untuk mencegah penemuan ini diaktifkan lagi, tambahkan tanda keamanan allow_mfa_not_enforced dengan nilai true ke aset.
  • Untuk mengabaikan potensi pelanggaran untuk unit organisasi tertentu, tambahkan tanda keamanan excluded_orgunits ke aset dengan daftar jalur unit organisasi yang dipisahkan koma di kolom value. Contohnya, excluded_orgunits:/people/vendors/vendorA,/people/contractors/contractorA.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Network not monitored

Nama kategori di API: NETWORK_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan jaringan VPC.

Untuk mendeteksi perubahan yang salah atau tanpa izin pada penyiapan jaringan, pantau perubahan jaringan VPC. Untuk informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      resource.type="gce_network"
      AND (protoPayload.methodName:"compute.networks.insert"
      OR protoPayload.methodName:"compute.networks.patch"
      OR protoPayload.methodName:"compute.networks.delete"
      OR protoPayload.methodName:"compute.networks.removePeering"
      OR protoPayload.methodName:"compute.networks.addPeering")

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Network policy disabled

Nama kategori di API: NETWORK_POLICY_DISABLED

Kebijakan jaringan dinonaktifkan di cluster GKE.

Secara default, komunikasi pod to pod terbuka. Komunikasi terbuka memungkinkan pod terhubung langsung di seluruh node, dengan atau tanpa terjemahan alamat jaringan. Resource NetworkPolicy seperti firewall tingkat pod yang membatasi koneksi antar-pod, kecuali jika resource NetworkPolicy secara eksplisit mengizinkan koneksi. Pelajari cara menentukan kebijakan jaringan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik nama cluster yang tercantum dalam temuan Security Health Analytics.

  3. Di bagian Networking, di baris untuk Calico Kubernetes Network policy, klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Dalam dialog, pilih Enable Calico Kubernetes network policy for control plane dan Enable Calico Kubernetes network policy for nodes.

  5. Klik Simpan Perubahan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Nodepool boot CMEK disabled

Nama kategori di API: NODEPOOL_BOOT_CMEK_DISABLED

Disk booting di node pool ini tidak dienkripsi dengan kunci enkripsi yang dikelola pelanggan (CMEK). CMEK memungkinkan pengguna mengonfigurasi kunci enkripsi default untuk disk booting di node pool.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di daftar cluster, klik nama cluster dalam temuan.

  3. Klik tab Nodes.

  4. Untuk setiap kumpulan node default-pool, klik Hapus.

  5. Saat diminta untuk mengonfirmasi, klik Delete.

  6. Untuk membuat node pool baru menggunakan CMEK, lihat Menggunakan kunci enkripsi yang dikelola pelanggan (CMEK). CMEK dikenai biaya tambahan terkait Cloud KMS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Nodepool secure boot disabled

Nama kategori di API: NODEPOOL_SECURE_BOOT_DISABLED

Secure Boot dinonaktifkan untuk cluster GKE.

Aktifkan Booting Aman untuk Node GKE yang Terlindungi guna memverifikasi tanda tangan digital komponen booting node. Untuk informasi selengkapnya, lihat Booting Aman.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Setelah disediakan, Node pool tidak dapat diupdate untuk mengaktifkan Booting Aman. Anda harus membuat Node pool baru dengan Booting Aman yang diaktifkan.

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik nama cluster dalam temuan.

  3. Klik Add Node Pool.

  4. Di menu Node pools, lakukan langkah berikut:

    1. Klik nama Node pool baru untuk memperluas tab.
    2. Pilih Security, lalu di bagian Shielded options, pilih Enable secure boot.
    3. Klik Create.
    4. Untuk memigrasikan workload Anda dari node pool yang tidak sesuai ke node pool baru, lihat Memigrasikan workload ke jenis mesin yang berbeda.
    5. Setelah workload Anda dipindah, hapus node pool awal yang tidak sesuai.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Non org IAM member

Nama kategori di API: NON_ORG_IAM_MEMBER

Pengguna di luar organisasi atau project Anda memiliki izin IAM pada project atau organisasi. Pelajari izin IAM lebih lanjut.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka IAM

  2. Centang kotak di samping pengguna di luar organisasi atau project Anda.

  3. Klik Hapus.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Object versioning disabled

Nama kategori di API: OBJECT_VERSIONING_DISABLED

Pembuatan versi objek tidak diaktifkan di bucket penyimpanan tempat sink dikonfigurasi.

Untuk mendukung pengambilan objek yang dihapus atau ditimpa, Cloud Storage menawarkan fitur Pembuatan Versi Objek. Aktifkan Pembuatan Versi Objek untuk melindungi data Cloud Storage Anda agar tidak ditimpa atau dihapus secara tidak sengaja. Pelajari cara Mengaktifkan Pembuatan Versi Objek.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, gunakan flag --versioning dalam perintah gcloud storage buckets update dengan nilai yang sesuai:

    gcloud storage buckets update gs://finding.assetDisplayName --versioning

Ganti finding.assetDisplayName dengan nama bucket yang relevan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open Cassandra port

Nama kategori di API: OPEN_CASSANDRA_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Cassandra dapat mengekspos layanan Cassandra Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Cassandra adalah:

  • TCP - 7000, 7001, 7199, 8888, 9042, 9160, 61620, 61621

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open ciscosecure websm port

Nama kategori di API: OPEN_CISCOSECURE_WEBSM_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port CiscoSecure/WebSM dapat mengekspos layanan CiscoSecure/WebSM Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan CiscoSecure/WebSM adalah:

  • TCP - 9090

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open directory services port

Nama kategori di API: OPEN_DIRECTORY_SERVICES_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Directory dapat mengekspos layanan Directory Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Direktori adalah:

  • TCP - 445
  • UDP - 445

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open DNS port

Nama kategori di API: OPEN_DNS_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port DNS dapat mengekspos layanan DNS Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan DNS adalah:

  • TCP - 53
  • UDP - 53

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open Elasticsearch port

Nama kategori di API: OPEN_ELASTICSEARCH_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Elasticsearch dapat mengekspos layanan Elasticsearch Anda kepada penyerang. Untuk mengetahui informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Elasticsearch adalah:

  • TCP - 9200, 9300

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open firewall

Nama kategori di API: OPEN_FIREWALL

Aturan firewall yang mengizinkan koneksi dari semua alamat IP, seperti 0.0.0.0/0, atau dari semua port dapat tidak sengaja mengekspos resource terhadap serangan dari sumber yang tidak diinginkan. Aturan ini harus dihapus atau dibatasi secara eksplisit ke port atau rentang IP sumber yang dituju. Misalnya, dalam aplikasi yang dimaksudkan untuk bersifat publik, pertimbangkan untuk membatasi port yang diizinkan ke port yang diperlukan untuk aplikasi, seperti 80 dan 443. Jika aplikasi Anda perlu mengizinkan koneksi dari semua alamat IP atau port, pertimbangkan untuk menambahkan aset ke daftar yang diizinkan. Pelajari lebih lanjut cara Memperbarui aturan firewall.

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall rules di konsol Google Cloud.

    Buka Aturan firewall

  2. Klik aturan firewall yang tercantum dalam temuan Security Health Analytics, lalu klik Edit.

  3. Di bagian Source IP ranges, edit nilai IP untuk membatasi rentang IP yang diizinkan.

  4. Di bagian Protocols and ports, pilih Specified protocols and ports, pilih protokol yang diizinkan, lalu masukkan port yang diizinkan.

  5. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open FTP port

Nama kategori di API: OPEN_FTP_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port FTP dapat mengekspos layanan FTP Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan FTP adalah:

  • TCP - 21

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open group IAM member

Nama kategori di API: OPEN_GROUP_IAM_MEMBER

Satu atau beberapa akun utama yang memiliki akses ke organisasi, project, atau folder adalah akun Google Grup yang dapat diikuti tanpa persetujuan.

Pelanggan Google Cloud dapat menggunakan Grup Google untuk mengelola peran dan izin bagi anggota di organisasi mereka, atau menerapkan kebijakan akses ke kumpulan pengguna. Sebagai ganti memberikan peran secara langsung kepada anggota, administrator dapat memberikan peran dan izin ke Grup Google, lalu menambahkan anggota ke grup tertentu. Anggota grup mewarisi semua peran dan izin grup, yang memungkinkan anggota mengakses resource dan layanan tertentu.

Jika akun Google Grup terbuka digunakan sebagai akun utama dalam binding IAM, siapa pun dapat mewarisi peran terkait hanya dengan bergabung ke grup secara langsung atau tidak langsung (melalui subgrup). Sebaiknya cabut peran grup terbuka atau batasi akses ke grup tersebut.

Untuk memperbaiki temuan ini, lakukan salah satu prosedur berikut.

Menghapus grup dari kebijakan IAM

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka IAM

  2. Jika perlu, pilih project, folder, atau organisasi dalam temuan.

  3. Cabut peran setiap grup terbuka yang diidentifikasi dalam temuan.

Membatasi akses ke grup terbuka

  1. Login ke Google Grup.
  2. Perbarui setelan setiap grup terbuka, dan subgrupnya, untuk menentukan siapa yang dapat bergabung ke grup dan siapa yang harus menyetujuinya.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open HTTP port

Nama kategori di API: OPEN_HTTP_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port HTTP dapat mengekspos layanan HTTP Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan HTTP adalah:

  • TCP - 80

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open LDAP port

Nama kategori di API: OPEN_LDAP_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port LDAP dapat mengekspos layanan LDAP Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan LDAP adalah:

  • TCP - 389, 636
  • UDP - 389

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open Memcached port

Nama kategori di API: OPEN_MEMCACHED_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Memcached dapat mengekspos layanan Memcached Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Memcached adalah:

  • TCP - 11211, 11214, 11215
  • UDP - 11211, 11214, 11215

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open MongoDB port

Nama kategori di API: OPEN_MONGODB_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port MongoDB dapat mengekspos layanan MongoDB Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan MongoDB adalah:

  • TCP - 27017, 27018, 27019

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open MySQL port

Nama kategori di API: OPEN_MYSQL_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port MySQL dapat mengekspos layanan MySQL Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan MySQL adalah:

  • TCP - 3306

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open NetBIOS port

Nama kategori di API: `OPEN_NETBIOS_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port NetBIOS dapat mengekspos layanan NetBIOS Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan NetBIOS adalah:

  • TCP - 137, 138, 139
  • UDP - 137, 138, 139

Temuan ini dibuat untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open OracleDB port

Nama kategori di API: OPEN_ORACLEDB_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port OracleDB dapat mengekspos layanan OracleDB Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan OracleDB adalah:

  • TCP - 1521, 2483, 2484
  • UDP - 2483, 2484

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open POP3 port

Nama kategori di API: OPEN_POP3_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port POP3 dapat mengekspos layanan POP3 Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan POP3 adalah:

  • TCP - 110

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open PostgreSQL port

Nama kategori di API: OPEN_POSTGRESQL_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port PostgreSQL dapat mengekspos layanan PostgreSQL Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan PostgreSQL adalah:

  • TCP - 5432
  • UDP - 5432

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open RDP port

Nama kategori di API: OPEN_RDP_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port RDP dapat mengekspos layanan RDP Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan RDP adalah:

  • TCP - 3389
  • UDP - 3389

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open Redis port

Nama kategori di API: OPEN_REDIS_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Redis dapat mengekspos layanan Redis Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Redis adalah:

  • TCP - 6379

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open SMTP port

Nama kategori di API: OPEN_SMTP_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port SMTP dapat mengekspos layanan SMTP Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan SMTP adalah:

  • TCP - 25

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open SSH port

Nama kategori di API: OPEN_SSH_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port SSH dapat mengekspos layanan SSH Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan SSH adalah:

  • SCTP - 22
  • TCP - 22

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Open Telnet port

Nama kategori di API: OPEN_TELNET_PORT

Aturan firewall yang mengizinkan alamat IP apa pun untuk terhubung ke port Telnet dapat mengekspos layanan Telnet Anda kepada penyerang. Untuk informasi selengkapnya, lihat Ringkasan aturan firewall VPC.

Port layanan Telnet adalah:

  • TCP - 23

Temuan ini dihasilkan untuk aturan firewall yang rentan, meskipun Anda sengaja menonaktifkan aturan tersebut. Temuan aktif untuk aturan firewall yang dinonaktifkan akan memberi tahu Anda tentang konfigurasi tidak aman yang akan mengizinkan traffic yang tidak diinginkan jika diaktifkan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Firewall di Konsol Google Cloud.

    Buka Firewall

  2. Dalam daftar aturan firewall, klik nama aturan firewall dalam temuan.

  3. Klik Edit.

  4. Di bagian Rentang IP sumber, hapus 0.0.0.0/0.

  5. Tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance.

  6. Tambahkan protokol dan port tertentu yang ingin Anda buka di instance Anda.

  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Org policy Confidential VM policy

Nama kategori di API: ORG_POLICY_CONFIDENTIAL_VM_POLICY

Resource Compute Engine tidak mematuhi kebijakan organisasi constraints/compute.restrictNonConfidentialComputing. Untuk informasi selengkapnya tentang batasan kebijakan organisasi ini, lihat Menerapkan batasan kebijakan organisasi.

Organisasi Anda mewajibkan VM ini memiliki layanan Confidential VM yang aktif. VM yang tidak mengaktifkan layanan ini tidak akan menggunakan enkripsi memori runtime, sehingga membuatnya terekspos serangan memori runtime.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, klik nama instance dalam temuan.

  3. Jika VM tidak memerlukan layanan Confidential VM, pindahkan VM tersebut ke folder atau project baru.

  4. Jika VM memerlukan Confidential VM, klik Hapus.

  5. Untuk membuat instance baru dengan Confidential VM yang diaktifkan, lihat Panduan memulai: Membuat instance Confidential VM.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Org policy location restriction

Nama kategori di API: ORG_POLICY_LOCATION_RESTRICTION

Batasan gcp.resourceLocations Kebijakan Organisasi memungkinkan Anda membatasi pembuatan resource baru ke Region Cloud yang Anda pilih. Untuk mengetahui informasi selengkapnya, lihat Membatasi lokasi resource.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Detektor ORG_POLICY_LOCATION_RESTRICTION mencakup banyak jenis resource dan petunjuk penyembuhan berbeda untuk setiap resource. Pendekatan umum untuk memperbaiki pelanggaran lokasi mencakup hal berikut:

  1. Salin, pindahkan, atau cadangkan resource di luar region atau datanya ke dalam resource yang ada di dalam region. Baca dokumentasi untuk setiap layanan guna mendapatkan petunjuk tentang cara memindahkan resource.
  2. Hapus resource asli di luar wilayah atau datanya.

Pendekatan ini tidak dapat dilakukan untuk semua jenis resource. Untuk mendapatkan panduan, lihat rekomendasi yang disesuaikan yang diberikan dalam temuan.

Pertimbangan lainnya

Saat memperbaiki temuan ini, pertimbangkan hal berikut.

Resource terkelola

Siklus proses resource terkadang dikelola dan dikontrol oleh resource lainnya. Misalnya, grup instance Compute Engine terkelola membuat dan menghancurkan instance Compute Engine sesuai dengan kebijakan penskalaan otomatis grup instance. Jika resource terkelola dan mengelola berada dalam cakupan untuk penegakan lokasi, keduanya mungkin ditandai sebagai melanggar Kebijakan Organisasi. Perbaikan temuan untuk resource terkelola harus dilakukan pada resource pengelola untuk memastikan stabilitas operasional.

Resource yang sedang digunakan

Resource tertentu digunakan oleh resource lain. Misalnya, disk Compute Engine yang dilampirkan ke instance Compute Engine yang sedang berjalan dianggap sedang digunakan oleh instance tersebut. Jika resource yang sedang digunakan melanggar Kebijakan Organisasi lokasi, Anda harus memastikan bahwa resource tersebut tidak sedang digunakan sebelum mengatasi pelanggaran lokasi.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

OS login disabled

Nama kategori di API: OS_LOGIN_DISABLED

Login OS dinonaktifkan di instance Compute Engine ini.

Login OS mengaktifkan pengelolaan kunci SSH terpusat dengan IAM, dan menonaktifkan konfigurasi kunci SSH berbasis metadata di semua instance dalam project. Pelajari cara menyiapkan dan mengonfigurasi Login OS.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Metadata di konsol Google Cloud.

    Buka Metadata

  2. Klik Edit, lalu klik Add item.

  3. Tambahkan item dengan kunci enable-oslogin dan nilai TRUE.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Over privileged account

Nama kategori di API: OVER_PRIVILEGED_ACCOUNT

Node GKE menggunakan node layanan default Compute Engine, yang memiliki akses luas secara default dan mungkin memiliki hak berlebih untuk menjalankan cluster GKE Anda.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Ikuti petunjuk untuk Menggunakan akun layanan Google dengan hak istimewa terendah.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Over privileged scopes

Nama kategori di API: OVER_PRIVILEGED_SCOPES

Akun layanan node memiliki cakupan akses yang luas.

Cakupan akses adalah metode lama untuk menentukan izin untuk instance Anda. Untuk mengurangi kemungkinan eskalasi akses dalam suatu serangan, buat dan gunakan akun layanan dengan hak istimewa minimal untuk menjalankan cluster GKE Anda.

Untuk memperbaiki temuan ini, ikuti petunjuk untuk Menggunakan akun layanan Google dengan hak istimewa terendah.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Over privileged service account user

Nama kategori di API: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER

Pengguna memiliki peran iam.serviceAccountUser atau iam.serviceAccountTokenCreator di tingkat project, folder, atau organisasi, bukan untuk akun layanan tertentu.

Memberikan peran tersebut kepada pengguna untuk project, folder, atau organisasi akan memberi pengguna akses ke semua akun layanan saat ini dan mendatang dalam cakupan tersebut. Situasi ini dapat menyebabkan eskalasi hak istimewa yang tidak diinginkan. Untuk mengetahui informasi selengkapnya, lihat Izin akun layanan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka halaman IAM

  2. Jika perlu, pilih project, folder, atau organisasi dalam temuan.

  3. Untuk setiap akun utama yang ditetapkan roles/iam.serviceAccountUser atau roles/iam.serviceAccountTokenCreator, lakukan hal berikut:

    1. Klik Edit.
    2. Di panel Edit permissions, di samping peran, klik Delete.
    3. Klik Simpan.
  4. Ikuti panduan ini untuk memberi izin pengguna individu guna meniru identitas satu akun layanan. Anda harus mengikuti panduan untuk setiap akun layanan yang ingin Anda izinkan untuk ditiru identitasnya oleh pengguna pilihan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Owner not monitored

Nama kategori di API: OWNER_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau penetapan atau perubahan Kepemilikan Project.

Peran Pemilik IAM memiliki tingkat hak istimewa tertinggi pada project. Untuk mengamankan resource Anda, siapkan pemberitahuan yang akan dikirim saat pemilik baru ditambahkan atau dihapus. Untuk informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      (protoPayload.serviceName="cloudresourcemanager.googleapis.com")
      AND (ProjectOwnership OR projectOwnerInvitee)
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="REMOVE"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="ADD"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Pod security policy disabled

Nama kategori di API: POD_SECURITY_POLICY_DISABLED

PodSecurityPolicy dinonaktifkan di cluster GKE.

PodSecurityPolicy adalah resource pengontrol penerimaan yang memvalidasi permintaan untuk membuat dan mengupdate pod di cluster. Cluster tidak akan menerima pod yang tidak memenuhi kondisi yang ditentukan dalam PodSecurityPolicy.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, tentukan dan izinkan PodSecurityPolicies, dan aktifkan pengontrol PodSecurityPolicy. Untuk mengetahui petunjuknya, lihat Menggunakan PodSecurityPolicies.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Primitive roles used

Nama kategori di API: PRIMITIVE_ROLES_USED

Pengguna memiliki salah satu peran dasar IAM berikut: roles/owner, roles/editor, atau roles/viewer. Peran ini terlalu permisif dan sebaiknya tidak digunakan. Sebagai gantinya, tugas harus ditetapkan per project saja.

Untuk mengetahui informasi selengkapnya, lihat Memahami peran.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman kebijakan IAM di konsol Google Cloud.

    Buka kebijakan IAM

  2. Untuk setiap pengguna yang diberi peran primitif, sebaiknya gunakan peran yang lebih terperinci.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Private cluster disabled

Nama kategori di API: PRIVATE_CLUSTER_DISABLED

Cluster GKE memiliki cluster pribadi yang dinonaktifkan.

Cluster pribadi mengizinkan node untuk hanya memiliki alamat IP pribadi. Fitur ini membatasi akses internet keluar untuk node. Jika tidak memiliki alamat IP publik, node cluster tidak dapat ditemukan atau terekspos ke internet publik. Anda masih dapat merutekan traffic ke node menggunakan load balancer internal. Untuk mengetahui informasi selengkapnya, lihat Cluster pribadi.

Anda tidak dapat menjadikan cluster yang sudah ada bersifat pribadi. Untuk memperbaiki temuan ini, buat cluster pribadi baru:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik Create Cluster.

  3. Di menu navigasi, pada Cluster, pilih Networking.

  4. Pilih tombol pilihan untuk Cluster pribadi.

  5. Di bagian Advanced networking options, centang kotak untuk Enable VPC-native traffic routing (menggunakan IP alias).

  6. Klik Create.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Private Google access disabled

Nama kategori di API: PRIVATE_GOOGLE_ACCESS_DISABLED

Ada subnet pribadi tanpa akses ke API publik Google.

Akses Google Pribadi mengaktifkan instance VM dengan hanya alamat IP internal (pribadi) untuk menjangkau alamat IP publik dari API dan layanan Google.

Untuk informasi selengkapnya, lihat Mengonfigurasi Akses Pribadi Google.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VPC networks di konsol Google Cloud.

    Buka jaringan VPC

  2. Dalam daftar jaringan, klik nama jaringan yang diinginkan.

  3. Di halaman VPC network details, klik tab Subnets.

  4. Dalam daftar subnet, klik nama subnet yang terkait dengan cluster Kubernetes dalam temuan.

  5. Di halaman Subnet details, klik Edit.

  6. Di bagian Private Google Access, pilih On.

  7. Klik Simpan.

  8. Untuk menghapus IP publik (eksternal) dari instance VM yang traffic eksternalnya hanya ke Google API, lihat Membatalkan penetapan alamat IP eksternal statis.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public bucket ACL

Nama kategori di API: PUBLIC_BUCKET_ACL

Bucket bersifat publik dan siapa saja di internet dapat mengaksesnya.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan kontrol akses.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Browser Storage di konsol Google Cloud.

    Buka Browser Penyimpanan

  2. Pilih bucket yang tercantum dalam temuan Security Health Analytics.

  3. Di halaman Detail bucket, klik tab Izin.

  4. Di samping Lihat menurut, klik Peran.

  5. Di kotak Filter, telusuri allUsers dan allAuthenticatedUsers.

  6. Klik Hapus untuk menghapus semua izin IAM yang diberikan kepada allUsers dan allAuthenticatedUsers.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public Compute image

Nama kategori di API: PUBLIC_COMPUTE_IMAGE

Image Compute Engine bersifat publik dan siapa saja di internet dapat mengaksesnya. allUsers mewakili siapa saja di internet dan allAuthenticatedUsers mewakili siapa saja yang diautentikasi dengan Akun Google; keduanya tidak dibatasi hanya untuk pengguna dalam organisasi Anda.

Image Compute Engine mungkin berisi informasi sensitif seperti kunci enkripsi atau software berlisensi. Informasi sensitif tersebut tidak boleh dapat diakses secara publik. Jika Anda bermaksud menjadikan image Compute Engine ini publik, pastikan tidak ada informasi sensitif di dalamnya.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan kontrol akses.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman image Compute Engine di Konsol Google Cloud.

    Buka image Compute Engine

  2. Pilih kotak di samping gambar public-image, lalu klik Show Info Panel.

  3. Di kotak Filter, telusuri akun utama untuk allUsers dan allAuthenticatedUsers.

  4. Luaskan peran yang penggunanya ingin Anda hapus.

  5. Klik Hapus untuk menghapus pengguna dari peran tersebut.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public dataset

Nama kategori di API: PUBLIC_DATASET

Set data BigQuery bersifat publik dan dapat diakses oleh siapa saja di internet. Akun utama IAM allUsers mewakili siapa pun di internet dan allAuthenticatedUsers mewakili siapa pun yang login ke layanan Google. Keduanya tidak dibatasi hanya pada pengguna dalam organisasi Anda.

Untuk mengetahui informasi selengkapnya, lihat Mengontrol akses ke set data.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Explorer BigQuery di konsol Google Cloud.

    Buka Set Data BigQuery

  2. Dalam daftar set data, klik nama set data yang diidentifikasi dalam temuan. Panel Dataset info akan terbuka.

  3. Di dekat bagian atas panel Dataset info, klik SHARING.

  4. Di menu drop-down, klik Izin.

  5. Di panel Dataset Permissions, masukkan allUsers dan allAuthenticatedUsers, lalu hapus akses untuk akun utama tersebut.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public IP address

Nama kategori di API: PUBLIC_IP_ADDRESS

Instance Compute Engine memiliki alamat IP publik.

Untuk mengurangi permukaan serangan organisasi, hindari menetapkan alamat IP publik ke VM Anda. Instance yang dihentikan mungkin masih ditandai dengan temuan IP Publik, misalnya, jika antarmuka jaringan dikonfigurasi untuk menetapkan IP publik efemeral saat memulai. Pastikan konfigurasi jaringan untuk instance yang dihentikan tidak menyertakan akses eksternal.

Untuk mengetahui informasi selengkapnya, lihat Menghubungkan ke instance VM dengan aman.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Dalam daftar instance, centang kotak di samping nama instance dalam temuan.

  3. Klik Edit.

  4. Untuk setiap antarmuka di Network interfaces, klik Edit dan setel External IP ke None.

  5. Klik Selesai, lalu klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public log bucket

Nama kategori di API: PUBLIC_LOG_BUCKET

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Bucket penyimpanan bersifat publik dan digunakan sebagai sink log, yang berarti siapa saja di internet dapat mengakses log yang disimpan di bucket ini. allUsers mewakili siapa saja di internet dan allAuthenticatedUsers mewakili siapa saja yang login ke layanan Google. Keduanya tidak dibatasi hanya untuk pengguna dalam organisasi Anda.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan kontrol akses.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Browser Cloud Storage di konsol Google Cloud.

    Buka browser Cloud Storage

  2. Dalam daftar bucket, klik nama bucket yang ditunjukkan dalam penemuan.

  3. Klik tab Izin.

  4. Hapus allUsers dan allAuthenticatedUsers dari daftar akun utama.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public SQL instance

Nama kategori di API: PUBLIC_SQL_INSTANCE

Instance SQL Anda memiliki 0.0.0.0/0 sebagai jaringan yang diizinkan. Kejadian ini berarti klien IPv4 mana pun dapat melewati firewall jaringan dan melakukan upaya login ke instance Anda, termasuk klien yang mungkin tidak sengaja Anda izinkan. Klien masih memerlukan kredensial yang valid agar berhasil login ke instance Anda.

Untuk mengetahui informasi selengkapnya, lihat Memberikan otorisasi dengan jaringan yang diotorisasi.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di panel navigasi, klik Koneksi.

  5. Di bagian Authorized networks, hapus 0.0.0.0/0 dan tambahkan alamat IP atau rentang IP tertentu yang ingin Anda izinkan untuk terhubung ke instance Anda.

  6. Klik Selesai, lalu klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Pubsub CMEK disabled

Nama kategori di API: PUBSUB_CMEK_DISABLED

Topik Pub/Sub tidak dienkripsi dengan kunci enkripsi yang dikelola pelanggan (CMEK).

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol terhadap akses ke data Anda.

Untuk memperbaiki temuan ini, hapus topik yang ada dan buat topik baru:

  1. Buka halaman Topics Pub/Sub di konsol Google Cloud.

    Buka Topik

  2. Jika perlu, pilih project yang berisi topik Pub/Sub.

  3. Centang kotak di samping topik yang tercantum dalam temuan, lalu klik Hapus.

  4. Untuk membuat topik Pub/Sub baru dengan CMEK yang diaktifkan, lihat Menggunakan kunci enkripsi yang dikelola pelanggan. CMEK dikenai biaya tambahan terkait Cloud KMS.

  5. Publikasikan temuan atau data lainnya ke topik Pub/Sub yang mengaktifkan CMEK.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Route not monitored

Nama kategori di API: ROUTE_NOT_MONITORED

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan rute jaringan VPC.

Rute Google Cloud adalah tujuan dan hop yang menentukan jalur yang dilalui traffic jaringan dari instance VM ke IP tujuan. Dengan memantau perubahan pada tabel rute, Anda dapat membantu memastikan bahwa semua traffic VPC mengalir melalui jalur yang diharapkan.

Untuk informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      resource.type="gce_route"
      AND (protoPayload.methodName:"compute.routes.delete"
      OR protoPayload.methodName:"compute.routes.insert")

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Redis role used on org

Nama kategori di API: REDIS_ROLE_USED_ON_ORG

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Peran IAM Redis ditetapkan di tingkat organisasi atau folder.

Peran IAM Redis berikut hanya boleh ditetapkan per project, bukan di level organisasi atau folder:

  • roles/redis.admin
  • roles/redis.viewer
  • roles/redis.editor

Untuk mengetahui informasi selengkapnya, lihat Kontrol akses dan izin.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman kebijakan IAM di konsol Google Cloud.

    Buka kebijakan IAM

  2. Hapus peran Redis IAM yang ditunjukkan dalam temuan dan tambahkan di masing-masing project.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Release channel disabled

Nama kategori di API: RELEASE_CHANNEL_DISABLED

Cluster GKE tidak berlangganan saluran rilis.

Berlangganan saluran rilis untuk mengotomatiskan upgrade versi ke cluster GKE. Fitur ini juga mengurangi kompleksitas manajemen versi terhadap jumlah fitur dan tingkat stabilitas yang diperlukan. Untuk informasi selengkapnya, lihat Saluran rilis.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Di bagian Cluster basics, klik Upgrade cluster master version di baris Release channel.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  3. Dalam dialog, pilih Release channel, lalu pilih saluran rilis yang ingin Anda langgani.

    Jika versi bidang kontrol cluster Anda tidak dapat diupgrade ke saluran rilis, saluran tersebut mungkin dinonaktifkan sebagai opsi.

  4. Klik Simpan Perubahan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

RSASHA1 for signing

Nama kategori di API: RSASHA1_FOR_SIGNING

RSASHA1 digunakan untuk penandatanganan kunci di zona Cloud DNS. Algoritma yang digunakan untuk penandatanganan kunci tidak boleh lemah.

Untuk memperbaiki temuan ini, ganti algoritma dengan algoritma yang direkomendasikan dengan mengikuti panduan Menggunakan opsi penandatanganan lanjutan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Service account key not rotated

Nama kategori di API: SERVICE_ACCOUNT_KEY_NOT_ROTATED

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Kunci akun layanan yang dikelola pengguna belum dirotasi selama lebih dari 90 hari.

Secara umum, kunci akun layanan yang dikelola oleh pengguna harus dirotasi setidaknya setiap 90 hari, untuk memastikan data tidak dapat diakses dengan kunci lama yang mungkin telah hilang, disusupi, atau dicuri. Untuk mengetahui informasi selengkapnya, lihat Merotasikan kunci akun layanan untuk mengurangi risiko keamanan yang disebabkan oleh kebocoran kunci.

Jika Anda membuat pasangan kunci publik/pribadi sendiri, menyimpan kunci pribadi dalam modul keamanan hardware (HSM), dan mengupload kunci publik ke Google, Anda mungkin tidak perlu merotasi kunci setiap 90 hari. Sebagai gantinya, Anda dapat merotasi kunci jika yakin bahwa kunci mungkin telah disusupi.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Akun Layanan di konsol Google Cloud.

    Buka Akun Layanan

  2. Jika perlu, pilih project yang ditunjukkan dalam temuan.

  3. Di daftar akun layanan, temukan akun layanan yang tercantum dalam penemuan, lalu klik Hapus. Sebelum melanjutkan, pertimbangkan dampak penghapusan akun layanan terhadap resource produksi Anda.

  4. Buat kunci akun layanan baru untuk menggantikan kunci lama. Untuk mengetahui informasi selengkapnya, lihat Membuat kunci akun layanan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Service account role separation

Nama kategori di API: SERVICE_ACCOUNT_ROLE_SEPARATION

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Satu atau beberapa akun utama di organisasi Anda memiliki beberapa izin akun layanan yang ditetapkan. Tidak ada akun yang secara bersamaan memiliki Admin Akun Layanan beserta izin akun layanan lainnya. Untuk mempelajari akun layanan dan peran yang tersedia untuknya, lihat Akun layanan.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman IAM di Konsol Google Cloud.

    Buka IAM

  2. Untuk setiap akun utama yang tercantum dalam temuan, lakukan hal berikut:

    1. Periksa apakah peran diwariskan dari folder atau resource organisasi dengan melihat kolom Inheritance. Jika kolom berisi link ke resource induk, klik link untuk membuka halaman IAM resource induk.
    2. Klik Edit di samping akun utama.
    3. Untuk menghapus izin, klik Hapus di samping Admin Akun Layanan. Jika Anda ingin menghapus semua izin akun layanan, klik Hapus di samping semua izin lainnya.
  3. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Shielded VM disabled

Nama kategori di API: SHIELDED_VM_DISABLED

Shielded VM dinonaktifkan di instance Compute Engine ini.

Shielded VM adalah virtual machine (VM) di Google Cloud yang telah melalui proses hardening oleh serangkaian kontrol keamanan yang membantu memberikan pertahanan dari rootkit dan bootkit. Shielded VM membantu memastikan bahwa bootloader dan firmware ditandatangani dan diverifikasi. Pelajari Shielded VM lebih lanjut.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman VM Instances di Konsol Google Cloud.

    Buka instance VM

  2. Pilih instance yang terkait dengan temuan Security Health Analytics.

  3. Di halaman Instance details yang dimuat, klik Stop.

  4. Setelah instance dihentikan, klik Edit.

  5. Di bagian Shielded VM, alihkan tombol Turn on vTPM dan Turn on Integrity Monitoring untuk mengaktifkan Shielded VM.

  6. Anda juga memiliki opsi untuk mengaktifkan Secure Boot jika tidak menggunakan driver kustom atau driver yang tidak ditandatangani.

  7. Klik Simpan. Konfigurasi baru akan muncul di halaman Detail instance.

  8. Klik Mulai untuk memulai instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL CMEK disabled

Nama kategori di API: SQL_CMEK_DISABLED

Instance database SQL tidak menggunakan kunci enkripsi yang dikelola pelanggan (CMEK).

Dengan CMEK, kunci yang Anda buat dan kelola di Cloud KMS menggabungkan kunci yang digunakan Google untuk mengenkripsi data Anda, sehingga Anda memiliki lebih banyak kontrol terhadap akses ke data Anda. Untuk mengetahui informasi selengkapnya, lihat ringkasan CMEK untuk produk Anda: Cloud SQL untuk MySQL, Cloud SQL untuk PostgreSQL, atau Cloud SQL untuk SQL Server. CMEK dikenai biaya tambahan yang terkait dengan Cloud KMS.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Delete.

  4. Untuk membuat instance baru dengan CMEK yang diaktifkan, ikuti petunjuk untuk mengonfigurasi CMEK untuk produk Anda:

    1. Cloud SQL untuk MySQL
    2. Cloud SQL untuk PostgreSQL
    3. Cloud SQL untuk SQL Server

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL contained database authentication

Nama kategori di API: SQL_CONTAINED_DATABASE_AUTHENTICATION

Instance database Cloud SQL untuk SQL Server tidak memiliki flag database contained database authentication yang disetel ke Nonaktif.

Flag contained database authentication mengontrol apakah Anda dapat membuat atau memasang database yang dimuat ke Mesin Database. Database yang dimuat mencakup semua setelan dan metadata database yang diperlukan untuk menentukan database serta tidak memiliki dependensi konfigurasi pada instance Mesin Database tempat database diinstal.

Mengaktifkan flag ini tidak direkomendasikan karena hal berikut:

  • Pengguna dapat terhubung ke database tanpa autentikasi di tingkat Mesin Database.
  • Memisahkan database dari Mesin Database memungkinkan pemindahan database ke instance SQL Server lain.

Database yang dimuat menghadapi ancaman unik yang sebaiknya dipahami dan dimitigasi oleh administrator Mesin Database SQL Server. Sebagian besar ancaman disebabkan oleh proses autentikasi USER WITH PASSWORD, yang memindahkan batas autentikasi dari tingkat Database Engine ke tingkat database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database contained database authentication dengan nilai Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL cross DB ownership chaining

Nama kategori di API: SQL_CROSS_DB_OWNERSHIP_CHAINING

Instance database Cloud SQL untuk SQL Server tidak memiliki flag database cross db ownership chaining yang disetel ke Nonaktif.

Flag cross db ownership chaining memungkinkan Anda mengontrol penggabungan kepemilikan database silang di tingkat database atau mengizinkan penggabungan kepemilikan database silang untuk semua pernyataan database.

Mengaktifkan flag ini tidak direkomendasikan kecuali jika semua database yang dihosting oleh instance SQL Server ikut dalam penggabungan kepemilikan database silang, dan Anda mengetahui implikasi keamanan dari setelan ini.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database cross db ownership chaining dengan nilai Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL external scripts enabled

Nama kategori di API: SQL_EXTERNAL_SCRIPTS_ENABLED

Instance database Cloud SQL untuk SQL Server tidak memiliki flag database external scripts enabled yang disetel ke Nonaktif.

Jika diaktifkan, setelan ini mengaktifkan eksekusi skrip dengan ekstensi bahasa jarak jauh tertentu. Karena fitur ini dapat berdampak buruk terhadap keamanan sistem, sebaiknya nonaktifkan fitur ini.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database external scripts enabled dengan nilai Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL instance not monitored

Nama kategori di API: SQL_INSTANCE_NOT_MONITORED

Temuan ini tidak tersedia untuk aktivasi tingkat project.

Metrik dan pemberitahuan log tidak dikonfigurasi untuk memantau perubahan konfigurasi instance Cloud SQL.

Kesalahan konfigurasi opsi instance SQL dapat menyebabkan risiko keamanan. Menonaktifkan opsi pencadangan otomatis dan ketersediaan tinggi dapat memengaruhi kelangsungan bisnis dan tidak membatasi jaringan yang diizinkan dapat meningkatkan eksposur ke jaringan tidak tepercaya. Memantau perubahan pada konfigurasi instance SQL membantu Anda mengurangi waktu yang diperlukan untuk mendeteksi dan memperbaiki kesalahan konfigurasi.

Untuk informasi selengkapnya, lihat Ringkasan metrik berbasis log.

Bergantung pada jumlah informasi, biaya Cloud Monitoring dapat menjadi signifikan. Untuk memahami penggunaan layanan dan biayanya, lihat Harga Google Cloud Observability.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Membuat metrik

  1. Buka halaman Logs-based Metrics di Konsol Google Cloud.

    Buka Metrik Berbasis Log

  2. Klik Buat Metrik.

  3. Di bagian Metric Type, pilih Counter.

  4. Di bagian Details:

    1. Setel Log metric name.
    2. Tambahkan deskripsi.
    3. Setel Units ke 1.
  5. Di bagian Filter selection, salin dan tempel teks berikut ke dalam kotak Build filter, yang menggantikan teks yang ada, jika diperlukan:

      protoPayload.methodName="cloudsql.instances.update"
      OR protoPayload.methodName="cloudsql.instances.create"
      OR protoPayload.methodName="cloudsql.instances.delete"

  6. Klik Buat Metrik. Anda akan melihat konfirmasi.

Buat Kebijakan Pemberitahuan

  1. Di konsol Google Cloud, buka halaman Log-based Metrics:

    Buka Metrik Berbasis Log

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Logging.

  2. Di bagian Metrik yang ditentukan pengguna, pilih metrik yang Anda buat di bagian sebelumnya.
  3. Klik Lainnya , lalu klik Buat pemberitahuan dari metrik.

    Dialog New condition akan terbuka dengan opsi metrik dan transformasi data yang telah diisi otomatis.

  4. Klik Berikutnya.
    1. Tinjau setelan yang telah diisi otomatis. Anda mungkin ingin mengubah Nilai minimum.
    2. Klik Nama kondisi, lalu masukkan nama untuk kondisi.
  5. Klik Berikutnya.
  6. Untuk menambahkan notifikasi ke kebijakan pemberitahuan, klik Notification channels. Dalam dialog ini, pilih satu atau beberapa saluran notifikasi dari menu, lalu klik OK.

    Untuk menerima notifikasi saat insiden dibuka dan ditutup, centang Notify on incident closure. Secara default, notifikasi hanya dikirim saat insiden dibuka.

  7. Opsional: Perbarui Incident autoclose duration. Kolom ini menentukan kapan Monitoring akan menutup insiden jika data metrik tidak ada.
  8. Opsional: Klik Documentation, lalu tambahkan informasi apa pun yang ingin Anda sertakan dalam pesan notifikasi.
  9. Klik Alert name dan masukkan nama untuk kebijakan pemberitahuan itu.
  10. Klik Create Policy.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL local infile

Nama kategori di API: SQL_LOCAL_INFILE

Instance database Cloud SQL untuk MySQL tidak memiliki flag database local_infile yang disetel ke Nonaktif. Karena masalah keamanan yang terkait dengan flag local_infile, flag ini harus dinonaktifkan. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database local_infile dengan nilai Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log checkpoints disabled

Nama kategori di API: SQL_LOG_CHECKPOINTS_DISABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_checkpoints yang disetel ke Aktif.

Mengaktifkan log_checkpoints menyebabkan checkpoint dan titik mulai ulang dicatat dalam log server. Beberapa statistik disertakan dalam pesan log, termasuk jumlah buffering yang ditulis dan waktu yang diperlukan untuk menulisnya.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_checkpoints dengan nilai On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log connections disabled

Nama kategori di API: SQL_LOG_CONNECTIONS_DISABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_connections yang disetel ke Aktif.

Mengaktifkan setelan log_connections menyebabkan upaya koneksi ke server akan dicatat ke dalam log, beserta keberhasilan penyelesaian autentikasi klien. Log dapat berguna dalam memecahkan masalah dan mengonfirmasi upaya koneksi yang tidak biasa ke server.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_connections dengan nilai On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log disconnections disabled

Nama kategori di API: SQL_LOG_DISCONNECTIONS_DISABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_disconnections yang disetel ke Aktif.

Mengaktifkan setelan log_disconnections akan membuat entri log di akhir setiap sesi. Log berguna untuk memecahkan masalah dan mengonfirmasi aktivitas yang tidak biasa selama jangka waktu tertentu. Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_disconnections dengan nilai On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log duration disabled

Nama kategori di API: SQL_LOG_DURATION_DISABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_duration yang disetel ke Aktif.

Jika log_duration diaktifkan, setelan ini akan menyebabkan waktu eksekusi dan durasi setiap pernyataan selesai dicatat ke dalam log. Memantau jumlah waktu yang diperlukan untuk menjalankan kueri dapat sangat penting dalam mengidentifikasi kueri yang lambat dan memecahkan masalah database.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_duration ke On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log error verbosity

Nama kategori di API: SQL_LOG_ERROR_VERBOSITY

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_error_verbosity yang disetel ke default atau verbose.

Flag log_error_verbosity mengontrol jumlah detail dalam pesan yang dicatat ke dalam log. Makin panjang informasi, makin banyak detail yang tercatat dalam pesan. Sebaiknya tetapkan flag ini ke default atau verbose.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_error_verbosity ke default atau verbose.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log lock waits disabled

Nama kategori di API: SQL_LOG_LOCK_WAITS_DISABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_lock_waits yang disetel ke Aktif.

Mengaktifkan setelan log_lock_waits akan membuat entri log saat waktu tunggu sesi lebih lama dibandingkan waktu deadlock_timeout untuk mendapatkan kunci. Log ini berguna untuk menentukan apakah waktu tunggu kunci menyebabkan performa yang buruk.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_lock_waits dengan nilai On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log min duration statement enabled

Nama kategori di API: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_min_duration_statement yang disetel ke -1.

Flag log_min_duration_statement menyebabkan pernyataan SQL yang berjalan lebih lama dari waktu yang ditentukan akan dicatat ke dalam log. Pertimbangkan untuk menonaktifkan setelan ini karena pernyataan SQL mungkin berisi informasi sensitif yang tidak seharusnya dicatat ke dalam log. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_min_duration_statement dengan nilai -1.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log min error statement

Nama kategori di API: SQL_LOG_MIN_ERROR_STATEMENT

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_min_error_statement yang disetel dengan benar.

Flag log_min_error_statement mengontrol apakah pernyataan SQL yang menyebabkan kondisi error dicatat dalam log server. Pernyataan SQL dari tingkat keparahan yang ditentukan atau yang lebih tinggi dicatat ke dalam log dengan pesan untuk pernyataan error. Makin tinggi tingkat keparahan, makin sedikit pesan yang dicatat.

Jika log_min_error_statement tidak disetel ke nilai yang benar, pesan mungkin tidak diklasifikasikan sebagai pesan error. Tingkat keparahan yang disetel terlalu rendah dapat meningkatkan jumlah pesan dan mempersulit pencarian error sebenarnya. Tingkat keparahan yang disetel terlalu tinggi dapat menyebabkan pesan error untuk error sebenarnya tidak dicatat ke dalam log.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_min_error_statement dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log min error statement severity

Nama kategori di API: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_min_error_statement yang disetel dengan benar.

Flag log_min_error_statement mengontrol apakah pernyataan SQL yang menyebabkan kondisi error dicatat dalam log server. Pernyataan SQL dengan tingkat keparahan yang ditentukan atau lebih ketat dicatat ke dalam log dengan pesan untuk pernyataan error. Makin ketat tingkat keparahannya, makin sedikit pesan yang dicatat.

Jika log_min_error_statement tidak disetel ke nilai yang benar, pesan mungkin tidak diklasifikasikan sebagai pesan error. Tingkat keparahan yang disetel terlalu rendah akan meningkatkan jumlah pesan dan mempersulit pencarian error sebenarnya. Tingkat keparahan yang terlalu tinggi (terlalu ketat) dapat menyebabkan pesan error untuk error sebenarnya tidak dicatat ke dalam log.

Sebaiknya tetapkan flag ini ke error atau lebih ketat.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_min_error_statement dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • error
    • log
    • fatal
    • panic
  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log min messages

Nama kategori di API: SQL_LOG_MIN_MESSAGES

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_min_messages yang disetel ke minimal warning.

Flag log_min_messages mengontrol tingkat pesan mana yang dicatat dalam log server. Makin tinggi tingkat keparahan, makin sedikit pesan yang dicatat. Menyetel nilai minimum terlalu rendah dapat menyebabkan peningkatan ukuran dan panjang penyimpanan log, sehingga menyulitkan Anda untuk menemukan error sebenarnya.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_min_messages dengan salah satu nilai rekomendasi berikut, sesuai dengan kebijakan logging organisasi Anda.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log executor stats enabled

Nama kategori di API: SQL_LOG_EXECUTOR_STATS_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_executor_stats yang disetel ke Nonaktif.

Jika flag log_executor_stats diaktifkan, statistik performa eksekutor akan disertakan dalam log PostgreSQL untuk setiap kueri. Setelan ini dapat berguna untuk memecahkan masalah, tetapi dapat meningkatkan jumlah log dan overhead performa secara signifikan.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_executor_stats ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log hostname enabled

Nama kategori di API: `SQL_LOG_HOSTNAME_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_hostname yang disetel ke Nonaktif.

Jika flag log_hostname diaktifkan, nama host host yang terhubung akan dicatat ke dalam log. Secara default, pesan log koneksi hanya menampilkan alamat IP. Setelan ini dapat berguna untuk memecahkan masalah. Namun, setelan ini dapat menimbulkan overhead pada performa server karena untuk setiap pernyataan yang dicatat ke dalam log, resolusi DNS diperlukan untuk mengonversi alamat IP ke nama host.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_hostname ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log parser stats enabled

Nama kategori di API: SQL_LOG_PARSER_STATS_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_parser_stats yang disetel ke Nonaktif.

Jika flag log_parser_stats diaktifkan, statistik performa parser akan disertakan dalam log PostgreSQL untuk setiap kueri. Hal ini dapat berguna untuk memecahkan masalah, tetapi dapat meningkatkan jumlah log dan beban performa secara signifikan.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_parser_stats ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log planner stats enabled

Nama kategori di API: SQL_LOG_PLANNER_STATS_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_planner_stats yang disetel ke Nonaktif.

Jika flag log_planner_stats diaktifkan, metode pembuatan profil sederhana untuk mencatat log statistik performa perencana PostgreSQL akan digunakan. Hal ini dapat berguna untuk memecahkan masalah, tetapi dapat meningkatkan jumlah log dan beban performa secara signifikan.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_planner_stats ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log statement

Nama kategori di API: SQL_LOG_STATEMENT

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_statement yang disetel ke ddl.

Nilai flag ini mengontrol pernyataan SQL mana yang akan dicatat ke dalam log. Logging membantu memecahkan masalah operasional dan mengizinkan analisis forensik. Jika tanda ini tidak disetel ke nilai yang benar, informasi yang relevan mungkin dilewati atau disembunyikan di banyak pesan. Nilai ddl (semua pernyataan definisi data) direkomendasikan kecuali jika diatur oleh kebijakan logging organisasi Anda.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_statement ke ddl.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log statement stats enabled

Nama kategori di API: SQL_LOG_STATEMENT_STATS_ENABLED

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_statement_stats yang disetel ke Nonaktif.

Jika flag log_statement_stats diaktifkan, statistik performa keseluruhan akan disertakan dalam log PostgreSQL untuk setiap kueri. Setelan ini dapat berguna untuk memecahkan masalah, tetapi dapat meningkatkan jumlah log dan overhead performa secara signifikan.

Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_statement_stats ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL log temp files

Nama kategori di API: SQL_LOG_TEMP_FILES

Instance database Cloud SQL untuk PostgreSQL tidak memiliki flag database log_temp_files yang ditetapkan ke 0.

File sementara dapat dibuat untuk urutan, hash, dan hasil kueri sementara. Menyetel flag log_temp_files ke 0 menyebabkan semua informasi file sementara dicatat ke dalam log. Mencatat log semua file sementara berguna untuk mengidentifikasi potensi masalah performa. Untuk informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel flag database log_temp_files dengan nilai 0.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL no root password

Nama kategori di API: SQL_NO_ROOT_PASSWORD

Instance database MySQL tidak memiliki sandi yang ditetapkan untuk akun root. Anda harus menambahkan sandi ke instance database MySQL. Untuk mengetahui informasi selengkapnya, lihat Pengguna MySQL.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Di halaman Instance details yang dimuat, pilih tab Users.

  4. Di samping pengguna root, klik Lainnya , lalu pilih Ubah Sandi.

  5. Masukkan kata sandi baru yang kuat, lalu klik OK.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL public IP

Nama kategori di API: SQL_PUBLIC_IP

Database Cloud SQL memiliki alamat IP publik.

Untuk mengurangi area serangan organisasi Anda, database Cloud SQL tidak boleh memiliki alamat IP publik. Alamat IP pribadi memberikan keamanan jaringan yang lebih baik dan latensi yang lebih rendah untuk aplikasi Anda.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Di menu sebelah kiri, klik Koneksi.

  4. Klik tab Networking dan hapus centang pada kotak Public IP.

  5. Jika instance belum dikonfigurasi untuk menggunakan IP pribadi, lihat Mengonfigurasi IP pribadi untuk instance yang ada.

  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL remote access enabled

Nama kategori di API: SQL_REMOTE_ACCESS_ENABLED

Instance database Cloud SQL untuk SQL Server tidak memiliki flag database remote access yang disetel ke Nonaktif.

Jika diaktifkan, setelan ini memberikan izin untuk menjalankan prosedur tersimpan lokal dari server jarak jauh atau prosedur tersimpan jarak jauh dari server lokal. Fungsi ini dapat disalahgunakan untuk meluncurkan serangan Denial-of-Service (DoS) pada server jarak jauh dengan men-offload pemrosesan kueri ke target. Untuk mencegah penyalahgunaan, sebaiknya nonaktifkan setelan ini.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Flags, setel remote access ke Off.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL skip show database disabled

Nama kategori di API: SQL_SKIP_SHOW_DATABASE_DISABLED

Instance database Cloud SQL untuk MySQL tidak memiliki flag database skip_show_database yang disetel ke Aktif.

Jika diaktifkan, tanda ini mencegah pengguna menggunakan pernyataan SHOW DATABASES jika mereka tidak memiliki hak istimewa SHOW DATABASES. Dengan setelan ini, pengguna yang tidak memiliki izin eksplisit tidak dapat melihat database milik pengguna lain. Sebaiknya aktifkan tanda ini.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Flags, setel skip_show_database ke On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL trace flag 3625

Nama kategori di API: SQL_TRACE_FLAG_3625

Instance database Cloud SQL untuk SQL Server tidak memiliki flag database 3625 (trace flag) yang disetel ke On.

Flag ini membatasi jumlah informasi yang ditampilkan kepada pengguna yang bukan anggota peran server tetap sysadmin, dengan menyamarkan parameter beberapa pesan error menggunakan tanda bintang (******). Untuk membantu mencegah pengungkapan informasi sensitif, sebaiknya aktifkan flag ini.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, setel 3625 ke On.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL user connections configured

Nama kategori di API: SQL_USER_CONNECTIONS_CONFIGURED

Instance database Cloud SQL untuk SQL Server memiliki flag database user connections yang dikonfigurasi.

Opsi user connections menentukan jumlah maksimum koneksi pengguna serentak yang diizinkan di instance SQL Server. Karena merupakan opsi dinamis (konfigurasi mandiri), SQL Server menyesuaikan jumlah maksimum koneksi pengguna secara otomatis sesuai kebutuhan, hingga nilai maksimum yang diizinkan. Nilai defaultnya adalah 0, yang berarti maksimal 32.767 koneksi pengguna diizinkan. Karena alasan ini, sebaiknya jangan mengonfigurasi flag database user connections.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, di samping user connections, klik Delete.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL user options configured

Nama kategori di API: SQL_USER_OPTIONS_CONFIGURED

Instance database Cloud SQL untuk SQL Server memiliki flag database user options yang dikonfigurasi.

Setelan ini mengganti nilai default global opsi SET untuk semua pengguna. Karena pengguna dan aplikasi mungkin menganggap opsi SET database default sedang digunakan, menetapkan opsi pengguna dapat menyebabkan hasil yang tidak terduga. Karena alasan ini, sebaiknya jangan konfigurasikan flag database user options.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi flag database.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

  4. Di bagian Database flags, di samping user options, klik Delete.

  5. Klik Simpan. Konfigurasi baru akan muncul di halaman Ringkasan instance.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SQL weak root password

Nama kategori di API: SQL_WEAK_ROOT_PASSWORD

Instance database MySQL memiliki sandi lemah yang ditetapkan untuk akun root. Anda harus menetapkan sandi yang kuat untuk instance. Untuk mengetahui informasi selengkapnya, lihat pengguna MySQL.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Di halaman Instance details yang dimuat, pilih tab Users.

  4. Di samping pengguna root, klik Lainnya , lalu pilih Ubah Sandi.

  5. Masukkan kata sandi baru yang kuat, lalu klik OK.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

SSL not enforced

Nama kategori di API: SSL_NOT_ENFORCED

Instance database Cloud SQL tidak mewajibkan semua koneksi masuk untuk menggunakan SSL.

Untuk menghindari kebocoran data sensitif yang dikirim melalui komunikasi yang tidak terenkripsi, semua koneksi masuk ke instance database SQL Anda harus menggunakan SSL. Pelajari lebih lanjut cara Mengonfigurasi SSL/TLS.

Untuk memperbaiki temuan ini, hanya izinkan koneksi SSL untuk instance SQL Anda:

  1. Buka halaman Instance Cloud SQL di konsol Google Cloud.

    Buka Instance Cloud SQL

  2. Pilih instance yang tercantum dalam temuan Security Health Analytics.

  3. Di tab Connections, klik Allow only SSL connections atau Require trusted client certificates. Untuk informasi selengkapnya, lihat Menerapkan enkripsi SSL/TLS.

  4. Jika Anda memilih Require trusted client certificates, buat sertifikat klien baru. Untuk mengetahui informasi selengkapnya, lihat Membuat sertifikat klien baru.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Too many KMS users

Nama kategori di API: TOO_MANY_KMS_USERS

Batasi jumlah pengguna utama yang dapat menggunakan kunci kriptografis menjadi tiga. Peran berikut yang ditetapkan sebelumnya memberikan izin untuk mengenkripsi, mendekripsi, atau menandatangani data menggunakan kunci kriptografis:

  • roles/owner
  • roles/cloudkms.cryptoKeyEncrypterDecrypter
  • roles/cloudkms.cryptoKeyEncrypter
  • roles/cloudkms.cryptoKeyDecrypter
  • roles/cloudkms.signer
  • roles/cloudkms.signerVerifier

Untuk mengetahui informasi selengkapnya, lihat Izin dan peran.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Kunci Cloud KMS di konsol Google Cloud.

    Buka Kunci Cloud KMS

  2. Klik nama key ring yang ditunjukkan dalam temuan.

  3. Klik nama kunci yang ditunjukkan dalam temuan.

  4. Centang kotak di samping versi utama, lalu klik Tampilkan Panel Info.

  5. Kurangi jumlah akun utama yang memiliki izin untuk mengenkripsi, mendekripsi, atau menandatangani data menjadi tiga atau kurang. Untuk mencabut izin, klik Hapus di samping setiap akun utama.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Unconfirmed AppArmor profile

Nama kategori di API: GKE_APP_ARMOR

Container dapat dikonfigurasi secara eksplisit agar tidak dibatasi oleh AppArmor. Hal ini memastikan tidak ada profil AppArmor yang diterapkan ke penampung sehingga tidak dibatasi oleh profil. Kontrol keamanan preventif yang dinonaktifkan akan meningkatkan risiko container escape.

Untuk memperbaiki temuan ini, terapkan langkah-langkah berikut ke workload yang terpengaruh:

  1. Buka manifes untuk setiap beban kerja yang terpengaruh.
  2. Tetapkan kolom yang dibatasi berikut ke salah satu nilai yang diizinkan.

Kolom yang dibatasi

  • metadata.annotations["container.apparmor.security.beta.kubernetes.io/*"]

Nilai yang diizinkan

  • false

User managed service account key

Nama kategori di API: USER_MANAGED_SERVICE_ACCOUNT_KEY

Pengguna mengelola kunci akun layanan. Kunci akun layanan akan berisiko keamanan jika tidak dikelola dengan benar. Anda harus memilih alternatif yang lebih aman untuk kunci akun layanan jika memungkinkan. Jika harus mengautentikasi dengan kunci akun layanan, Anda bertanggung jawab atas keamanan kunci pribadi dan atas operasi lainnya yang dijelaskan oleh Praktik terbaik untuk mengelola kunci akun layanan. Jika Anda tidak dapat membuat kunci akun layanan, pembuatan kunci akun layanan mungkin dinonaktifkan untuk organisasi Anda. Untuk mengetahui informasi selengkapnya, lihat Mengelola resource organisasi yang aman secara default.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

  1. Buka halaman Akun Layanan di konsol Google Cloud.

    Buka Akun Layanan

  2. Jika perlu, pilih project yang ditunjukkan dalam temuan.

  3. Hapus kunci akun layanan yang dikelola pengguna yang ditunjukkan dalam temuan, jika kunci tersebut tidak digunakan oleh aplikasi apa pun.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Weak SSL policy

Nama kategori di API: WEAK_SSL_POLICY

Instance Compute Engine memiliki kebijakan SSL yang lemah atau menggunakan kebijakan SSL default Google Cloud dengan versi TLS kurang dari 1.2.

Load balancer Proxy HTTPS dan SSL menggunakan kebijakan SSL untuk menentukan protokol dan cipher suite yang digunakan dalam koneksi TLS yang dibuat antara pengguna dan internet. Koneksi ini mengenkripsi data sensitif agar penyadap yang berbahaya tidak dapat mengaksesnya. Jika kebijakan SSL lemah, klien yang menggunakan TLS versi usang akan dapat terhubung ke cipher suite atau protokol yang kurang aman. Untuk mengetahui daftar cipher suite yang direkomendasikan dan sudah usang, buka halaman parameter TLS iana.org.

Untuk aktivasi level project pada paket Premium Security Command Center, temuan ini hanya tersedia jika paket Standar diaktifkan di organisasi induk.

Langkah-langkah perbaikan untuk temuan ini berbeda-beda, bergantung pada apakah temuan ini dipicu oleh penggunaan kebijakan SSL Google Cloud default atau kebijakan SSL yang mengizinkan cipher suite yang lemah atau versi TLS minimum di bawah 1.2. Ikuti prosedur di bawah yang sesuai dengan pemicu temuan.

Perbaikan kebijakan SSL Google Cloud default

  1. Buka halaman Target proxy di konsol Google Cloud.

    Buka Proxy target

  2. Temukan proxy target yang ditunjukkan dalam temuan dan catat aturan penerusan di kolom Sedang digunakan oleh.

  3. Untuk membuat kebijakan SSL baru, lihat Menggunakan kebijakan SSL. Kebijakan harus memiliki Minimum TLS version 1.2 dan Profile Modern atau Terbatas.

  4. Untuk menggunakan profil Kustom , pastikan cipher suite berikut dinonaktifkan:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  5. Terapkan kebijakan SSL ke setiap aturan penerusan yang sebelumnya Anda catat.

Perbaikan yang diizinkan untuk cipher suite yang lemah atau versi TLS yang lebih lama

  1. Di konsol Google Cloud, buka halaman SSL policies .

    Buka kebijakan SSL

  2. Temukan load balancer yang ditunjukkan di kolom Sedang digunakan oleh.

  3. Klik di bawah nama kebijakan.

  4. Klik Edit.

  5. Ubah Minimum TLS version ke TLS 1.2 dan Profile ke Modern atau Restricted.

  6. Untuk menggunakan profil Kustom, pastikan cipher suite berikut dinonaktifkan:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  7. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Web UI enabled

Nama kategori di API: WEB_UI_ENABLED

UI web (dasbor) GKE diaktifkan.

Akun Layanan Kubernetes dengan hak istimewa tinggi mendukung antarmuka web Kubernetes. Jika disusupi, akun layanan dapat disalahgunakan. Jika Anda sudah menggunakan konsol Google Cloud, antarmuka web Kubernetes akan memperluas permukaan serangan Anda secara tidak perlu. Pelajari cara Menonaktifkan antarmuka web Kubernetes.

Untuk memperbaiki temuan ini, nonaktifkan antarmuka web Kubernetes:

  1. Buka halaman Kubernetes clusters di konsol Google Cloud.

    Buka cluster Kubernetes

  2. Klik nama cluster yang tercantum dalam temuan Security Health Analytics.

  3. Klik Edit.

    Jika konfigurasi cluster baru-baru ini diubah, tombol edit mungkin dinonaktifkan. Jika Anda tidak dapat mengedit setelan cluster, tunggu beberapa menit, lalu coba lagi.

  4. Klik Add-on. Bagian ini akan meluas untuk menampilkan add-on yang tersedia.

  5. Di menu drop-down Dasbor Kubernetes, pilih Nonaktif.

  6. Klik Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Workload Identity disabled

Nama kategori di API: WORKLOAD_IDENTITY_DISABLED

Workload Identity dinonaktifkan di cluster GKE.

Workload Identity adalah cara yang direkomendasikan untuk mengakses layanan Google Cloud dari dalam GKE karena menawarkan properti keamanan dan pengelolaan yang lebih baik. Mengaktifkannya akan melindungi beberapa metadata sistem yang berpotensi sensitif dari workload pengguna yang berjalan di cluster Anda. Pelajari Penyembunyian metadata.

Untuk memperbaiki temuan ini, ikuti panduan untuk Mengaktifkan Workload Identity di cluster.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Memperbaiki kesalahan konfigurasi AWS

AWS Cloud Shell Full Access Restricted

Nama kategori di API: ACCESS_AWSCLOUDSHELLFULLACCESS_RESTRICTED

AWS CloudShell adalah cara mudah untuk menjalankan perintah CLI terhadap layanan AWS; kebijakan IAM terkelola ('AWSCloudShellFullAccess') memberikan akses penuh ke CloudShell, yang memungkinkan kemampuan upload dan download file antara sistem lokal pengguna dan lingkungan CloudShell. Dalam lingkungan CloudShell, pengguna memiliki izin sudo, dan dapat mengakses internet. Jadi, Anda dapat menginstal software transfer file (misalnya) dan memindahkan data dari CloudShell ke server internet eksternal.

Rekomendasi: Pastikan akses ke AWSCloudShellFullAccess dibatasi

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Buka konsol IAM di https://console.aws.amazon.com/iam/
  2. Di panel kiri, pilih Kebijakan
  3. Telusuri dan pilih AWSCloudShellFullAccess
  4. Di tab Entitas yang dilampirkan, untuk setiap item, centang kotak dan pilih Lepaskan

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Access Keys Rotated Every 90 Days or Less

Nama kategori di API: ACCESS_KEYS_ROTATED_90_DAYS_LESS

Kunci akses terdiri dari ID kunci akses dan kunci akses rahasia, yang digunakan untuk menandatangani permintaan terprogram yang Anda buat ke AWS. Pengguna AWS memerlukan kunci akses mereka sendiri untuk melakukan panggilan terprogram ke AWS dari Antarmuka Command Line AWS (AWS CLI), Alat untuk Windows PowerShell, AWS SDK, atau panggilan HTTP langsung menggunakan API untuk setiap layanan AWS. Sebaiknya semua kunci akses dirotasi secara rutin.

Rekomendasi: Pastikan kunci akses dirotasi maksimal setiap 90 hari

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Buka Konsol Pengelolaan (https://console.aws.amazon.com/iam)
  2. Klik Users
  3. Klik Security Credentials
  4. Sebagai Administrator
    - Klik Make Inactive untuk kunci yang belum dirotasi dalam 90 Hari
  5. Sebagai Pengguna IAM
    - Klik Make Inactive atau Delete untuk kunci yang belum dirotasi atau digunakan dalam 90 Hari
  6. Klik Create Access Key
  7. Memperbarui panggilan terprogram dengan kredensial Kunci Akses baru

CLI AWS

  1. Saat kunci akses pertama masih aktif, buat kunci akses kedua, yang aktif secara default. Jalankan perintah berikut:
aws iam create-access-key

Pada tahap ini, pengguna memiliki dua kunci akses yang aktif.

  1. Update semua aplikasi dan alat untuk menggunakan kunci akses baru.
  2. Tentukan apakah kunci akses pertama masih digunakan dengan menggunakan perintah ini:
aws iam get-access-key-last-used
  1. Salah satu pendekatannya adalah menunggu beberapa hari, lalu memeriksa kunci akses lama untuk mengetahui apakah ada penggunaan sebelum melanjutkan.

Meskipun Langkah 3 menunjukkan bahwa kunci lama tidak digunakan, sebaiknya Anda tidak langsung menghapus kunci akses pertama. Sebagai gantinya, ubah status kunci akses pertama menjadi Tidak aktif menggunakan perintah ini:

aws iam update-access-key
  1. Hanya gunakan kunci akses baru untuk mengonfirmasi bahwa aplikasi Anda berfungsi. Aplikasi dan alat apa pun yang masih menggunakan kunci akses asli akan berhenti berfungsi pada tahap ini karena tidak lagi memiliki akses ke resource AWS. Jika menemukan aplikasi atau alat tersebut, Anda dapat mengubah statusnya kembali ke Aktif untuk mengaktifkan kembali kunci akses pertama. Kemudian, kembali ke langkah 2 dan update aplikasi ini untuk menggunakan kunci baru.

  2. Setelah menunggu beberapa waktu untuk memastikan bahwa semua aplikasi dan alat telah diperbarui, Anda dapat menghapus kunci akses pertama dengan perintah ini:

aws iam delete-access-key

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

All Expired Ssl Tls Certificates Stored Aws Iam Removed

Nama kategori di API: ALL_EXPIRED_SSL_TLS_CERTIFICATES_STORED_AWS_IAM_REMOVED

Untuk mengaktifkan koneksi HTTPS ke situs atau aplikasi di AWS, Anda memerlukan sertifikat server SSL/TLS. Anda dapat menggunakan ACM atau IAM untuk menyimpan dan men-deploy sertifikat server.
Gunakan IAM sebagai pengelola sertifikat hanya jika Anda harus mendukung koneksi HTTPS di region yang tidak didukung oleh ACM. IAM mengenkripsi kunci pribadi Anda dengan aman dan menyimpan versi terenkripsi di penyimpanan sertifikat SSL IAM. IAM mendukung deployment sertifikat server di semua region, tetapi Anda harus mendapatkan sertifikat dari penyedia eksternal untuk digunakan dengan AWS. Anda tidak dapat mengupload sertifikat ACM ke IAM. Selain itu, Anda tidak dapat mengelola sertifikat dari Konsol IAM.

Rekomendasi: Pastikan semua sertifikat SSL/TLS yang masa berlakunya telah habis yang disimpan di AWS IAM dihapus

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Penghapusan sertifikat yang masa berlakunya telah habis melalui AWS Management Console saat ini tidak didukung. Untuk menghapus sertifikat SSL/TLS yang disimpan di IAM melalui AWS API, gunakan Antarmuka Command Line (CLI).

CLI AWS

Untuk menghapus Sertifikat yang Berakhir Masa Berlakunya, jalankan perintah berikut dengan mengganti CERTIFICATE_NAME dengan nama sertifikat yang akan dihapus:

aws iam delete-server-certificate --server-certificate-name <CERTIFICATE_NAME>

Jika berhasil, perintah sebelumnya tidak akan menampilkan output apa pun.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Autoscaling Group Elb Healthcheck Required

Nama kategori di API: AUTOSCALING_GROUP_ELB_HEALTHCHECK_REQUIRED

Tindakan ini memeriksa apakah grup Penskalaan Otomatis yang dikaitkan dengan load balancer menggunakan health check Elastic Load Balancing.

Hal ini memastikan bahwa grup dapat menentukan kondisi instance berdasarkan pengujian tambahan yang disediakan oleh load balancer. Menggunakan health check Elastic Load Balancing dapat membantu mendukung ketersediaan aplikasi yang menggunakan grup EC2 Auto Scaling.

Rekomendasi: Memeriksa apakah semua grup penskalaan otomatis yang dikaitkan dengan load balancer menggunakan health check

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk mengaktifkan health check Elastic Load Balancing

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pada Auto Scaling, pilih Auto Scaling Groups.
  3. Centang kotak untuk grup Anda.
  4. Pilih Edit.
  5. Di bagian Health checks, untuk Health check type, pilih ELB.
  6. Untuk Health check grace period, masukkan 300.
  7. Di bagian bawah halaman, pilih Perbarui.

Untuk informasi selengkapnya tentang cara menggunakan load balancer dengan grup Auto Scaling, lihat Panduan Pengguna AWS Auto Scaling.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Auto Minor Version Upgrade Feature Enabled Rds Instances

Nama kategori di API: AUTO_MINOR_VERSION_UPGRADE_FEATURE_ENABLED_RDS_INSTANCES

Pastikan instance database RDS mengaktifkan tanda Upgrade Versi Minor Otomatis untuk menerima upgrade mesin minor secara otomatis selama periode pemeliharaan yang ditentukan. Jadi, instance RDS dapat mendapatkan fitur baru, perbaikan bug, dan patch keamanan untuk mesin database mereka.

Rekomendasi: Pastikan fitur Upgrade Versi Minor Otomatis Diaktifkan untuk Instance RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke konsol pengelolaan AWS, lalu buka dasbor RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi kiri, klik Databases.
  3. Pilih instance RDS yang ingin diupdate.
  4. Klik tombol Modify yang ditempatkan di sisi kanan atas.
  5. Di halaman Modify DB Instance: <instance identifier>, di bagian Maintenance, pilih Auto minor version upgrade klik tombol pilihan Yes.
  6. Di bagian bawah halaman, klik Continue, centang Terapkan Segera untuk menerapkan perubahan dengan segera, atau pilih Apply during the next scheduled maintenance window untuk menghindari periode nonaktif.
  7. Tinjau perubahannya, lalu klik Modify DB Instance. Status instance akan berubah dari tersedia menjadi diubah dan kembali ke tersedia. Setelah fitur diaktifkan, status Auto Minor Version Upgrade akan berubah menjadi Yes.

CLI AWS

  1. Jalankan perintah describe-db-instances untuk menampilkan semua nama instance database RDS, yang tersedia di region AWS yang dipilih:
aws rds describe-db-instances --region <regionName> --query 'DBInstances[*].DBInstanceIdentifier'
  1. Output perintah akan menampilkan setiap ID instance database.
  2. Jalankan perintah modify-db-instance untuk mengubah konfigurasi instance RDS yang dipilih. Perintah ini akan langsung menerapkan perubahan. Hapus --apply-immediately untuk menerapkan perubahan selama periode pemeliharaan terjadwal berikutnya dan menghindari periode nonaktif:
aws rds modify-db-instance --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --auto-minor-version-upgrade --apply-immediately
  1. Output perintah akan menampilkan metadata konfigurasi baru untuk instance RDS dan memeriksa parameter value AutoMinorVersionUpgrade.
  2. Jalankan perintah describe-db-instances untuk memeriksa apakah fitur Upgrade Versi Minor Otomatis telah berhasil diaktifkan:
aws rds describe-db-instances --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --query 'DBInstances[*].AutoMinorVersionUpgrade'
  1. Output perintah akan menampilkan status fitur saat ini yang ditetapkan ke true, fiturnya adalah enabled, dan upgrade mesin minor akan diterapkan ke instance RDS yang dipilih.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Aws Config Enabled All Regions

Nama kategori di API: AWS_CONFIG_ENABLED_ALL_REGIONS

AWS Config adalah layanan web yang melakukan pengelolaan konfigurasi resource AWS yang didukung dalam akun Anda dan mengirimkan file log kepada Anda. Informasi yang dicatat mencakup item konfigurasi (resource AWS), hubungan antara item konfigurasi (resource AWS), perubahan konfigurasi apa pun di antara resource. Sebaiknya AWS Config diaktifkan di semua region.

Rekomendasi: Pastikan AWS Config diaktifkan di semua region

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Pilih wilayah yang ingin Anda fokuskan di kanan atas konsol
  2. Klik Layanan
  3. Klik Config
  4. Jika Perekam konfigurasi diaktifkan di wilayah ini, Anda harus membuka halaman Setelan dari menu navigasi di sebelah kiri. Jika Perekam konfigurasi belum diaktifkan di wilayah ini, Anda harus memilih "Mulai".
  5. Pilih "Catat semua resource yang didukung di wilayah ini"
  6. Memilih untuk menyertakan resource global (resource IAM)
  7. Menentukan bucket S3 di akun yang sama atau di akun AWS terkelola lainnya
  8. Membuat Topik SNS dari akun AWS yang sama atau akun AWS terkelola lainnya

CLI AWS

  1. Pastikan ada bucket S3, topik SNS, dan peran IAM yang sesuai sesuai dengan prasyarat Layanan Konfigurasi AWS.
  2. Jalankan perintah ini untuk membuat perekam konfigurasi baru:
aws configservice put-configuration-recorder --configuration-recorder name=default,roleARN=arn:aws:iam::012345678912:role/myConfigRole --recording-group allSupported=true,includeGlobalResourceTypes=true
  1. Buat file konfigurasi saluran pengiriman secara lokal yang menentukan atribut saluran, yang diisi dari prasyarat yang disiapkan sebelumnya:
{
 "name": "default",
 "s3BucketName": "my-config-bucket",
 "snsTopicARN": "arn:aws:sns:us-east-1:012345678912:my-config-notice",
 "configSnapshotDeliveryProperties": {
 "deliveryFrequency": "Twelve_Hours"
 }
}
  1. Jalankan perintah ini untuk membuat saluran pengiriman baru, yang mereferensikan file konfigurasi json yang dibuat di langkah sebelumnya:
aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
  1. Mulai perekam konfigurasi dengan menjalankan perintah berikut:
aws configservice start-configuration-recorder --configuration-recorder-name default

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Aws Security Hub Enabled

Nama kategori di API: AWS_SECURITY_HUB_ENABLED

Security Hub mengumpulkan data keamanan dari seluruh akun, layanan, dan produk partner pihak ketiga yang didukung AWS, serta membantu Anda menganalisis tren keamanan dan mengidentifikasi masalah keamanan prioritas tertinggi. Saat Anda mengaktifkan Security Hub, Security Hub akan mulai menggunakan, menggabungkan, mengatur, dan memprioritaskan temuan dari layanan AWS yang telah Anda aktifkan, seperti Amazon GuardDuty, Amazon Inspector, dan Amazon Macie. Anda juga dapat mengaktifkan integrasi dengan produk keamanan partner AWS.

Rekomendasi: Pastikan AWS Security Hub diaktifkan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Gunakan kredensial identitas IAM untuk login ke konsol Security Hub.
  2. Saat Anda membuka konsol Security Hub untuk pertama kalinya, pilih Aktifkan AWS Security Hub.
  3. Di halaman sambutan, Standar keamanan mencantumkan standar keamanan yang didukung Security Hub.
  4. Pilih Aktifkan Security Hub.

CLI AWS

  1. Jalankan perintah enable-security-hub. Untuk mengaktifkan standar default, sertakan --enable-default-standards.
aws securityhub enable-security-hub --enable-default-standards
  1. Untuk mengaktifkan hub keamanan tanpa standar default, sertakan --no-enable-default-standards.
aws securityhub enable-security-hub --no-enable-default-standards

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloudtrail Logs Encrypted Rest Using Kms Cmks

Nama kategori di API: CLOUDTRAIL_LOGS_ENCRYPTED_REST_USING_KMS_CMKS

AWS CloudTrail adalah layanan web yang mencatat panggilan AWS API untuk akun dan menyediakan log tersebut kepada pengguna dan resource sesuai dengan kebijakan IAM. AWS Key Management Service (KMS) adalah layanan terkelola yang membantu membuat dan mengontrol kunci enkripsi yang digunakan untuk mengenkripsi data akun, dan menggunakan Hardware Security Module (HSM) untuk melindungi keamanan kunci enkripsi. Log CloudTrail dapat dikonfigurasi untuk memanfaatkan enkripsi sisi server (SSE) dan kunci master (CMK) yang dibuat pelanggan KMS untuk lebih melindungi log CloudTrail. Sebaiknya konfigurasikan CloudTrail untuk menggunakan SSE-KMS.

Rekomendasi: Pastikan log CloudTrail dienkripsi dalam penyimpanan menggunakan CMK KMS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke Konsol Pengelolaan AWS, lalu buka konsol CloudTrail di https://console.aws.amazon.com/cloudtrail
  2. Di panel navigasi sebelah kiri, pilih Trails .
  3. Klik Jalur
  4. Di bagian S3, klik tombol edit (ikon pensil)
  5. Klik Advanced
  6. Pilih CMK yang ada dari menu drop-down KMS key Id
    - Catatan: Pastikan CMK berada di region yang sama dengan bucket S3
    - Catatan: Anda harus menerapkan kebijakan Kunci KMS pada CMK yang dipilih agar CloudTrail sebagai layanan dapat mengenkripsi dan mendekripsi file log menggunakan CMK yang disediakan. Langkah-langkah disediakan di sini untuk mengedit kebijakan Kunci CMK yang dipilih
  7. Klik Save
  8. Anda akan melihat pesan notifikasi yang menyatakan bahwa Anda harus memiliki izin dekripsi pada kunci KMS yang ditentukan untuk mendekripsi file log.
  9. Klik Yes

CLI AWS

aws cloudtrail update-trail --name <trail_name> --kms-id <cloudtrail_kms_key>
aws kms put-key-policy --key-id <cloudtrail_kms_key> --policy <cloudtrail_kms_key_policy>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloudtrail Log File Validation Enabled

Nama kategori di API: CLOUDTRAIL_LOG_FILE_VALIDATION_ENABLED

Validasi file log CloudTrail membuat file ringkasan yang ditandatangani secara digital yang berisi hash dari setiap log yang ditulis CloudTrail ke S3. File ringkasan ini dapat digunakan untuk menentukan apakah file log diubah, dihapus, atau tidak berubah setelah CloudTrail mengirimkan log. Sebaiknya validasi file diaktifkan di semua CloudTrail.

Rekomendasi: Pastikan validasi file log CloudTrail diaktifkan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/cloudtrail
  2. Klik Trails di panel navigasi sebelah kiri
  3. Klik jalur target
  4. Di bagian General details, klik edit
  5. Di bagian Advanced settings
  6. Centang kotak aktifkan di bagian Log file validation
  7. Klik Save changes

CLI AWS

aws cloudtrail update-trail --name <trail_name> --enable-log-file-validation

Perhatikan bahwa validasi berkala log menggunakan ringkasan ini dapat dilakukan dengan menjalankan perintah berikut:

aws cloudtrail validate-logs --trail-arn <trail_arn> --start-time <start_time> --end-time <end_time>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloudtrail Trails Integrated Cloudwatch Logs

Nama kategori di API: CLOUDTRAIL_TRAILS_INTEGRATED_CLOUDWATCH_LOGS

AWS CloudTrail adalah layanan web yang mencatat panggilan AWS API yang dilakukan di akun AWS tertentu. Informasi yang dicatat mencakup identitas pemanggil API, waktu panggilan API, alamat IP sumber pemanggil API, parameter permintaan, dan elemen respons yang ditampilkan oleh layanan AWS. CloudTrail menggunakan Amazon S3 untuk penyimpanan dan pengiriman file log, sehingga file log disimpan secara permanen. Selain merekam log CloudTrail dalam bucket S3 yang ditentukan untuk analisis jangka panjang, analisis real-time dapat dilakukan dengan mengonfigurasi CloudTrail untuk mengirim log ke CloudWatch Logs. Untuk pelacakan yang diaktifkan di semua region dalam akun, CloudTrail akan mengirim file log dari semua region tersebut ke grup log CloudWatch Logs. Sebaiknya log CloudTrail dikirim ke CloudWatch Logs.

Catatan: Tujuan rekomendasi ini adalah untuk memastikan aktivitas akun AWS direkam, dipantau, dan diberi peringatan dengan tepat. CloudWatch Logs adalah cara native untuk melakukannya menggunakan layanan AWS, tetapi tidak mengecualikan penggunaan solusi alternatif.

Rekomendasi: Pastikan jejak CloudTrail diintegrasikan dengan CloudWatch Logs

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke konsol CloudTrail di https://console.aws.amazon.com/cloudtrail/
  2. Pilih Trail yang perlu diperbarui.
  3. Scroll ke bawah ke bagian CloudWatch Logs
  4. Klik Edit
  5. Di bagian CloudWatch Logs, klik kotak Enabled
  6. Di bagian Log Group, pilih baru atau pilih grup log yang ada
  7. Edit Log group name agar cocok dengan CloudTrail atau pilih Grup CloudWatch yang ada.
  8. Di bagian IAM Role, pilih baru atau pilih yang sudah ada.
  9. Edit Role name agar cocok dengan CloudTrail atau pilih Peran IAM yang ada.
  10. Klik `Simpan perubahan.

CLI AWS

aws cloudtrail update-trail --name <trail_name> --cloudwatch-logs-log-group-arn <cloudtrail_log_group_arn> --cloudwatch-logs-role-arn <cloudtrail_cloudwatchLogs_role_arn>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloudwatch Alarm Action Check

Nama kategori di API: CLOUDWATCH_ALARM_ACTION_CHECK

Ini memeriksa apakah Amazon Cloudwatch memiliki tindakan yang ditentukan saat alarm bertransisi antara status 'OK', 'ALARM', dan 'INSUFFICIENT_DATA'.

Mengonfigurasi tindakan untuk status ALARM di alarm Amazon CloudWatch sangat penting untuk memicu respons langsung saat metrik yang dipantau melanggar nilai minimum.
Hal ini memastikan penyelesaian masalah yang cepat, mengurangi periode nonaktif, dan memungkinkan perbaikan otomatis, menjaga kondisi sistem, serta mencegah pemadaman.

Alarm memiliki minimal satu tindakan.
Alarm memiliki setidaknya satu tindakan saat alarm bertransisi ke status 'INSUFFICIENT_DATA' dari status lainnya.
(Opsional) Alarm memiliki setidaknya satu tindakan saat alarm bertransisi ke status 'OK' dari status lainnya.

Rekomendasi: Memeriksa apakah setidaknya satu tindakan alarm, satu tindakan INSUFFICIENT_DATA, atau satu tindakan OK diaktifkan pada alarm CloudWatch.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk mengonfigurasi tindakan ALARM untuk alarm Amazon CloudWatch, lakukan hal berikut.

  1. Buka konsol Amazon CloudWatch di https://console.aws.amazon.com/cloudwatch/.
  2. Di panel navigasi, pada bagian 'Alarm', pilih 'Semua alarm'.
  3. Pilih alarm Amazon CloudWatch yang ingin diubah, pilih 'Tindakan', lalu pilih 'Edit'.
  4. Dari sebelah kiri, pilih 'Langkah 2 - Konfigurasi tindakan opsional'
  5. Untuk 'Pemicu status alarm', pilih opsi 'Dalam alarm' untuk menyiapkan tindakan berbasis ALARM.
  6. Untuk mengirim notifikasi ke topik SNS yang baru dibuat, pilih 'Buat topik baru'.
  7. Di kotak 'Buat topik baru...', tentukan nama topik SNS yang unik.
  8. Di kotak 'Endpoint email yang akan menerima notifikasi…', tentukan satu atau beberapa alamat email.
  9. Kemudian, pilih 'Create Topic' untuk membuat Topik Amazon SNS yang diperlukan.
  10. Di kanan bawah, pilih 'Berikutnya', 'Berikutnya', lalu pilih 'Perbarui alarm' untuk menerapkan perubahan.
  11. Buka program email Anda dan di email dari AWS Notifications, klik link untuk mengonfirmasi langganan Anda ke topik SNS yang dimaksud.
  12. Ulangi langkah 4 - 11 dan selama langkah 5, pilih 'Ok' dan 'Data tidak memadai' untuk 'Pemicu status alarm' guna menyiapkan tindakan untuk kedua status tersebut.
  13. Ulangi proses ini untuk semua alarm CloudWatch lainnya dalam region AWS yang sama.
  14. Ulangi prosesnya untuk semua alarm CloudWatch lainnya di semua region AWS lainnya.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Cloudwatch Log Group Encrypted

Nama kategori di API: CLOUDWATCH_LOG_GROUP_ENCRYPTED

Pemeriksaan ini memastikan log CloudWatch dikonfigurasi dengan KMS.

Data grup log selalu dienkripsi di CloudWatch Logs. Secara default, CloudWatch Logs menggunakan enkripsi sisi server untuk data log dalam penyimpanan. Sebagai alternatif, Anda dapat menggunakan AWS Key Management Service untuk enkripsi ini. Jika Anda melakukannya, enkripsi akan dilakukan menggunakan kunci AWS KMS. Enkripsi menggunakan AWS KMS diaktifkan di tingkat grup log, dengan mengaitkan kunci KMS dengan grup log, baik saat Anda membuat grup log atau setelah grup log ada.

Rekomendasi: Memeriksa apakah semua grup log di Amazon CloudWatch Logs dienkripsi dengan KMS

Untuk mengetahui informasi selengkapnya, lihat Mengenkripsi data log di CloudWatch Logs menggunakan AWS Key Management Service dalam panduan pengguna Amazon CloudWatch.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

CloudTrail CloudWatch Logs Enabled

Nama kategori di API: CLOUD_TRAIL_CLOUD_WATCH_LOGS_ENABLED

Kontrol ini memeriksa apakah jejak CloudTrail dikonfigurasi untuk mengirim log ke CloudWatch Logs. Kontrol akan gagal jika properti CloudWatchLogsLogGroupArn dari pelacakan kosong.

CloudTrail mencatat panggilan AWS API yang dilakukan di akun tertentu. Informasi yang dicatat mencakup hal berikut:

  • Identitas pemanggil API
  • Waktu panggilan API
  • Alamat IP sumber pemanggil API
  • Parameter permintaan
  • Elemen respons yang ditampilkan oleh layanan AWS

CloudTrail menggunakan Amazon S3 untuk penyimpanan dan pengiriman file log. Anda dapat merekam log CloudTrail di bucket S3 yang ditentukan untuk analisis jangka panjang. Untuk melakukan analisis real-time, Anda dapat mengonfigurasi CloudTrail untuk mengirim log ke CloudWatch Logs.

Untuk jejak yang diaktifkan di semua Region dalam akun, CloudTrail akan mengirim file log dari semua Region tersebut ke grup log CloudWatch Logs.

Security Hub merekomendasikan agar Anda mengirim log CloudTrail ke CloudWatch Logs. Perhatikan bahwa rekomendasi ini dimaksudkan untuk memastikan bahwa aktivitas akun direkam, dipantau, dan diaktifkan alarmnya dengan tepat. Anda dapat menggunakan CloudWatch Logs untuk menyiapkannya dengan layanan AWS. Rekomendasi ini tidak mengecualikan penggunaan solusi yang berbeda.

Mengirim log CloudTrail ke CloudWatch Logs memfasilitasi logging aktivitas real-time dan historis berdasarkan pengguna, API, resource, dan alamat IP. Anda dapat menggunakan pendekatan ini untuk menetapkan alarm dan notifikasi untuk aktivitas akun yang tidak wajar atau sensitif.

Rekomendasi: Memeriksa apakah semua jejak CloudTrail dikonfigurasi untuk mengirim log ke AWS CloudWatch

Untuk mengintegrasikan CloudTrail dengan CloudWatch Logs, lihat Mengirim peristiwa ke CloudWatch Logs di Panduan Pengguna AWS CloudTrail.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

No AWS Credentials in CodeBuild Project Environment Variables

Nama kategori di API: CODEBUILD_PROJECT_ENVVAR_AWSCRED_CHECK

Tindakan ini memeriksa apakah project berisi variabel lingkungan AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY.

Kredensial autentikasi AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY tidak boleh disimpan dalam teks biasa, karena hal ini dapat menyebabkan pengungkapan data yang tidak diinginkan dan akses yang tidak sah.

Rekomendasi: Memeriksa apakah semua project yang berisi variabel lingkungan AWS_ACCESS_KEY_ID dan AWS_SECRET_ACCESS_KEY tidak dalam teks biasa

Untuk menghapus variabel lingkungan dari project CodeBuild, lihat Mengubah setelan project build di AWS CodeBuild di Panduan Pengguna AWS CodeBuild. Pastikan tidak ada yang dipilih untuk Variabel lingkungan.

Anda dapat menyimpan variabel lingkungan dengan nilai sensitif di AWS Systems Manager Parameter Store atau AWS Secrets Manager, lalu mengambilnya dari spesifikasi build. Untuk mengetahui petunjuknya, lihat kotak berlabel Penting di bagian Lingkungan dalam Panduan Pengguna AWS CodeBuild.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Codebuild Project Source Repo Url Check

Nama kategori di API: CODEBUILD_PROJECT_SOURCE_REPO_URL_CHECK

Tindakan ini memeriksa apakah URL repositori sumber Bitbucket project AWS CodeBuild berisi token akses pribadi atau nama pengguna dan sandi. Kontrol akan gagal jika URL repositori sumber Bitbucket berisi token akses pribadi atau nama pengguna dan sandi.

Kredensial login tidak boleh disimpan atau dikirim dalam teks biasa atau muncul di URL repositori sumber. Daripada token akses pribadi atau kredensial login, Anda harus mengakses penyedia sumber di CodeBuild, dan mengubah URL repositori sumber agar hanya berisi jalur ke lokasi repositori Bitbucket. Menggunakan token akses pribadi atau kredensial login dapat mengakibatkan eksposur data yang tidak diinginkan atau akses tidak sah.

Rekomendasi: Memeriksa apakah semua project yang menggunakan github atau bitbucket sebagai sumber menggunakan oauth

Anda dapat mengupdate project CodeBuild untuk menggunakan OAuth.

Untuk menghapus autentikasi dasar/Token Akses Pribadi (GitHub) dari sumber project CodeBuild

  1. Buka konsol CodeBuild di https://console.aws.amazon.com/codebuild/.
  2. Pilih project build yang berisi token akses pribadi atau nama pengguna dan sandi.
  3. Dari Edit, pilih Sumber.
  4. Pilih Putuskan sambungan dari GitHub / Bitbucket.
  5. Pilih Hubungkan menggunakan OAuth, lalu pilih Hubungkan ke GitHub / Bitbucket.
  6. Jika diminta, pilih izinkan sesuai kebutuhan.
  7. Konfigurasi ulang URL repositori dan setelan konfigurasi tambahan, sesuai kebutuhan.
  8. Pilih Update source.

Untuk informasi selengkapnya, lihat Contoh berbasis kasus penggunaan CodeBuild di Panduan Pengguna AWS CodeBuild.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Credentials Unused 45 Days Greater Disabled

Nama kategori di API: CREDENTIALS_UNUSED_45_DAYS_GREATER_DISABLED

Pengguna AWS IAM dapat mengakses resource AWS menggunakan berbagai jenis kredensial, seperti sandi atau kunci akses. Sebaiknya semua kredensial yang tidak digunakan selama 45 hari atau lebih dinonaktifkan atau dihapus.

Rekomendasi: Pastikan kredensial yang tidak digunakan selama 45 hari atau lebih dinonaktifkan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Lakukan tindakan berikut untuk mengelola Sandi yang Tidak Digunakan (akses konsol pengguna IAM)

  1. Login ke AWS Management Console:
  2. Klik Services
  3. Klik IAM
  4. Klik Users
  5. Klik Security Credentials
  6. Pilih pengguna yang Console last sign-in-nya lebih besar dari 45 hari
  7. Klik Security credentials
  8. Di bagian Sign-in credentials, Console password klik Manage
  9. Di bagian Console Access, pilih Disable
    10.Klik Apply

Lakukan tindakan berikut untuk menonaktifkan Kunci Akses:

  1. Login ke AWS Management Console:
  2. Klik Services
  3. Klik IAM
  4. Klik Users
  5. Klik Security Credentials
  6. Pilih kunci akses yang sudah lebih dari 45 hari dan telah digunakan, lalu
    - Klik Make Inactive
  7. Pilih kunci akses yang sudah lebih dari 45 hari dan belum digunakan, lalu
    - Klik X ke Delete

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Default Security Group Vpc Restricts All Traffic

Nama kategori di API: DEFAULT_SECURITY_GROUP_VPC_RESTRICTS_ALL_TRAFFIC

VPC dilengkapi dengan grup keamanan default yang setelan awalnya menolak semua traffic masuk, mengizinkan semua traffic keluar, dan mengizinkan semua traffic di antara instance yang ditetapkan ke grup keamanan. Jika Anda tidak menentukan grup keamanan saat meluncurkan instance, instance akan otomatis ditetapkan ke grup keamanan default ini. Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk/keluar ke resource AWS. Sebaiknya grup keamanan default membatasi semua traffic.

VPC default di setiap region harus memperbarui grup keamanan defaultnya agar mematuhi kebijakan. Setiap VPC yang baru dibuat akan otomatis berisi grup keamanan default yang akan memerlukan perbaikan untuk mematuhi rekomendasi ini.

CATATAN: Saat menerapkan rekomendasi ini, logging alur VPC sangat berharga dalam menentukan akses port dengan hak istimewa minimum yang diperlukan oleh sistem agar berfungsi dengan baik karena dapat mencatat semua penerimaan dan penolakan paket yang terjadi dalam grup keamanan saat ini. Hal ini secara drastis mengurangi hambatan utama untuk engineering hak istimewa terendah - menemukan port minimum yang diperlukan oleh sistem di lingkungan. Meskipun rekomendasi logging aliran VPC dalam benchmark ini tidak diadopsi sebagai tindakan keamanan permanen, rekomendasi ini harus digunakan selama periode penemuan dan rekayasa untuk grup keamanan dengan hak istimewa terendah.

Rekomendasi: Pastikan grup keamanan default setiap VPC membatasi semua traffic

Anggota Grup Keamanan

Lakukan hal berikut untuk menerapkan status yang ditentukan:

  1. Mengidentifikasi resource AWS yang ada dalam grup keamanan default
  2. Membuat kumpulan grup keamanan hak istimewa terendah untuk resource tersebut
  3. Menempatkan resource dalam grup keamanan tersebut
  4. Hapus resource yang tercantum di #1 dari grup keamanan default

Status Grup Keamanan

  1. Login ke AWS Management Console di https://console.aws.amazon.com/vpc/home
  2. Ulangi langkah berikutnya untuk semua VPC - termasuk VPC default di setiap region AWS:
  3. Di panel kiri, klik Security Groups
  4. Untuk setiap grup keamanan default, lakukan hal berikut:
  5. Pilih grup keamanan default
  6. Klik tab Inbound Rules
  7. Menghapus aturan masuk
  8. Klik tab Outbound Rules
  9. Menghapus aturan Keluar

Rekomendasi:

Grup IAM memungkinkan Anda mengedit kolom "name". Setelah memperbaiki aturan grup default untuk semua VPC di semua region, edit kolom ini untuk menambahkan teks yang mirip dengan "JANGAN GUNAKAN. JANGAN TAMBAHKAN ATURAN"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dms Replication Not Public

Nama kategori di API: DMS_REPLICATION_NOT_PUBLIC

Memeriksa apakah instance replikasi AWS DMS bersifat publik. Untuk melakukannya, metrik ini memeriksa nilai kolom PubliclyAccessible.

Instance replika pribadi memiliki alamat IP pribadi yang tidak dapat Anda akses di luar jaringan replika. Instance replikasi harus memiliki alamat IP pribadi jika database sumber dan target berada di jaringan yang sama. Jaringan juga harus terhubung ke VPC instance replika menggunakan VPN, AWS Direct Connect, atau peering VPC. Untuk mempelajari instance replikasi publik dan pribadi lebih lanjut, lihat Instance replikasi publik dan pribadi di Panduan Pengguna AWS Database Migration Service.

Anda juga harus memastikan bahwa akses ke konfigurasi instance AWS DMS hanya dibatasi untuk pengguna yang diberi otorisasi. Untuk melakukannya, batasi izin IAM pengguna untuk mengubah setelan dan resource AWS DMS.

Rekomendasi: Memeriksa apakah instance replikasi AWS Database Migration Service bersifat publik

Anda tidak dapat mengubah setelan akses publik untuk instance replika DMS setelah membuatnya. Untuk mengubah setelan akses publik, hapus instance saat ini, lalu buat ulang. Jangan pilih opsi Dapat diakses secara publik.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Do Setup Access Keys During Initial User Setup All Iam Users Console

Nama kategori di API: DO_SETUP_ACCESS_KEYS_DURING_INITIAL_USER_SETUP_ALL_IAM_USERS_CONSOLE

Konsol AWS secara default tidak akan mencentang kotak apa pun saat membuat pengguna IAM baru. Saat membuat kredensial Pengguna IAM, Anda harus menentukan jenis akses yang diperlukan.

Akses terprogram: Pengguna IAM mungkin perlu melakukan panggilan API, menggunakan AWS CLI, atau menggunakan Alat untuk Windows PowerShell. Dalam hal ini, buat kunci akses (ID kunci akses dan kunci akses rahasia) untuk pengguna tersebut.

Akses AWS Management Console: Jika pengguna perlu mengakses AWS Management Console, buat sandi untuk pengguna tersebut.

Rekomendasi: Jangan konfigurasi kunci akses selama penyiapan pengguna awal untuk semua pengguna IAM yang memiliki sandi konsol

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console:
  2. Klik Services
  3. Klik IAM
  4. Klik Users
  5. Klik Security Credentials
  6. Sebagai Administrator
    - Klik X (Delete) untuk kunci yang dibuat bersamaan dengan profil pengguna, tetapi belum digunakan.
  7. Sebagai Pengguna IAM
    - Klik X (Delete) untuk kunci yang dibuat bersamaan dengan profil pengguna, tetapi belum digunakan.

CLI AWS

aws iam delete-access-key --access-key-id <access-key-id-listed> --user-name <users-name>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dynamodb Autoscaling Enabled

Nama kategori di API: DYNAMODB_AUTOSCALING_ENABLED

Pengujian ini memeriksa apakah tabel Amazon DynamoDB dapat menskalakan kapasitas baca dan tulisnya sesuai kebutuhan. Kontrol ini lulus jika tabel menggunakan mode kapasitas on-demand atau mode yang disediakan dengan penskalaan otomatis yang dikonfigurasi. Menskalakan kapasitas dengan permintaan akan menghindari pengecualian throttling, yang membantu mempertahankan ketersediaan aplikasi Anda.

Tabel DynamoDB dalam mode kapasitas on-demand hanya dibatasi oleh kuota tabel default throughput DynamoDB. Untuk menaikkan kuota ini, Anda dapat mengajukan tiket dukungan melalui Dukungan AWS.

Tabel DynamoDB dalam mode yang disediakan dengan penskalaan otomatis menyesuaikan kapasitas throughput yang disediakan secara dinamis sebagai respons terhadap pola traffic. Untuk informasi tambahan tentang throttling permintaan DynamoDB, lihat Throttling permintaan dan kapasitas burst di Panduan Developer Amazon DynamoDB.

Rekomendasi: Tabel DynamoDB harus otomatis menskalakan kapasitas sesuai permintaan

Untuk petunjuk mendetail tentang cara mengaktifkan penskalaan otomatis DynamoDB pada tabel yang ada dalam mode kapasitas, lihat Mengaktifkan penskalaan otomatis DynamoDB pada tabel yang ada di Panduan Developer Amazon DynamoDB.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dynamodb In Backup Plan

Nama kategori di API: DYNAMODB_IN_BACKUP_PLAN

Kontrol ini mengevaluasi apakah tabel DynamoDB dicakup oleh rencana cadangan. Kontrol akan gagal jika tabel DynamoDB tidak dicakup oleh rencana cadangan. Kontrol ini hanya mengevaluasi tabel DynamoDB yang dalam status AKTIF.

Pencadangan membantu Anda memulihkan data dengan lebih cepat dari insiden keamanan. Hal ini juga memperkuat ketahanan sistem Anda. Menyertakan tabel DynamoDB dalam rencana pencadangan membantu Anda melindungi data dari kehilangan atau penghapusan yang tidak disengaja.

Rekomendasi: Tabel DynamoDB harus dicakup oleh rencana cadangan

Untuk menambahkan tabel DynamoDB ke rencana pencadangan AWS Backup, lihat Menetapkan resource ke rencana pencadangan di Panduan Developer AWS Backup.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dynamodb Pitr Enabled

Nama kategori di API: DYNAMODB_PITR_ENABLED

Pemulihan Point In Time (PITR) adalah salah satu mekanisme yang tersedia untuk mencadangkan tabel DynamoDB.

Pencadangan titik waktu disimpan selama 35 hari. Jika Anda memerlukan retensi yang lebih lama, lihat Menyiapkan pencadangan terjadwal untuk Amazon DynamoDB menggunakan AWS Backup di Dokumentasi AWS.

Rekomendasi: Memeriksa apakah pemulihan point-in-time (PITR) diaktifkan untuk semua tabel AWS DynamoDB

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk menetapkan PITR untuk tabel DynamoDB, tetapkan blok point_in_time_recovery:

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  point_in_time_recovery {
    enabled = true
  }
}

Konsol AWS

Untuk mengaktifkan pemulihan point-in-time DynamoDB untuk tabel yang ada

  1. Buka konsol DynamoDB di https://console.aws.amazon.com/dynamodb/.
  2. Pilih tabel yang ingin Anda kerjakan, lalu pilih Pencadangan.
  3. Di bagian Pemulihan Point-in-time, pada Status, pilih Aktifkan.
  4. Pilih Aktifkan lagi untuk mengonfirmasi perubahan.

CLI AWS

aws dynamodb update-continuous-backups \
  --table-name "GameScoresOnDemand" \
  --point-in-time-recovery-specification "PointInTimeRecoveryEnabled=true"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Dynamodb Table Encrypted Kms

Nama kategori di API: DYNAMODB_TABLE_ENCRYPTED_KMS

Memeriksa apakah semua tabel DynamoDB dienkripsi dengan kunci KMS yang dikelola pelanggan (non-default).

Rekomendasi: Memeriksa apakah semua tabel DynamoDB dienkripsi dengan AWS Key Management Service (KMS)

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, buat Kunci AWS KMS dan gunakan untuk mengenkripsi resource DynamoDB yang melanggar.

resource "aws_kms_key" "dynamodb_encryption" {
  description         = "Used for DynamoDB encryption configuration"
  enable_key_rotation = true
}

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  server_side_encryption {
    enabled     = true
    kms_key_arn = aws_kms_key.dynamodb_encryption.arn
  }
}

Konsol AWS

Dengan asumsi bahwa ada kunci AWS KMS yang tersedia untuk mengenkripsi DynamoDB.

Untuk mengubah enkripsi tabel DynamoDB ke kunci KMS yang dikelola dan dimiliki pelanggan.

  1. Buka konsol DynamoDB di https://console.aws.amazon.com/dynamodb/.
  2. Pilih tabel yang ingin Anda gunakan, lalu pilih Setelan tambahan.
  3. Di bagian Enkripsi, pilih Kelola enkripsi.
  4. Untuk Enkripsi dalam penyimpanan, pilih Disimpan di akun Anda, dan dimiliki serta dikelola oleh Anda.
  5. Pilih Kunci AWS yang akan digunakan. Simpan perubahan.

CLI AWS

aws dynamodb update-table \
  --table-name <value> \
  --sse-specification "Enabled=true,SSEType=KMS,KMSMasterKeyId=<kms_key_arn>"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ebs Optimized Instance

Nama kategori di API: EBS_OPTIMIZED_INSTANCE

Memeriksa apakah pengoptimalan EBS diaktifkan untuk instance EC2 Anda yang dapat dioptimalkan EBS

Rekomendasi: Memeriksa apakah pengoptimalan EBS diaktifkan untuk semua instance yang mendukung pengoptimalan EBS

Untuk mengonfigurasi setelan instance yang dioptimalkan EBS, lihat Instance yang dioptimalkan Amazon EBS di panduan pengguna Amazon EC2.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ebs Snapshot Public Restorable Check

Nama kategori di API: EBS_SNAPSHOT_PUBLIC_RESTORABLE_CHECK

Memeriksa apakah snapshot Amazon Elastic Block Store tidak bersifat publik. Kontrol akan gagal jika snapshot Amazon EBS dapat dipulihkan oleh siapa saja.

Snapshot EBS digunakan untuk mencadangkan data di volume EBS Anda ke Amazon S3 pada titik waktu tertentu. Anda dapat menggunakan snapshot untuk memulihkan status volume EBS sebelumnya. Berbagi snapshot dengan publik jarang dapat diterima. Biasanya keputusan untuk membagikan snapshot secara publik dibuat karena kesalahan atau tanpa pemahaman lengkap tentang implikasinya. Pemeriksaan ini membantu memastikan bahwa semua berbagi tersebut telah direncanakan dan dilakukan dengan sengaja.

Rekomendasi: Snapshot Amazon EBS tidak dapat dipulihkan secara publik

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk memperbaiki masalah ini, perbarui snapshot EBS Anda agar bersifat pribadi, bukan publik.

Untuk membuat snapshot EBS publik menjadi pribadi:

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pada bagian Elastic Block Store, pilih menu Snapshot, lalu pilih snapshot publik Anda.
  3. Dari Tindakan, pilih Ubah izin.
  4. Pilih Pribadi.
  5. (Opsional) Tambahkan nomor akun AWS akun yang diberi otorisasi untuk berbagi snapshot Anda, lalu pilih Tambahkan Izin.
  6. Pilih Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ebs Volume Encryption Enabled All Regions

Nama kategori di API: EBS_VOLUME_ENCRYPTION_ENABLED_ALL_REGIONS

Elastic Compute Cloud (EC2) mendukung enkripsi saat dalam penyimpanan saat menggunakan layanan Elastic Block Store (EBS). Meskipun dinonaktifkan secara default, memaksa enkripsi saat pembuatan volume EBS didukung.

Rekomendasi: Pastikan Enkripsi Volume EBS Diaktifkan di semua Region

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console dan buka konsol Amazon EC2 menggunakan https://console.aws.amazon.com/ec2/
  2. Di bagian Account attributes, klik EBS encryption.
  3. Klik Manage.
  4. Klik kotak centang Enable.
  5. Klik Update EBS encryption
  6. Ulangi untuk setiap wilayah yang memerlukan perubahan.

Catatan: Enkripsi volume EBS dikonfigurasi per region.

CLI AWS

  1. Jalankan
aws --region <region> ec2 enable-ebs-encryption-by-default
  1. Pastikan "EbsEncryptionByDefault": true ditampilkan.
  2. Ulangi untuk setiap wilayah yang memerlukan perubahan.

Catatan: Enkripsi volume EBS dikonfigurasi per region.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Instances In Vpc

Nama kategori di API: EC2_INSTANCES_IN_VPC

Amazon VPC menyediakan lebih banyak fungsi keamanan daripada EC2 Classic. Sebaiknya semua node adalah milik Amazon VPC.

Rekomendasi: Memastikan bahwa semua instance milik VPC

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Jika memiliki Instance EC2 Klasik yang ditentukan di Terraform, Anda dapat mengubah resource menjadi bagian dari VPC. Migrasi ini akan bergantung pada arsitektur yang paling sesuai dengan kebutuhan Anda. Berikut adalah contoh Terraform sederhana yang mengilustrasikan EC2 yang diekspos secara publik di VPC.

  resource "aws_vpc" "example_vpc" {
    cidr_block = "10.0.0.0/16"
  }

  resource "aws_subnet" "example_public_subnet" {
    vpc_id            = aws_vpc.example_vpc.id
    cidr_block        = "10.0.1.0/24"
    availability_zone = "1a"
  }

  resource "aws_internet_gateway" "example_igw" {
    vpc_id = aws_vpc.example_vpc.id
  }

  resource "aws_key_pair" "example_key" {
    key_name   = "web-instance-key"
    public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"
  }

  resource "aws_security_group" "web_sg" {
    name   = "http and ssh"
    vpc_id = aws_vpc.some_custom_vpc.id

    ingress {
      from_port   = 80
      to_port     = 80
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    ingress {
      from_port   = 22
      to_port     = 22
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    egress {
      from_port   = 0
      to_port     = 0
      protocol    = -1
      cidr_blocks = ["0.0.0.0/0"]
    }
  }

  resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    key_name               = aws_key_pair.example_key.name
    monitoring             = true
    subnet_id              = aws_subnet.example_public_subnet.id
    vpc_security_group_ids = [aws_security_group.web_sg.id]
    metadata_options {
      http_tokens = "required"
    }
  }

Konsol AWS

Untuk memigrasikan EC2 Classic ke VPC, lihat Melakukan migrasi dari EC2-Classic ke VPC

CLI AWS

Contoh AWS CLI ini menggambarkan infrastruktur yang sama yang ditentukan dengan Terraform. Ini adalah contoh sederhana dari instance EC2 yang diekspos secara publik di VPC

Membuat VPC

  aws ec2 create-vpc \
  --cidr-block 10.0.0.0/16

Membuat Subnet Publik

  aws ec2 create-subnet \
  --availability-zone 1a \
  --cidr-block 10.0.1.0/24 \
  --vpc-id <id_from_create-vpc_command>

Membuat Internet Gateway

  aws ec2 create-internet-gateway

Melampirkan Internet Gateway ke VPC

  aws ec2 attach-internet-gateway \
  --internet-gateway-id <id_from_create-internet-gateway_command> \
  --vpc-id <id_from_create-vpc_command>

Buat Pasangan Kunci - Tindakan ini akan menyimpan kunci pribadi Anda di /.ssh/web-instance-key.pem

  aws ec2 create-key-pair \
  --key-name web-instance-key \
  --query "KeyMaterial" \
  --output text > ~/.ssh/web-instance-key.pem && \
  chmod 400 ~/.ssh/web-instance-key.pem

Membuat Grup Keamanan

  aws ec2 create-security-group \
  --group-name "http and ssh" \
  --vpc-id <id_from_create-vpc_command>

Membuat Aturan Grup Keamanan - Untuk akses yang lebih dibatasi, tentukan CIDR yang lebih dibatasi untuk SSH di port 22

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 80 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 22 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-egress \
  --group-id <id_from_create-security-group_command>
  --protocol -1 \
  --port 0 \
  --cidr 0.0.0.0/0

Membuat Instance EC2

  aws ec2 run-instances \
  --image-id <ami_id> \
  --instance-type <instance_flavor> \
  --metadata-options "HttpEndpoint=enabled,HttpTokens=required" \
  --monitoring true \
  --key-name web-instance-key \
  --subnet-id <id_from_create-subnet_command> \
  --security-group-ids <id_from_create-security-group_command>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Instance No Public Ip

Nama kategori di API: EC2_INSTANCE_NO_PUBLIC_IP

Instance EC2 yang memiliki alamat IP publik berisiko lebih tinggi untuk disusupi. Sebaiknya instance EC2 tidak dikonfigurasi dengan alamat IP publik.

Rekomendasi: Memastikan tidak ada instance yang memiliki IP publik

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Gunakan argumen associate_public_ip_address = false dengan resource aws_instance untuk memastikan instance EC2 disediakan tanpa alamat IP publik

resource "aws_instance" "no_public_ip" {
  ...
  associate_public_ip_address = false
}

Konsol AWS

Secara default, subnet non-default memiliki atribut alamat publik IPv4 yang ditetapkan ke salah (false), dan subnet default memiliki atribut ini ditetapkan ke benar (true). Pengecualian adalah subnet non-default yang dibuat oleh wizard peluncuran instance Amazon EC2 — wizard menetapkan atribut ke true. Anda dapat mengubah atribut ini menggunakan konsol Amazon VPC.

Untuk mengubah perilaku pemberian alamat IPv4 publik subnet

  1. Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.
  2. Di panel navigasi, pilih Subnet.
  3. Pilih subnet Anda, lalu pilih Tindakan, Edit setelan subnet.
  4. Jika dicentang, kotak Aktifkan alamat IPv4 publik penetapan otomatis akan meminta alamat IPv4 publik untuk semua instance yang diluncurkan ke subnet yang dipilih. Centang atau hapus centang pada kotak sesuai kebutuhan, lalu pilih Simpan.

CLI AWS

Perintah berikut menjalankan Instance EC2 di subnet default tanpa mengaitkan alamat IP publik ke instance tersebut.

aws ec2 run-instances \
--image-id <ami_id> \
--instance-type <instance_flavor> \
--no-associate-public-ip-address \
--key-name MyKeyPair

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Managedinstance Association Compliance Status Check

Nama kategori di API: EC2_MANAGEDINSTANCE_ASSOCIATION_COMPLIANCE_STATUS_CHECK

Penautan Pengelola Status adalah konfigurasi yang ditetapkan ke instance terkelola Anda. Konfigurasi menentukan status yang ingin Anda pertahankan di instance. Misalnya, pengaitan dapat menentukan bahwa software antivirus harus diinstal dan berjalan di instance Anda, atau port tertentu harus ditutup. Instance EC2 yang memiliki pengaitan dengan AWS Systems Manager berada di bawah pengelolaan Systems Manager yang mempermudah penerapan patch, memperbaiki kesalahan konfigurasi, dan merespons peristiwa keamanan.

Rekomendasi: Memeriksa status kepatuhan pengaitan AWS Systems Manager

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Contoh berikut menunjukkan cara membuat instance EC2 sederhana, Dokumen AWS Systems Manager (SSM), dan pengaitan antara SSM dan instance EC2. Dokumen yang didukung adalah jenis Command dan Policy.

resource "aws_instance" "web" {
  ami           = "<iam_id>"
  instance_type = "<instance_flavor>"
}

resource "aws_ssm_document" "check_ip" {
  name          = "check-ip-config"
  document_type = "Command"

  content = <<DOC
  {
    "schemaVersion": "1.2",
    "description": "Check ip configuration of a Linux instance.",
    "parameters": {

    },
    "runtimeConfig": {
      "aws:runShellScript": {
        "properties": [
          {
            "id": "0.aws:runShellScript",
            "runCommand": ["ifconfig"]
          }
        ]
      }
    }
  }
DOC
}

resource "aws_ssm_association" "check_ip_association" {
  name = aws_ssm_document.check_ip.name

  targets {
    key    = "InstanceIds"
    values = [aws_instance.web.id]
  }
}

Konsol AWS

Untuk informasi tentang cara mengonfigurasi pengaitan dengan AWS Systems Manager menggunakan konsol, lihat Membuat Pengaitan dalam dokumentasi AWS Systems Manager.

CLI AWS

Membuat Dokumen SSM

aws ssm create-document \
--name <document_name> \
--content  file://path/to-file/document.json \
--document-type "Command"

Membuat Atribusi SSM

aws ssm create-association \
--name <association_name> \
--targets "Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Managedinstance Patch Compliance Status Check

Nama kategori di API: EC2_MANAGEDINSTANCE_PATCH_COMPLIANCE_STATUS_CHECK

Kontrol ini memeriksa apakah status kepatuhan pengaitan AWS Systems Manager adalah COMPLIANT atau NON_COMPLIANT setelah pengaitan dijalankan di instance. Kontrol akan gagal jika status kepatuhan pengaitan adalah NON_COMPLIANT.

Penautan Pengelola Status adalah konfigurasi yang ditetapkan ke instance terkelola Anda. Konfigurasi menentukan status yang ingin Anda pertahankan di instance. Misalnya, pengaitan dapat menentukan bahwa software antivirus harus diinstal dan berjalan di instance Anda atau port tertentu harus ditutup.

Setelah Anda membuat satu atau beberapa pengaitan Pengelola Status, informasi status kepatuhan akan langsung tersedia untuk Anda. Anda dapat melihat status kepatuhan di konsol atau sebagai respons terhadap perintah AWS CLI atau tindakan Systems Manager API yang sesuai. Untuk pengaitan, Kepatuhan Konfigurasi menampilkan status kepatuhan (Memenuhi atau Tidak Memenuhi). Halaman ini juga menampilkan tingkat keparahan yang ditetapkan untuk pengaitan, seperti Kritis atau Sedang.

Untuk mempelajari kepatuhan pengaitan State Manager lebih lanjut, lihat Tentang kepatuhan pengaitan State Manager di Panduan Pengguna AWS Systems Manager.

Rekomendasi: Memeriksa status kepatuhan patch AWS Systems Manager

Atribusi yang gagal dapat terkait dengan berbagai hal, termasuk target dan nama dokumen SSM. Untuk memperbaiki masalah ini, Anda harus mengidentifikasi dan menyelidiki pengaitan terlebih dahulu dengan melihat histori pengaitan. Untuk mengetahui petunjuk tentang cara melihat histori pengaitan, lihat Melihat histori pengaitan di Panduan Pengguna AWS Systems Manager.

Setelah menyelidiki, Anda dapat mengedit pengaitan untuk memperbaiki masalah yang diidentifikasi. Anda dapat mengedit pengaitan untuk menentukan nama, jadwal, tingkat keparahan, atau target baru. Setelah Anda mengedit pengaitan, AWS Systems Manager akan membuat versi baru. Untuk petunjuk mengedit pengaitan, lihat Mengedit dan membuat versi baru pengaitan di Panduan Pengguna AWS Systems Manager.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Metadata Service Allows Imdsv2

Nama kategori di API: EC2_METADATA_SERVICE_ALLOWS_IMDSV2

Saat mengaktifkan Layanan Metadata di instance AWS EC2, pengguna memiliki opsi untuk menggunakan Layanan Metadata Instance Versi 1 (IMDSv1; metode permintaan/respons) atau Layanan Metadata Instance Versi 2 (IMDSv2; metode berorientasi sesi).

Rekomendasi: Pastikan Layanan Metadata EC2 hanya mengizinkan IMDSv2

Dari Konsol:
1. Login ke AWS Management Console dan buka konsol Amazon EC2 menggunakan https://console.aws.amazon.com/ec2/
2. Di menu Instances, pilih Instances.
3. Untuk setiap Instance, pilih instance, lalu pilih Actions > Modify instance metadata options.
4. Jika layanan Metadata instance diaktifkan, tetapkan IMDSv2 ke Wajib.

Dari Command Line:

aws ec2 modify-instance-metadata-options --instance-id <instance_id> --http-tokens required

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Ec2 Volume Inuse Check

Nama kategori di API: EC2_VOLUME_INUSE_CHECK

Mengidentifikasi dan menghapus volume Elastic Block Store (EBS) yang tidak terpasang (tidak digunakan) di akun AWS Anda untuk menurunkan biaya tagihan AWS bulanan. Menghapus volume EBS yang tidak digunakan juga mengurangi risiko data rahasia/sensitif keluar dari tempat Anda. Selain itu, kontrol ini juga memeriksa apakah instance EC2 yang diarsipkan dikonfigurasi untuk menghapus volume saat dihentikan.

Secara default, instance EC2 dikonfigurasi untuk menghapus data dalam volume EBS apa pun yang terkait dengan instance, dan untuk menghapus volume EBS root instance. Namun, volume EBS non-root yang dilampirkan ke instance, saat peluncuran atau selama eksekusi, akan dipertahankan setelah penghentian secara default.

Rekomendasi: Memeriksa apakah volume EBS dipasang ke instance EC2 dan dikonfigurasi untuk dihapus saat instance dihentikan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk mencegah skenario ini menggunakan Terraform, buat instance EC2 dengan blok EBS tersemat. Hal ini memastikan bahwa setiap blok EBS yang terkait dengan instance (tidak hanya root) akan dihapus saat instance dihentikan dengan menetapkan atribut ebs_block_device.delete_on_termination secara default ke true.

resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    ebs_block_device {
      delete_on_termination = true # Default
      device_name           = "/dev/sdh"
    }

Konsol AWS

Untuk menghapus volume EBS menggunakan konsol

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pilih Volume.
  3. Pilih volume yang akan dihapus, lalu pilih Tindakan, Hapus volume.
  4. Catatan: Jika Hapus volume berwarna abu-abu, volume tersebut terpasang ke instance. Anda harus melepaskan volume dari instance sebelum dapat dihapus.
  5. Di kotak dialog konfirmasi, pilih Hapus.

CLI AWS

Contoh perintah ini menghapus volume yang tersedia dengan ID volume vol-049df61146c4d7901. Jika perintah berhasil, tidak ada output yang ditampilkan.

aws ec2 delete-volume --volume-id vol-049df61146c4d7901

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Efs Encrypted Check

Nama kategori di API: EFS_ENCRYPTED_CHECK

Amazon EFS mendukung dua bentuk enkripsi untuk sistem file, enkripsi data dalam pengiriman, dan enkripsi data dalam penyimpanan. Tindakan ini memeriksa apakah semua sistem file EFS dikonfigurasi dengan enkripsi dalam penyimpanan di semua region yang diaktifkan di akun.

Rekomendasi: Memeriksa apakah EFS dikonfigurasi untuk mengenkripsi data file menggunakan KMS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Cuplikan kode berikut dapat digunakan untuk membuat EFS terenkripsi KMS (Catatan: Atribut kms_key_id bersifat opsional, dan kunci akan dibuat jika tidak ada ID kunci kms yang diteruskan)

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-kms-encrypted-efs"
  encrypted      = true
  kms_key_id     = "arn:aws:kms:us-west-2:12344375555:key/16393ebd-3348-483f-b162-99b6648azz23"

  tags = {
    Name = "MyProduct"
  }
}

Konsol AWS

Untuk mengonfigurasi EFS dengan enkripsi menggunakan konsol AWS, lihat Mengenkripsi sistem file dalam penyimpanan menggunakan konsol.

CLI AWS

Perlu diperhatikan bahwa saat membuat EFS dari konsol, enkripsi saat tidak digunakan akan diaktifkan secara default, tetapi hal ini tidak berlaku untuk EFS yang dibuat menggunakan CLI, API, atau SDK. Contoh berikut memungkinkan Anda membuat sistem file terenkripsi di infrastruktur.

aws efs create-file-system \
--backup \
--encrypted \
--region us-east-1 \

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Efs In Backup Plan

Nama kategori di API: EFS_IN_BACKUP_PLAN

Praktik terbaik Amazon merekomendasikan konfigurasi pencadangan untuk Elastic File System (EFS) Anda. Tindakan ini akan memeriksa semua EFS di setiap region yang diaktifkan di akun AWS Anda untuk mengetahui cadangan yang diaktifkan.

Rekomendasi: Memeriksa apakah sistem file EFS disertakan dalam paket AWS Backup

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Gunakan resource aws_efs_backup_policy untuk mengonfigurasi kebijakan pencadangan untuk sistem file EFS.

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-encrypted-efs"
  encrypted      = true

  tags = merge({
    Name = "${local.resource_prefix.value}-efs"
    }, {
    git_file             = "terraform/aws/efs.tf"
    git_org              = "your_git_org"
    git_repo             = "your_git_repo"
  })
}

resource "aws_efs_backup_policy" "policy" {
  file_system_id = aws_efs_file_system.encrypted-efs.id

  backup_policy {
    status = "ENABLED"
  }
}

Konsol AWS

Ada dua opsi untuk mencadangkan EFS: layanan AWS Backup dan solusi pencadangan EFS-ke-EFS. Untuk memperbaiki EFS yang tidak dicadangkan menggunakan konsol, lihat:

  1. Menggunakan AWS Backup untuk mencadangkan dan memulihkan sistem file Amazon EFS
  2. Pencadangan EFS ke EFS

CLI AWS

Ada beberapa opsi untuk membuat sistem file EFS yang mematuhi kebijakan menggunakan CLI:

  1. Membuat EFS dengan pencadangan otomatis diaktifkan (default untuk penyimpanan Satu Zona dan bersyarat untuk ketersediaan pencadangan di Region AWS)
  2. Membuat EFS dan menerapkan kebijakan pencadangan

Namun, dengan asumsi bahwa perbaikan harus dilakukan di EFS yang ada, opsi terbaiknya adalah membuat kebijakan cadangan dan mengaitkannya ke EFS yang tidak mematuhi kebijakan. Anda memerlukan satu perintah untuk setiap EFS di infrastruktur Anda.

arr=( $(aws efs describe-file-systems | jq -r '.FileSystems[].FileSystemId') )
for efs in "${arr[@]}"
do
  aws efs put-backup-policy \
  --file-system-id "${efs}" \
  --backup-policy "Status=ENABLED"
done

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Elb Acm Certificate Required

Nama kategori di API: ELB_ACM_CERTIFICATE_REQUIRED

Memeriksa apakah Load Balancer Klasik menggunakan sertifikat HTTPS/SSL yang disediakan oleh AWS Certificate Manager (ACM). Kontrol akan gagal jika Load Balancer Klasik yang dikonfigurasi dengan pemroses HTTPS/SSL tidak menggunakan sertifikat yang disediakan oleh ACM.

Untuk membuat sertifikat, Anda dapat menggunakan ACM atau alat yang mendukung protokol SSL dan TLS, seperti OpenSSL. Security Hub merekomendasikan agar Anda menggunakan ACM untuk membuat atau mengimpor sertifikat untuk load balancer.

ACM terintegrasi dengan Load Balancer Klasik sehingga Anda dapat men-deploy sertifikat di load balancer. Anda juga harus memperpanjang sertifikat ini secara otomatis.

Rekomendasi: Memeriksa apakah semua Load Balancer Klasik menggunakan sertifikat SSL yang disediakan oleh AWS Certificate Manager

Untuk informasi tentang cara mengaitkan sertifikat SSL/TLS ACM dengan Load Balancer Klasik, lihat artikel Pusat Pengetahuan AWS Bagaimana cara mengaitkan sertifikat SSL/TLS ACM dengan Load Balancer Klasik, Aplikasi, atau Jaringan?

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Elb Deletion Protection Enabled

Nama kategori di API: ELB_DELETION_PROTECTION_ENABLED

Memeriksa apakah Load Balancer Aplikasi telah mengaktifkan perlindungan penghapusan. Kontrol akan gagal jika perlindungan penghapusan tidak dikonfigurasi.

Aktifkan perlindungan penghapusan untuk melindungi Load Balancer Aplikasi Anda dari penghapusan.

Rekomendasi: Perlindungan penghapusan Load Balancer Aplikasi harus diaktifkan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk mencegah load balancer terhapus secara tidak sengaja, Anda dapat mengaktifkan perlindungan penghapusan. Secara default, perlindungan penghapusan dinonaktifkan untuk load balancer Anda.

Jika Anda mengaktifkan perlindungan penghapusan untuk load balancer, Anda harus menonaktifkan perlindungan penghapusan sebelum dapat menghapus load balancer.

Untuk mengaktifkan perlindungan penghapusan dari konsol.

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pada bagian LOAD BALANCING, pilih Load Balancers.
  3. Pilih load balancer.
  4. Di tab Deskripsi, pilih Edit atribut.
  5. Di halaman Edit load balancer attributes, pilih Enable for Delete Protection, lalu pilih Save.
  6. Pilih Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Elb Logging Enabled

Nama kategori di API: ELB_LOGGING_ENABLED

Tindakan ini memeriksa apakah Application Load Balancer dan Classic Load Balancer telah mengaktifkan logging. Kontrol akan gagal jika access_logs.s3.enabled bernilai salah (false).

Elastic Load Balancing menyediakan log akses yang merekam informasi mendetail tentang permintaan yang dikirim ke load balancer Anda. Setiap log berisi informasi seperti waktu permintaan diterima, alamat IP klien, latensi, jalur permintaan, dan respons server. Anda dapat menggunakan log akses ini untuk menganalisis pola traffic dan memecahkan masalah.

Untuk mempelajari lebih lanjut, lihat Log akses untuk Load Balancer Klasik di Panduan Pengguna untuk Load Balancer Klasik.

Rekomendasi: Memeriksa apakah logging diaktifkan pada load balancer aplikasi dan klasik

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk mengatasi masalah ini, update load balancer untuk mengaktifkan logging.

Untuk mengaktifkan log akses

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pilih Load balancer.
  3. Pilih Application Load Balancer atau Classic Load Balancer.
  4. Dari Tindakan, pilih Edit atribut.
  5. Di bagian Access logs, pilih Enable.
  6. Masukkan lokasi S3 Anda. Lokasi ini dapat ada atau dapat dibuat untuk Anda. Jika Anda tidak menentukan awalan, log akses akan disimpan di root bucket S3.
  7. Pilih Simpan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Elb Tls Https Listeners Only

Nama kategori di API: ELB_TLS_HTTPS_LISTENERS_ONLY

Pemeriksaan ini memastikan semua Load Balancer Klasik dikonfigurasi untuk menggunakan komunikasi yang aman.

Pemroses adalah proses yang memeriksa permintaan koneksi. Load balancer dikonfigurasi dengan protokol dan port untuk koneksi frontend (klien ke load balancer) dan protokol serta port untuk koneksi backend (load balancer ke instance). Untuk mengetahui informasi tentang port, protokol, dan konfigurasi pemroses yang didukung oleh Elastic Load Balancing, lihat Pemroses untuk Load Balancer Klasik Anda.

Rekomendasi: Memeriksa apakah semua Load Balancer Klasik dikonfigurasi dengan pemroses SSL atau HTTPS

Untuk mengonfigurasi SSL atau TLS untuk load balancer klasik, lihat Membuat load balancer HTTPS/SSL menggunakan AWS Management Console.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Encrypted Volumes

Nama kategori di API: ENCRYPTED_VOLUMES

Memeriksa apakah volume EBS yang dalam status terpasang dienkripsi. Agar lulus pemeriksaan ini, volume EBS harus digunakan dan dienkripsi. Jika tidak terpasang, volume EBS tidak akan dikenai pemeriksaan ini.

Untuk lapisan keamanan tambahan data sensitif Anda dalam volume EBS, Anda harus mengaktifkan enkripsi EBS saat dalam penyimpanan. Enkripsi Amazon EBS menawarkan solusi enkripsi yang mudah untuk resource EBS Anda tanpa mengharuskan Anda membuat, mengelola, dan mengamankan infrastruktur pengelolaan kunci enkripsi Anda sendiri. Layanan ini menggunakan kunci KMS saat membuat volume dan snapshot terenkripsi.

Untuk mempelajari enkripsi Amazon EBS lebih lanjut, lihat Enkripsi Amazon EBS di Panduan Pengguna Amazon EC2 untuk Instance Linux.

Rekomendasi: Volume Amazon EBS yang terpasang harus dienkripsi dalam penyimpanan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Tidak ada cara langsung untuk mengenkripsi volume atau snapshot yang tidak dienkripsi yang ada. Anda hanya dapat mengenkripsi volume atau snapshot baru saat membuatnya.

Jika Anda mengaktifkan enkripsi secara default, Amazon EBS akan mengenkripsi volume atau snapshot baru yang dihasilkan menggunakan kunci default untuk enkripsi Amazon EBS. Meskipun belum mengaktifkan enkripsi secara default, Anda dapat mengaktifkan enkripsi saat membuat volume atau snapshot individual. Dalam kedua kasus tersebut, Anda dapat mengganti kunci default untuk enkripsi Amazon EBS dan memilih kunci simetris yang dikelola pelanggan.

Untuk mengetahui informasi selengkapnya, lihat Membuat volume Amazon EBS dan Menyalin snapshot Amazon EBS di Panduan Pengguna Amazon EC2 untuk Instance Linux.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Encryption At Rest Enabled Rds Instances

Nama kategori di API: ENCRYPTION_AT_REST_ENABLED_RDS_INSTANCES

Instance DB terenkripsi Amazon RDS menggunakan algoritma enkripsi AES-256 standar industri untuk mengenkripsi data Anda di server yang menghosting instance DB Amazon RDS. Setelah data Anda dienkripsi, Amazon RDS menangani autentikasi akses dan dekripsi data Anda secara transparan dengan dampak minimal pada performa.

Rekomendasi: Pastikan enkripsi dalam penyimpanan diaktifkan untuk Instance RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console, lalu buka dasbor RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi kiri, klik Databases
  3. Pilih instance Database yang perlu dienkripsi.
  4. Klik tombol Actions yang ditempatkan di kanan atas, lalu pilih Take Snapshot.
  5. Di halaman Take Snapshot, masukkan nama database yang ingin Anda ambil snapshot-nya di kolom Snapshot Name, lalu klik Take Snapshot.
  6. Pilih snapshot yang baru dibuat, lalu klik tombol Action yang ditempatkan di kanan atas dan pilih Copy snapshot dari menu Tindakan.
  7. Di halaman Make Copy of DB Snapshot, lakukan hal berikut:
  • Di kolom ID Snapshot DB Baru, Masukkan nama untuk new snapshot.
  • Centang Copy Tags, Snapshot baru harus memiliki tag yang sama dengan snapshot sumber.
  • Pilih Yes dari menu drop-down Enable Encryption untuk mengaktifkan enkripsi. Anda dapat memilih untuk menggunakan kunci enkripsi default AWS atau kunci kustom dari menu drop-down Kunci Master.
  1. Klik Copy Snapshot untuk membuat salinan terenkripsi dari snapshot instance yang dipilih.
  2. Pilih Salinan Terenkripsi Snapshot baru, lalu klik tombol Action yang ditempatkan di kanan atas dan pilih tombol Restore Snapshot dari menu Tindakan. Tindakan ini akan memulihkan snapshot terenkripsi ke instance database baru.
  3. Di halaman Restore DB Instance, masukkan nama unik untuk instance database baru di kolom DB Instance Identifier.
  4. Tinjau detail konfigurasi instance, lalu klik Restore DB Instance.
  5. Setelah proses penyediaan instance baru selesai, dapat memperbarui konfigurasi aplikasi untuk merujuk ke endpoint instance database terenkripsi yang baru. Setelah endpoint database diubah di tingkat aplikasi, dapat menghapus instance yang tidak dienkripsi.

CLI AWS

  1. Jalankan perintah describe-db-instances untuk mencantumkan semua nama database RDS yang tersedia di region AWS yang dipilih. Output perintah akan menampilkan ID instance database.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. Jalankan perintah create-db-snapshot untuk membuat snapshot untuk instance database yang dipilih. Output perintah akan menampilkan new snapshot dengan nama DB Snapshot Name.
aws rds create-db-snapshot --region <region-name> --db-snapshot-identifier <DB-Snapshot-Name> --db-instance-identifier <DB-Name>
  1. Sekarang jalankan perintah list-aliases untuk mencantumkan alias kunci KMS yang tersedia di region yang ditentukan. Output perintah akan menampilkan setiap key alias currently available. Untuk proses aktivasi enkripsi RDS, temukan ID kunci KMS default AWS.
aws kms list-aliases --region <region-name>
  1. Jalankan perintah copy-db-snapshot menggunakan ID kunci KMS default untuk instance RDS yang ditampilkan sebelumnya guna membuat salinan terenkripsi snapshot instance database. Output perintah akan menampilkan encrypted instance snapshot configuration.
aws rds copy-db-snapshot --region <region-name> --source-db-snapshot-identifier <DB-Snapshot-Name> --target-db-snapshot-identifier <DB-Snapshot-Name-Encrypted> --copy-tags --kms-key-id <KMS-ID-For-RDS>
  1. Jalankan perintah restore-db-instance-from-db-snapshot untuk memulihkan snapshot terenkripsi yang dibuat pada langkah sebelumnya ke instance database baru. Jika berhasil, output perintah akan menampilkan konfigurasi instance database terenkripsi baru.
aws rds restore-db-instance-from-db-snapshot --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --db-snapshot-identifier <DB-Snapshot-Name-Encrypted>
  1. Jalankan perintah describe-db-instances untuk mencantumkan semua nama database RDS, yang tersedia di region AWS yang dipilih. Output akan menampilkan nama ID instance database. Pilih nama database terenkripsi yang baru saja kita buat, DB-Name-Encrypted.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. Jalankan lagi perintah describe-db-instances menggunakan ID instance RDS yang ditampilkan sebelumnya, untuk menentukan apakah instance database yang dipilih dienkripsi, Output perintah akan menampilkan status enkripsi True.
aws rds describe-db-instances --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --query 'DBInstances[*].StorageEncrypted'

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Encryption Enabled Efs File Systems

Nama kategori di API: ENCRYPTION_ENABLED_EFS_FILE_SYSTEMS

Data EFS harus dienkripsi dalam penyimpanan menggunakan AWS KMS (Key Management Service).

Rekomendasi: Pastikan enkripsi diaktifkan untuk sistem file EFS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console dan Buka dasbor Elastic File System (EFS).
  2. Pilih File Systems dari panel navigasi kiri.
  3. Klik tombol Create File System dari menu atas dasbor untuk memulai proses penyiapan sistem file.
  4. Di halaman konfigurasi Configure file system access, lakukan tindakan berikut.
    - Pilih VPC yang tepat dari menu drop-down VPC.
    - Di bagian Create mount targets, centang kotak untuk semua Zona Ketersediaan (AZ) dalam VPC yang dipilih. Ini akan menjadi target pemasangan Anda.
    - Klik Next step untuk melanjutkan.

  5. Lakukan hal berikut di halaman Configure optional settings.
    - Buat tags untuk mendeskripsikan sistem file baru Anda.
    - Pilih performance mode berdasarkan persyaratan Anda.
    - Centang kotak Enable encryption dan pilih aws/elasticfilesystem dari menu drop-down Select KMS master key untuk mengaktifkan enkripsi untuk sistem file baru menggunakan kunci master default yang disediakan dan dikelola oleh AWS KMS.
    - Klik Next step untuk melanjutkan.

  6. Tinjau detail konfigurasi sistem file di halaman review and create, lalu klik Create File System untuk membuat sistem file AWS EFS baru.

  7. Salin data dari sistem file EFS lama yang tidak dienkripsi ke sistem file terenkripsi yang baru dibuat.
  8. Hapus sistem file yang tidak dienkripsi segera setelah migrasi data Anda ke sistem file terenkripsi yang baru dibuat selesai.
  9. Ubah region AWS dari menu navigasi dan ulangi seluruh proses untuk region AWS lainnya.

Dari CLI:
1. Jalankan perintah describe-file-systems untuk menjelaskan informasi konfigurasi yang tersedia untuk sistem file yang dipilih (tidak dienkripsi) (lihat bagian Audit untuk mengidentifikasi resource yang tepat):

aws efs describe-file-systems --region <region> --file-system-id <file-system-id from audit section step 2 output>
  1. Output perintah akan menampilkan informasi konfigurasi yang diminta.
  2. Untuk menyediakan sistem file AWS EFS baru, Anda perlu membuat ID unik universal (UUID) untuk membuat token yang diperlukan oleh perintah create-file-system. Untuk membuat token yang diperlukan, Anda dapat menggunakan UUID yang dibuat secara acak dari "https://www.uuidgenerator.net".
  3. Jalankan perintah create-file-system menggunakan token unik yang dibuat pada langkah sebelumnya.
aws efs create-file-system --region <region> --creation-token <Token (randomly generated UUID from step 3)> --performance-mode generalPurpose --encrypted
  1. Output perintah akan menampilkan metadata konfigurasi sistem file baru.
  2. Jalankan perintah create-mount-target menggunakan ID sistem file EFS yang baru dibuat dan ditampilkan pada langkah sebelumnya sebagai ID dan ID Zona Ketersediaan (AZ) yang akan mewakili target pemasangan:
aws efs create-mount-target --region <region> --file-system-id <file-system-id> --subnet-id <subnet-id>
  1. Output perintah akan menampilkan metadata target pemasangan baru.
  2. Sekarang Anda dapat memasang sistem file dari instance EC2.
  3. Salin data dari sistem file EFS lama yang tidak dienkripsi ke sistem file terenkripsi yang baru dibuat.
  4. Hapus sistem file yang tidak dienkripsi segera setelah migrasi data Anda ke sistem file terenkripsi yang baru dibuat selesai.
aws efs delete-file-system --region <region> --file-system-id <unencrypted-file-system-id>
  1. Ubah region AWS dengan memperbarui --region dan ulangi seluruh proses untuk region AWS lainnya.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam Password Policy

Nama kategori di API: IAM_PASSWORD_POLICY

AWS mengizinkan kebijakan sandi kustom di akun AWS Anda untuk menentukan persyaratan kerumitan dan periode rotasi wajib untuk sandi pengguna IAM Anda. Jika Anda tidak menetapkan kebijakan sandi kustom, sandi pengguna IAM harus memenuhi kebijakan sandi AWS default. Praktik terbaik keamanan AWS merekomendasikan persyaratan kerumitan sandi berikut:

  • Memerlukan minimal satu karakter huruf besar dalam sandi.
  • Memerlukan minimal satu karakter huruf kecil dalam sandi.
  • Memerlukan minimal satu simbol dalam sandi.
  • Wajibkan setidaknya satu angka dalam sandi.
  • Mewajibkan panjang sandi minimum minimal 14 karakter.
  • Mewajibkan minimal 24 sandi sebelum mengizinkan penggunaan kembali.
  • Wajibkan setidaknya 90 hari sebelum masa berlaku sandi berakhir

Kontrol ini memeriksa semua persyaratan kebijakan sandi yang ditentukan.

Rekomendasi: Memeriksa apakah kebijakan sandi akun untuk pengguna IAM memenuhi persyaratan yang ditentukan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_iam_account_password_policy" "strict" {
  allow_users_to_change_password = true
  require_uppercase_characters   = true
  require_lowercase_characters   = true
  require_symbols                = true
  require_numbers                = true
  minimum_password_length        = 14
  password_reuse_prevention      = 24
  max_password_age               = 90
}

Konsol AWS

Untuk membuat kebijakan sandi kustom

  1. Masuk ke Konsol Pengelolaan dan buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, pilih Setelan akun.
  3. Di bagian Kebijakan sandi, pilih Ubah kebijakan sandi.
  4. Pilih opsi yang ingin Anda terapkan ke kebijakan sandi, lalu pilih Simpan perubahan.

Untuk mengubah kebijakan sandi kustom

  1. Masuk ke Konsol Pengelolaan dan buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, pilih Setelan akun.
  3. Di bagian Kebijakan sandi, pilih Ubah.
  4. Pilih opsi yang ingin Anda terapkan ke kebijakan sandi, lalu pilih Simpan perubahan.

CLI AWS

aws iam update-account-password-policy \
--allow-users-to-change-password \
--require-uppercase-characters \
--require-lowercase-characters \
--require-symbols \
--require-numbers \
--minimum-password-length 14 \
--password-reuse-prevention 24 \
--max-password-age 90

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam Password Policy Prevents Password Reuse

Nama kategori di API: IAM_PASSWORD_POLICY_PREVENTS_PASSWORD_REUSE

Kebijakan sandi IAM dapat mencegah penggunaan ulang sandi tertentu oleh pengguna yang sama. Sebaiknya kebijakan sandi mencegah penggunaan ulang sandi.

Rekomendasi: Pastikan kebijakan sandi IAM mencegah penggunaan ulang sandi

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Console (dengan izin yang sesuai untuk Melihat Setelan Akun Identity Access Management)
  2. Buka Layanan IAM di Konsol AWS
  3. Klik Setelan Akun di Panel Kiri
  4. Centang "Cegah penggunaan ulang sandi"
  5. Menetapkan "Jumlah sandi yang akan diingat" ke 24

CLI AWS

 aws iam update-account-password-policy --password-reuse-prevention 24

Catatan: Semua perintah yang dimulai dengan "aws iam update-account-password-policy" dapat digabungkan menjadi satu perintah.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam Password Policy Requires Minimum Length 14 Greater

Nama kategori di API: IAM_PASSWORD_POLICY_REQUIRES_MINIMUM_LENGTH_14_GREATER

Kebijakan sandi, sebagian, digunakan untuk menerapkan persyaratan kerumitan sandi. Kebijakan sandi IAM dapat digunakan untuk memastikan sandi memiliki panjang minimal yang ditentukan. Sebaiknya kebijakan sandi mewajibkan panjang sandi minimum 14 karakter.

Rekomendasi: Pastikan kebijakan sandi IAM mengharuskan panjang minimum 14 karakter atau lebih

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Console (dengan izin yang sesuai untuk Melihat Setelan Akun Identity Access Management)
  2. Buka Layanan IAM di Konsol AWS
  3. Klik Setelan Akun di Panel Kiri
  4. Tetapkan "Panjang sandi minimum" ke 14 atau lebih besar.
  5. Klik "Terapkan kebijakan sandi"

CLI AWS

 aws iam update-account-password-policy --minimum-password-length 14

Catatan: Semua perintah yang dimulai dengan "aws iam update-account-password-policy" dapat digabungkan menjadi satu perintah.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam Policies Allow Full Administrative Privileges Attached

Nama kategori di API: IAM_POLICIES_ALLOW_FULL_ADMINISTRATIVE_PRIVILEGES_ATTACHED

Kebijakan IAM adalah cara untuk memberikan hak istimewa kepada pengguna, grup, atau peran. Sebaiknya dan dianggap sebagai saran keamanan standar untuk memberikan hak istimewa terendah -yaitu, hanya memberikan izin yang diperlukan untuk melakukan tugas. Tentukan hal yang perlu dilakukan pengguna, lalu buat kebijakan untuk mereka yang mengizinkan pengguna hanya melakukan tugas tersebut, bukan mengizinkan hak istimewa administratif penuh.

Rekomendasi: Pastikan kebijakan IAM yang mengizinkan hak istimewa administratif "*:*" penuh tidak terpasang

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Lakukan tindakan berikut untuk melepaskan kebijakan yang memiliki hak istimewa administratif penuh:

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, klik Kebijakan, lalu telusuri nama kebijakan yang ditemukan di langkah audit.
  3. Pilih kebijakan yang perlu dihapus.
  4. Di menu tindakan kebijakan, pilih Detach pertama
  5. Pilih semua Pengguna, Grup, Peran yang memiliki kebijakan ini terlampir
  6. Klik Detach Policy
  7. Di menu tindakan kebijakan, pilih Detach

CLI AWS

Lakukan tindakan berikut untuk melepaskan kebijakan yang memiliki hak istimewa administratif penuh seperti yang ditemukan dalam langkah audit:

  1. Mencantumkan semua pengguna, grup, dan peran IAM yang terkait dengan kebijakan terkelola yang ditentukan.
 aws iam list-entities-for-policy --policy-arn <policy_arn>
  1. Lepaskan kebijakan dari semua Pengguna IAM:
 aws iam detach-user-policy --user-name <iam_user> --policy-arn <policy_arn>
  1. Lepaskan kebijakan dari semua Grup IAM:
 aws iam detach-group-policy --group-name <iam_group> --policy-arn <policy_arn>
  1. Lepaskan kebijakan dari semua Peran IAM:
 aws iam detach-role-policy --role-name <iam_role> --policy-arn <policy_arn>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam Users Receive Permissions Groups

Nama kategori di API: IAM_USERS_RECEIVE_PERMISSIONS_GROUPS

Pengguna IAM diberi akses ke layanan, fungsi, dan data melalui kebijakan IAM. Ada empat cara untuk menentukan kebijakan bagi pengguna: 1) Mengedit kebijakan pengguna secara langsung, alias kebijakan inline, atau pengguna; 2) melampirkan kebijakan langsung ke pengguna; 3) menambahkan pengguna ke grup IAM yang memiliki kebijakan terlampir; 4) menambahkan pengguna ke grup IAM yang memiliki kebijakan inline.

Hanya penerapan ketiga yang direkomendasikan.

Rekomendasi: Pastikan Pengguna IAM Hanya Menerima Izin Melalui Grup

Lakukan langkah-langkah berikut untuk membuat grup IAM dan menetapkan kebijakan ke grup tersebut:

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, klik Groups, lalu klik Create New Group .
  3. Di kotak Group Name, ketik nama grup, lalu klik Next Step .
  4. Dalam daftar kebijakan, centang kotak untuk setiap kebijakan yang ingin Anda terapkan ke semua anggota grup. Kemudian, klik Next Step .
  5. Klik Create Group

Lakukan tindakan berikut untuk menambahkan pengguna ke grup tertentu:

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, klik Groups
  3. Pilih grup yang akan ditambahkan pengguna
  4. Klik Add Users To Group
  5. Pilih pengguna yang akan ditambahkan ke grup
  6. Klik Add Users

Lakukan tindakan berikut untuk menghapus pengaitan langsung antara pengguna dan kebijakan:

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi kiri, klik Pengguna
  3. Untuk setiap pengguna:
    - Pilih pengguna
    - Klik tab Permissions
    - Luaskan Permissions policies
    - Klik X untuk setiap kebijakan; lalu klik Lepaskan atau Hapus (bergantung pada jenis kebijakan)

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam User Group Membership Check

Nama kategori di API: IAM_USER_GROUP_MEMBERSHIP_CHECK

Pengguna IAM harus selalu menjadi bagian dari grup IAM untuk mematuhi praktik terbaik keamanan IAM.

Dengan menambahkan pengguna ke grup, Anda dapat berbagi kebijakan di antara jenis pengguna.

Rekomendasi: Memeriksa apakah pengguna IAM adalah anggota dari setidaknya satu grup IAM

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_iam_user" "example" {
  name = "test-iam-user"
  path = "/users/dev/"
}

resource "aws_iam_group" "example" {
  name = "Developers"
  path = "/users/dev/"
}

resource "aws_iam_user_group_membership" "example" {
  user   = aws_iam_user.example.name
  groups = [aws_iam_group.example.name]
}

Konsol AWS

Saat Anda menggunakan AWS Management Console untuk menghapus pengguna IAM, IAM akan otomatis menghapus informasi berikut untuk Anda:

  1. Pengguna
  2. Semua keanggotaan grup pengguna—yaitu, pengguna dihapus dari grup pengguna IAM yang menjadi anggotanya
  3. Setiap sandi yang terkait dengan pengguna
  4. Kunci akses apa pun milik pengguna
  5. Semua kebijakan inline yang disematkan di pengguna (kebijakan yang diterapkan ke pengguna melalui izin grup pengguna tidak terpengaruh)

Untuk menghapus pengguna IAM:

  1. Masuk ke Konsol Pengelolaan dan buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, pilih Users, lalu centang kotak di samping nama pengguna yang ingin Anda hapus.
  3. Di bagian atas halaman, pilih Hapus.
  4. Di kotak dialog konfirmasi, masukkan nama pengguna di kolom input teks untuk mengonfirmasi penghapusan pengguna.
  5. Pilih Hapus.

Untuk menambahkan pengguna ke grup pengguna IAM:

  1. Masuk ke Konsol Pengelolaan dan buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi, pilih Grup pengguna, lalu pilih nama grup.
  3. Pilih tab Pengguna, lalu pilih Tambahkan pengguna. Centang kotak di samping pengguna yang ingin Anda tambahkan.
  4. Pilih Tambahkan pengguna.

CLI AWS

Tidak seperti Amazon Web Services Management Console, saat menghapus pengguna secara terprogram, Anda harus menghapus item yang dilampirkan ke pengguna secara manual, atau penghapusan akan gagal.

Sebelum mencoba menghapus pengguna, hapus item berikut:

  1. Sandi ( DeleteLoginProfile )
  2. Kunci akses ( DeleteAccessKey )
  3. Sertifikat penandatanganan ( DeleteSigningCertificate )
  4. Kunci publik SSH ( DeleteSSHPublicKey )
  5. Kredensial Git ( DeleteServiceSpecificCredential )
  6. Perangkat autentikasi multi-faktor (MFA) ( DeactivateMFADevice , DeleteVirtualMFADevice )
  7. Kebijakan inline ( DeleteUserPolicy )
  8. Kebijakan terkelola yang dilampirkan ( DetachUserPolicy )
  9. Keanggotaan grup ( RemoveUserFromGroup )

Untuk menghapus pengguna, setelah menghapus semua item yang terpasang ke pengguna:

aws iam delete-user \
  --user-name "test-user"

Untuk menambahkan pengguna IAM ke grup IAM:

aws iam add-user-to-group \
  --group-name "test-group"
  --user-name "test-user"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam User Mfa Enabled

Nama kategori di API: IAM_USER_MFA_ENABLED

Autentikasi multi-faktor (MFA) adalah praktik terbaik yang menambahkan lapisan perlindungan ekstra di atas nama pengguna dan sandi. Dengan MFA, saat pengguna login ke AWS Management Console, mereka diwajibkan untuk memberikan kode autentikasi yang sensitif terhadap waktu, yang diberikan oleh perangkat virtual atau fisik terdaftar.

Rekomendasi: Memeriksa apakah autentikasi multi-faktor (MFA) pengguna AWS IAM diaktifkan atau tidak

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk Terraform, ada beberapa opsi untuk mengatasi tidak adanya perangkat MFA. Anda mungkin sudah memiliki struktur yang masuk akal untuk mengatur pengguna ke dalam grup dan kebijakan yang membatasi.

Contoh berikut menunjukkan cara:

  1. Buat pengguna.
  2. Buat profil login pengguna dengan Kunci Publik PGP.
  3. Buat grup dan kebijakan grup yang memungkinkan pengelolaan mandiri profil IAM.
  4. Melampirkan pengguna ke grup.
  5. Membuat perangkat MFA Virtual untuk pengguna.
  6. Berikan Kode QR dan sandi output kepada setiap pengguna.
variable "users" {
  type = set(string)
  default = [
    "test@example.com",
    "test2@example.com"
  ]
}

resource "aws_iam_user" "test_users" {
  for_each = toset(var.users)
  name     = each.key
}

resource "aws_iam_user_login_profile" "test_users_profile" {
  for_each                = var.users
  user                    = each.key
  # Key pair created using GnuPG, this is the public key
  pgp_key = file("path/to/gpg_pub_key_base64.pem")
  password_reset_required = true
  lifecycle {
    ignore_changes = [
      password_length,
      password_reset_required,
      pgp_key,
    ]
  }
}

resource "aws_iam_virtual_mfa_device" "test_mfa" {
  for_each                = toset(var.users)
  virtual_mfa_device_name = each.key
}

resource "aws_iam_group" "enforce_mfa_group" {
  name = "EnforceMFAGroup"
}

resource "aws_iam_group_membership" "enforce_mfa_group_membership" {
  name  = "EnforceMFAGroupMembership"
  group = aws_iam_group.enforce_mfa_group.name
  users = [for k in aws_iam_user.test_users : k.name]
}

resource "aws_iam_group_policy" "enforce_mfa_policy" {
  name   = "EnforceMFAGroupPolicy"
  group  = aws_iam_group.enforce_mfa_group.id
  policy = <<POLICY
{
  "Version": "2012-10-17",
  "Statement": [
    {
        "Sid": "AllowViewAccountInfo",
        "Effect": "Allow",
        "Action": [
            "iam:GetAccountPasswordPolicy",
            "iam:ListVirtualMFADevices"
        ],
        "Resource": "*"
    },
    {
        "Sid": "AllowManageOwnPasswords",
        "Effect": "Allow",
        "Action": [
            "iam:ChangePassword",
            "iam:GetUser"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnAccessKeys",
        "Effect": "Allow",
        "Action": [
            "iam:CreateAccessKey",
            "iam:DeleteAccessKey",
            "iam:ListAccessKeys",
            "iam:UpdateAccessKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSigningCertificates",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSigningCertificate",
            "iam:ListSigningCertificates",
            "iam:UpdateSigningCertificate",
            "iam:UploadSigningCertificate"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSSHPublicKeys",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSSHPublicKey",
            "iam:GetSSHPublicKey",
            "iam:ListSSHPublicKeys",
            "iam:UpdateSSHPublicKey",
            "iam:UploadSSHPublicKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnGitCredentials",
        "Effect": "Allow",
        "Action": [
            "iam:CreateServiceSpecificCredential",
            "iam:DeleteServiceSpecificCredential",
            "iam:ListServiceSpecificCredentials",
            "iam:ResetServiceSpecificCredential",
            "iam:UpdateServiceSpecificCredential"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnVirtualMFADevice",
        "Effect": "Allow",
        "Action": [
            "iam:CreateVirtualMFADevice",
            "iam:DeleteVirtualMFADevice"
        ],
        "Resource": "arn:aws:iam::*:mfa/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnUserMFA",
        "Effect": "Allow",
        "Action": [
            "iam:DeactivateMFADevice",
            "iam:EnableMFADevice",
            "iam:ListMFADevices",
            "iam:ResyncMFADevice"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "DenyAllExceptListedIfNoMFA",
        "Effect": "Deny",
        "NotAction": [
            "iam:CreateVirtualMFADevice",
            "iam:EnableMFADevice",
            "iam:GetUser",
            "iam:ListMFADevices",
            "iam:ListVirtualMFADevices",
            "iam:ResyncMFADevice",
            "sts:GetSessionToken"
        ],
        "Resource": "*",
        "Condition": {
            "BoolIfExists": {
                "aws:MultiFactorAuthPresent": "false"
            }
        }
    }
  ]
}
POLICY
}

output "user_password_map" {
  # Outputs a map in the format {"test@example.com": <PGPEncryptedPassword>, "test2@example.com": <PGPEncryptedPassword>}
  value = { for k, v in aws_iam_user_login_profile.test_users_profile : k => v.password }
}

output "user_qr_map" {
  # Outputs a map in the format {"test@example.com": <QRCode>, "test2@example.com": <QRCode>}
  value = { for k, v in aws_iam_virtual_mfa_device.test_mfa : k => v.qr_code_png }
}

Konsol AWS

Untuk mengaktifkan MFA bagi akun pengguna yang memiliki akses konsol AWS, lihat Mengaktifkan perangkat autentikasi multi-faktor (MFA) virtual (konsol) dalam dokumentasi AWS.

CLI AWS

Membuat perangkat MFA

aws iam create-virtual-mfa-device \
  --virtual-mfa-device-name "test@example.com" \
  --outfile ./QRCode.png \
  --bootstrap-method QRCodePNG

Mengaktifkan perangkat MFA untuk pengguna yang ada

aws iam enable-mfa-device \
  --user-name "test@example.com" \
  --serial-number "arn:aws:iam::123456976749:mfa/test@example.com" \
  --authentication-code1 123456 \
  --authentication-code2 654321

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Iam User Unused Credentials Check

Nama kategori di API: IAM_USER_UNUSED_CREDENTIALS_CHECK

Tindakan ini akan memeriksa sandi IAM atau kunci akses aktif yang belum digunakan dalam 90 hari terakhir.

Praktik terbaik merekomendasikan agar Anda menghapus, menonaktifkan, atau merotasi semua kredensial yang tidak digunakan selama 90 hari atau lebih. Hal ini mengurangi peluang kredensial yang terkait dengan akun yang disusupi atau ditinggalkan untuk digunakan.

Rekomendasi: Memeriksa apakah semua pengguna AWS IAM memiliki sandi atau kunci akses aktif yang belum digunakan dalam maxCredentialUsageAge hari (default-nya 90)

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk menghapus Kunci Akses yang sudah tidak berlaku yang dibuat melalui Terraform, hapus resource aws_iam_access_key dari modul Anda dan terapkan perubahan.

Untuk mereset sandi login pengguna IAM, gunakan -replace saat menjalankan terraform apply.

Misalkan profil login pengguna berikut

resource "aws_iam_user" "example" {
  name          = "test@example.com"
  path          = "/users/"
  force_destroy = true
}

resource "aws_iam_user_login_profile" "example" {
  user    = aws_iam_user.example.name
  pgp_key = "keybase:some_person_that_exists"
}

Jalankan perintah berikut untuk mereset sandi profil login pengguna

terraform apply -replace="aws_iam_user_login_profile.example"

Konsol AWS

Untuk menonaktifkan kredensial untuk akun yang tidak aktif:

  1. Buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Pilih Pengguna.
  3. Pilih nama pengguna yang memiliki kredensial yang sudah lebih dari 90 hari/terakhir digunakan.
  4. Pilih Kredensial keamanan.
  5. Untuk setiap kredensial login dan kunci akses yang belum digunakan setidaknya selama 90 hari, pilih Buat tidak aktif.

Untuk mewajibkan sandi baru dari pengguna konsol saat login berikutnya:

  1. Buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Pilih Pengguna.
  3. Pilih nama pengguna yang memiliki kredensial yang sudah lebih dari 90 hari/terakhir digunakan.
  4. Pilih Kredensial keamanan.
  5. Di bagian Kredensial login dan sandi konsol, pilih Kelola.
  6. Tetapkan sandi baru (dibuat otomatis atau kustom).
  7. Centang kotak untuk Wajibkan reset sandi.
  8. Pilih Terapkan.

CLI AWS

Untuk menonaktifkan Kunci Akses

aws iam update-access-key \
  --access-key-id <value> \
  --status "Inactive"

Untuk menghapus Kunci Akses

aws iam delete-access-key \
  --access-key-id <value>

Untuk mereset sandi profil login pengguna

aws iam update-login-profile \
  --user-name "test@example.com" \
  --password <temporary_password> \
  --password-reset-required

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Kms Cmk Not Scheduled For Deletion

Nama kategori di API: KMS_CMK_NOT_SCHEDULED_FOR_DELETION

Kontrol ini memeriksa apakah kunci KMS dijadwalkan untuk dihapus. Kontrol akan gagal jika kunci KMS dijadwalkan untuk dihapus.

Kunci KMS tidak dapat dipulihkan setelah dihapus. Data yang dienkripsi dengan kunci KMS juga tidak dapat dipulihkan secara permanen jika kunci KMS dihapus. Jika data yang penting telah dienkripsi dengan kunci KMS yang dijadwalkan untuk dihapus, pertimbangkan untuk mendekripsi data atau mengenkripsi ulang data dengan kunci KMS baru, kecuali jika Anda sengaja melakukan penghapusan kriptografis.

Saat kunci KMS dijadwalkan untuk dihapus, periode tunggu wajib diterapkan untuk memberi waktu guna membatalkan penghapusan, jika kunci dijadwalkan secara keliru. Periode tunggu default adalah 30 hari, tetapi dapat dikurangi menjadi 7 hari saat kunci KMS dijadwalkan untuk dihapus. Selama periode tunggu, penghapusan terjadwal dapat dibatalkan dan kunci KMS tidak akan dihapus.

Untuk informasi tambahan terkait penghapusan kunci KMS, lihat Menghapus kunci KMS di Panduan Developer AWS Key Management Service.

Rekomendasi: Memeriksa apakah semua CMK tidak dijadwalkan untuk dihapus

Untuk membatalkan penghapusan kunci KMS terjadwal, lihat Untuk membatalkan penghapusan kunci di bagian Menjadwalkan dan membatalkan penghapusan kunci (konsol) di Panduan Developer AWS Key Management Service.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Lambda Concurrency Check

Nama kategori di API: LAMBDA_CONCURRENCY_CHECK

Memeriksa apakah fungsi Lambda dikonfigurasi dengan batas eksekusi serentak tingkat fungsi. Aturannya adalah NON_COMPLIANT jika fungsi Lambda tidak dikonfigurasi dengan batas eksekusi serentak tingkat fungsi.

Rekomendasi: Memeriksa apakah fungsi Lambda dikonfigurasi dengan batas eksekusi serentak tingkat fungsi

Untuk mengonfigurasi batas eksekusi serentak tingkat fungsi, lihat Mengonfigurasi konkurensi yang dicadangkan dalam dokumentasi AWS Lambda.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Lambda Dlq Check

Nama kategori di API: LAMBDA_DLQ_CHECK

Memeriksa apakah fungsi Lambda dikonfigurasi dengan antrean pesan yang dihentikan pengirimannya. Aturannya adalah NON_COMPLIANT jika fungsi Lambda tidak dikonfigurasi dengan antrean pesan yang dihentikan pengirimannya.

Rekomendasi: Memeriksa apakah fungsi Lambda dikonfigurasi dengan antrean pesan yang dihentikan pengirimannya

Untuk mengupdate fungsi Lambda agar menggunakan DLQ, lihat Antrean pesan yang tidak terkirim dalam dokumentasi AWS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Lambda Function Public Access Prohibited

Nama kategori di API: LAMBDA_FUNCTION_PUBLIC_ACCESS_PROHIBITED

Praktik terbaik AWS merekomendasikan agar fungsi Lambda tidak diekspos secara publik. Kebijakan ini memeriksa semua fungsi Lambda yang di-deploy di semua wilayah yang diaktifkan dalam akun Anda dan akan gagal jika dikonfigurasi untuk mengizinkan akses publik.

Rekomendasi: Memeriksa apakah kebijakan yang disematkan ke fungsi Lambda melarang akses publik

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Contoh berikut memberikan contoh penggunaan Terraform untuk menyediakan peran IAM yang membatasi akses ke fungsi Lambda dan melampirkan peran tersebut ke fungsi Lambda

resource "aws_iam_role" "iam_for_lambda" {
  name = "iam_for_lambda"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}

resource "aws_lambda_function" "test_lambda" {
  filename      = "lambda_function_payload.zip"
  function_name = "lambda_function_name"
  role          = aws_iam_role.iam_for_lambda.arn
  handler       = "index.test"

  source_code_hash = filebase64sha256("lambda_function_payload.zip")

  runtime = "nodejs12.x"

}

Konsol AWS

Jika fungsi Lambda gagal dalam kontrol ini, hal ini menunjukkan bahwa pernyataan kebijakan berbasis resource untuk fungsi Lambda mengizinkan akses publik.

Untuk memperbaiki masalah ini, Anda harus memperbarui kebijakan untuk menghapus izin atau menambahkan kondisi AWS:SourceAccount. Anda hanya dapat memperbarui kebijakan berbasis resource dari Lambda API.

Petunjuk berikut menggunakan konsol untuk meninjau kebijakan dan Antarmuka Command Line AWS untuk menghapus izin.

Untuk melihat kebijakan berbasis resource untuk fungsi Lambda

  1. Buka konsol AWS Lambda di https://console.aws.amazon.com/lambda/.
  2. Di panel navigasi, pilih Fungsi.
  3. Pilih fungsi.
  4. Pilih Izin. Kebijakan berbasis resource menunjukkan izin yang diterapkan saat akun atau layanan AWS lain mencoba mengakses fungsi.
  5. Periksa kebijakan berbasis resource.
  6. Identifikasi pernyataan kebijakan yang memiliki nilai kolom Akun utama yang membuat kebijakan menjadi publik. Misalnya, mengizinkan "*" atau { "AWS": "*" }.

Anda tidak dapat mengedit kebijakan dari konsol. Untuk menghapus izin dari fungsi, Anda menggunakan perintah remove-permission dari AWS CLI.

Perhatikan nilai ID pernyataan (Sid) untuk pernyataan yang ingin Anda hapus.

CLI AWS

Untuk menggunakan CLI guna menghapus izin dari fungsi Lambda, berikan perintah remove-permission sebagai berikut.

aws lambda remove-permission \
--function-name <value> \
--statement-id <value>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Lambda Inside Vpc

Nama kategori di API: LAMBDA_INSIDE_VPC

Memeriksa apakah fungsi Lambda berada di VPC. Anda mungkin melihat temuan yang gagal untuk resource Lambda@Edge.

Pemeriksaan ini tidak mengevaluasi konfigurasi perutean subnet VPC untuk menentukan keterjangkauan publik.

Rekomendasi: Memeriksa apakah fungsi Lambda ada dalam VPC

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk mengonfigurasi fungsi agar terhubung ke subnet pribadi di virtual private cloud (VPC) di akun Anda:

  1. Buka konsol AWS Lambda di https://console.aws.amazon.com/lambda/.
  2. Buka Fungsi, lalu pilih fungsi Lambda Anda.
  3. Scroll ke Jaringan, lalu pilih VPC dengan persyaratan konektivitas fungsi.
  4. Untuk menjalankan fungsi dalam mode ketersediaan tinggi, Security Hub merekomendasikan agar Anda memilih minimal dua subnet.
  5. Pilih minimal satu grup keamanan yang memiliki persyaratan konektivitas fungsi.
  6. Pilih Simpan.

Untuk informasi selengkapnya, lihat bagian tentang mengonfigurasi fungsi Lambda untuk mengakses resource di VPC dalam Panduan Developer AWS Lambda.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Mfa Delete Enabled S3 Buckets

Nama kategori di API: MFA_DELETE_ENABLED_S3_BUCKETS

Setelah Hapus MFA diaktifkan di bucket S3 sensitif dan rahasia, pengguna harus memiliki dua bentuk autentikasi.

Rekomendasi: Pastikan Hapus MFA diaktifkan di bucket S3

Lakukan langkah-langkah di bawah untuk mengaktifkan penghapusan MFA di bucket S3.

Catatan:
-Anda tidak dapat mengaktifkan Penghapusan MFA menggunakan AWS Management Console. Anda harus menggunakan AWS CLI atau API.
-Anda harus menggunakan akun 'root' untuk mengaktifkan Hapus MFA di bucket S3.

Dari Command line:

  1. Jalankan perintah s3api put-bucket-versioning
aws s3api put-bucket-versioning --profile my-root-profile --bucket Bucket_Name --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa “arn:aws:iam::aws_account_id:mfa/root-account-mfa-device passcode”

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Mfa Enabled Root User Account

Nama kategori di API: MFA_ENABLED_ROOT_USER_ACCOUNT

Akun pengguna 'root' adalah pengguna dengan hak istimewa paling tinggi di akun AWS. Autentikasi Multi-faktor (MFA) menambahkan lapisan perlindungan tambahan di atas nama pengguna dan sandi. Dengan MFA diaktifkan, saat pengguna login ke situs AWS, mereka akan diminta untuk memasukkan nama pengguna dan sandi serta kode autentikasi dari perangkat AWS MFA mereka.

Catatan: Jika MFA virtual digunakan untuk akun 'root', sebaiknya perangkat yang digunakan BUKAN perangkat pribadi, tetapi perangkat seluler khusus (tablet atau ponsel) yang dikelola agar tetap terisi daya dan aman, terlepas dari perangkat pribadi masing-masing. ("MFA virtual non-pribadi") Hal ini mengurangi risiko kehilangan akses ke MFA karena kehilangan perangkat, menukarkan perangkat, atau jika individu yang memiliki perangkat tidak lagi bekerja di perusahaan.

Rekomendasi: Pastikan MFA diaktifkan untuk akun pengguna 'root'

Lakukan hal berikut untuk menetapkan MFA untuk akun pengguna 'root':

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam/.

Catatan: untuk mengelola perangkat MFA untuk akun AWS 'root', Anda harus menggunakan kredensial akun 'root' untuk login ke AWS. Anda tidak dapat mengelola perangkat MFA untuk akun 'root' menggunakan kredensial lain.

  1. Pilih Dashboard , dan di bagian Security Status , luaskan Activate MFA di akun root Anda.
  2. Pilih Activate MFA
  3. Di wizard, pilih perangkat A virtual MFA, lalu pilih Next Step .
  4. IAM membuat dan menampilkan informasi konfigurasi untuk perangkat MFA virtual, termasuk gambar kode QR. Grafik ini adalah representasi dari 'kunci konfigurasi rahasia' yang tersedia untuk entri manual di perangkat yang tidak mendukung kode QR.
  5. Buka aplikasi MFA virtual Anda. (Untuk daftar aplikasi yang dapat Anda gunakan untuk menghosting perangkat MFA virtual, lihat Aplikasi MFA Virtual.) Jika aplikasi MFA virtual mendukung beberapa akun (beberapa perangkat MFA virtual), pilih opsi untuk membuat akun baru (perangkat MFA virtual baru).
  6. Tentukan apakah aplikasi MFA mendukung kode QR, lalu lakukan salah satu tindakan berikut:
  • Gunakan aplikasi untuk memindai kode QR. Misalnya, Anda dapat memilih ikon kamera atau memilih opsi yang mirip dengan Pindai kode, lalu menggunakan kamera perangkat untuk memindai kode.
  • Di wizard Kelola Perangkat MFA, pilih Tampilkan kunci rahasia untuk konfigurasi manual, lalu ketik kunci konfigurasi rahasia ke dalam aplikasi MFA Anda.

Setelah selesai, perangkat MFA virtual akan mulai membuat sandi sekali pakai.

Di wizard Kelola Perangkat MFA, di kotak Authentication Code 1, ketik sandi sekali pakai yang saat ini muncul di perangkat MFA virtual. Tunggu hingga 30 detik agar perangkat membuat sandi sekali pakai baru. Kemudian, ketik sandi sekali pakai kedua ke dalam kotak Authentication Code 2. Pilih Tetapkan MFA Virtual.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Multi Factor Authentication Mfa Enabled All Iam Users Console

Nama kategori di API: MULTI_FACTOR_AUTHENTICATION_MFA_ENABLED_ALL_IAM_USERS_CONSOLE

Autentikasi Multi-Faktor (MFA) menambahkan lapisan jaminan autentikasi tambahan di luar kredensial tradisional. Dengan MFA diaktifkan, saat pengguna login ke AWS Console, mereka akan diminta memasukkan nama pengguna dan sandi serta kode autentikasi dari token MFA fisik atau virtual mereka. Sebaiknya MFA diaktifkan untuk semua akun yang memiliki sandi konsol.

Rekomendasi: Pastikan autentikasi multi-faktor (MFA) diaktifkan untuk semua pengguna IAM yang memiliki sandi konsol

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console dan buka konsol IAM di 'https://console.aws.amazon.com/iam/'
  2. Di panel kiri, pilih Users.
  3. Dalam daftar User Name, pilih nama pengguna MFA yang diinginkan.
  4. Pilih tab Security Credentials, lalu pilih Manage MFA Device.
  5. Di Manage MFA Device wizard, pilih perangkat Virtual MFA, lalu pilih Continue.

IAM membuat dan menampilkan informasi konfigurasi untuk perangkat MFA virtual, termasuk gambar kode QR. Grafik ini adalah representasi dari 'kunci konfigurasi rahasia' yang tersedia untuk entri manual di perangkat yang tidak mendukung kode QR.

  1. Buka aplikasi MFA virtual Anda. (Untuk daftar aplikasi yang dapat Anda gunakan untuk menghosting perangkat MFA virtual, lihat Aplikasi MFA Virtual di https://aws.amazon.com/iam/details/mfa/#Virtual_MFA_Applications). Jika aplikasi MFA virtual mendukung beberapa akun (beberapa perangkat MFA virtual), pilih opsi untuk membuat akun baru (perangkat MFA virtual baru).
  2. Tentukan apakah aplikasi MFA mendukung kode QR, lalu lakukan salah satu tindakan berikut:
  • Gunakan aplikasi untuk memindai kode QR. Misalnya, Anda dapat memilih ikon kamera atau memilih opsi yang mirip dengan Pindai kode, lalu menggunakan kamera perangkat untuk memindai kode.
  • Di wizard Kelola Perangkat MFA, pilih Tampilkan kunci rahasia untuk konfigurasi manual, lalu ketik kunci konfigurasi rahasia ke dalam aplikasi MFA Anda.

Setelah selesai, perangkat MFA virtual akan mulai membuat sandi sekali pakai.

  1. Di Manage MFA Device wizard, di MFA Code 1 box, ketik one-time password yang saat ini muncul di perangkat MFA virtual. Tunggu hingga 30 detik agar perangkat membuat sandi sekali pakai baru. Kemudian, ketik one-time password kedua ke dalam MFA Code 2 box.

  2. Klik Assign MFA.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

No Network Acls Allow Ingress 0 0 0 0 Remote Server Administration

Nama kategori di API: NO_NETWORK_ACLS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

Fungsi Daftar Kontrol Akses Jaringan (NACL) menyediakan pemfilteran stateless traffic jaringan masuk dan keluar ke resource AWS. Sebaiknya tidak ada NACL yang mengizinkan akses masuk yang tidak dibatasi ke port administrasi server jarak jauh, seperti SSH ke port 22 dan RDP ke port 3389, menggunakan protokol TDP (6), UDP (17), atau ALL (-1)

Rekomendasi: Pastikan tidak ada ACL Jaringan yang mengizinkan ingress dari 0.0.0.0/0 ke port administrasi server jarak jauh

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Lakukan tindakan berikut:
1. Login ke AWS Management Console di https://console.aws.amazon.com/vpc/home
2. Di panel kiri, klik Network ACLs
3. Untuk setiap ACL jaringan yang akan diperbaiki, lakukan tindakan berikut:
- Pilih ACL jaringan
- Klik tab Inbound Rules
- Klik Edit inbound rules
- A) Perbarui kolom Sumber ke rentang selain 0.0.0.0/0, atau, B) Klik Delete untuk menghapus aturan masuk yang melanggar
- Klik Save

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

No Root User Account Access Key Exists

Nama kategori di API: NO_ROOT_USER_ACCOUNT_ACCESS_KEY_EXISTS

Akun pengguna 'root' adalah pengguna dengan hak istimewa paling tinggi di akun AWS. Kunci Akses AWS memberikan akses terprogram ke akun AWS tertentu. Sebaiknya hapus semua kunci akses yang terkait dengan akun pengguna 'root'.

Rekomendasi: Pastikan tidak ada kunci akses akun pengguna 'root'

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console sebagai 'root' dan buka konsol IAM di https://console.aws.amazon.com/iam/.
  2. Klik <root_account> di kanan atas dan pilih My Security Credentials dari menu drop-down.
  3. Di layar pop-out, klik Continue to Security Credentials.
  4. Klik Access Keys (Access Key ID dan Secret Access Key).
  5. Di kolom Status (jika ada Kunci yang aktif).
  6. Klik Delete (Catatan: Kunci yang dihapus tidak dapat dipulihkan).

Catatan: Meskipun kunci dapat dinonaktifkan, kunci yang tidak aktif ini akan tetap muncul di perintah CLI dari prosedur audit, dan dapat menyebabkan kunci salah ditandai sebagai tidak mematuhi kebijakan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

No Security Groups Allow Ingress 0 0 0 0 Remote Server Administration

Nama kategori di API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk dan keluar ke resource AWS. Sebaiknya tidak ada grup keamanan yang mengizinkan akses masuk yang tidak dibatasi ke port administrasi server jarak jauh, seperti SSH ke port 22 dan RDP ke port 3389, menggunakan protokol TDP (6), UDP (17), atau ALL (-1)

Rekomendasi: Pastikan tidak ada grup keamanan yang mengizinkan ingress dari 0.0.0.0/0 ke port administrasi server jarak jauh

Lakukan hal berikut untuk menerapkan status yang ditentukan:

  1. Login ke AWS Management Console di https://console.aws.amazon.com/vpc/home
  2. Di panel kiri, klik Security Groups
  3. Untuk setiap grup keamanan, lakukan hal berikut:
  4. Pilih grup keamanan
  5. Klik tab Inbound Rules
  6. Klik tombol Edit inbound rules
  7. Identifikasi aturan yang akan diedit atau dihapus
  8. A) Perbarui kolom Sumber ke rentang selain 0.0.0.0/0, atau, B) Klik Delete untuk menghapus aturan masuk yang melanggar
  9. Klik Save rules

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

No Security Groups Allow Ingress 0 Remote Server Administration

Nama kategori di API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_REMOTE_SERVER_ADMINISTRATION

Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk dan keluar ke resource AWS. Sebaiknya tidak ada grup keamanan yang mengizinkan akses masuk yang tidak dibatasi ke port administrasi server jarak jauh, seperti SSH ke port 22 dan RDP ke port 3389.

Rekomendasi: Pastikan tidak ada grup keamanan yang mengizinkan ingress dari ::/0 ke port administrasi server jarak jauh

Lakukan hal berikut untuk menerapkan status yang ditentukan:

  1. Login ke AWS Management Console di https://console.aws.amazon.com/vpc/home
  2. Di panel kiri, klik Security Groups
  3. Untuk setiap grup keamanan, lakukan hal berikut:
  4. Pilih grup keamanan
  5. Klik tab Inbound Rules
  6. Klik tombol Edit inbound rules
  7. Identifikasi aturan yang akan diedit atau dihapus
  8. A) Perbarui kolom Sumber ke rentang selain ::/0, atau, B) Klik Delete untuk menghapus aturan masuk yang melanggar
  9. Klik Save rules

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

One Active Access Key Available Any Single Iam User

Nama kategori di API: ONE_ACTIVE_ACCESS_KEY_AVAILABLE_ANY_SINGLE_IAM_USER

Kunci akses adalah kredensial jangka panjang untuk pengguna IAM atau pengguna 'root' akun AWS. Anda dapat menggunakan kunci akses untuk menandatangani permintaan terprogram ke AWS CLI atau AWS API (secara langsung atau menggunakan AWS SDK)

Rekomendasi: Pastikan hanya ada satu kunci akses aktif yang tersedia untuk pengguna IAM tunggal apa pun

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console dan buka dasbor IAM di https://console.aws.amazon.com/iam/.
  2. Di panel navigasi kiri, pilih Users.
  3. Klik nama pengguna IAM yang ingin Anda periksa.
  4. Di halaman konfigurasi pengguna IAM, pilih tab Security Credentials.
  5. Di bagian Access Keys, pilih satu kunci akses yang berumur kurang dari 90 hari. Ini harus menjadi satu-satunya kunci aktif yang digunakan oleh pengguna IAM ini untuk mengakses resource AWS secara terprogram. Uji aplikasi Anda untuk memastikan kunci akses yang dipilih berfungsi.
  6. Di bagian Access Keys yang sama, identifikasi kunci akses non-operasional Anda (selain yang dipilih) dan nonaktifkan dengan mengklik link Make Inactive.
  7. Jika Anda menerima kotak konfirmasi Change Key Status, klik Deactivate untuk menonaktifkan kunci yang dipilih.
  8. Ulangi langkah no. 3 – 7 untuk setiap pengguna IAM di akun AWS Anda.

CLI AWS

  1. Dengan menggunakan informasi pengguna IAM dan kunci akses yang diberikan di Audit CLI, pilih satu kunci akses yang berusia kurang dari 90 hari. Ini harus menjadi satu-satunya kunci aktif yang digunakan oleh pengguna IAM ini untuk mengakses resource AWS secara terprogram. Uji aplikasi Anda untuk memastikan kunci akses yang dipilih berfungsi.

  2. Jalankan perintah update-access-key di bawah menggunakan nama pengguna IAM dan ID kunci akses non-operasional untuk menonaktifkan kunci yang tidak diperlukan. Lihat bagian Audit untuk mengidentifikasi ID kunci akses yang tidak diperlukan untuk pengguna IAM yang dipilih

Catatan - perintah tidak menampilkan output apa pun:

aws iam update-access-key --access-key-id <access-key-id> --status Inactive --user-name <user-name>
  1. Untuk mengonfirmasi bahwa pasangan kunci akses yang dipilih telah berhasil deactivated, jalankan lagi perintah audit list-access-keys untuk Pengguna IAM tersebut:
aws iam list-access-keys --user-name <user-name>
  • Output perintah akan mengekspos metadata untuk setiap kunci akses yang terkait dengan pengguna IAM. Jika pasangan kunci non-operasional Status disetel ke Inactive, kunci telah berhasil dinonaktifkan dan konfigurasi akses pengguna IAM kini mematuhi rekomendasi ini.
  1. Ulangi langkah no. 1 – 3 untuk setiap pengguna IAM di akun AWS Anda.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Public Access Given Rds Instance

Nama kategori di API: PUBLIC_ACCESS_GIVEN_RDS_INSTANCE

Pastikan dan verifikasi bahwa instance database RDS yang disediakan di akun AWS Anda membatasi akses tidak sah untuk meminimalkan risiko keamanan. Untuk membatasi akses ke instance database RDS yang dapat diakses secara publik, Anda harus menonaktifkan tanda Dapat Diakses Secara Publik pada database dan memperbarui grup keamanan VPC yang terkait dengan instance.

Rekomendasi: Pastikan akses publik tidak diberikan ke Instance RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke konsol pengelolaan AWS, lalu buka dasbor RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pada Dasbor RDS, klik Databases.
  3. Pilih instance RDS yang ingin Anda perbarui.
  4. Klik Modify dari menu atas dasbor.
  5. Di panel Ubah Instance DB, pada bagian Connectivity, klik Additional connectivity configuration dan perbarui nilai untuk Publicly Accessible menjadi Tidak dapat diakses secara publik untuk membatasi akses publik. Ikuti langkah-langkah di bawah untuk memperbarui konfigurasi subnet:
    - Pilih tab Connectivity and security, lalu klik nilai atribut VPC di dalam bagian Networking.
    - Pilih tab Details dari panel bawah dasbor VPC, lalu klik Nilai atribut konfigurasi tabel rute.
    - Di halaman detail Tabel rute, pilih tab Rute dari panel bawah dasbor, lalu klik Edit routes.
    - Di halaman Edit rute, perbarui Tujuan Target yang ditetapkan ke igw-xxxxx dan klik rute Save.
  6. Di panel Ubah Instance DB, klik Continue dan Di bagian Penjadwalan perubahan, lakukan salah satu tindakan berikut berdasarkan persyaratan Anda:
    - Pilih Terapkan selama periode pemeliharaan terjadwal berikutnya untuk menerapkan perubahan secara otomatis selama periode pemeliharaan terjadwal berikutnya.
    - Pilih Terapkan segera untuk langsung menerapkan perubahan. Dengan opsi ini, setiap perubahan yang tertunda akan diterapkan secara asinkron sesegera mungkin, terlepas dari setelan periode pemeliharaan untuk instance database RDS ini. Perhatikan bahwa setiap perubahan yang tersedia di antrean modifikasi yang tertunda juga akan diterapkan. Jika ada modifikasi yang tertunda yang memerlukan periode nonaktif, memilih opsi ini dapat menyebabkan periode nonaktif yang tidak terduga untuk aplikasi.
  7. Ulangi langkah 3 hingga 6 untuk setiap instance RDS yang tersedia di region saat ini.
  8. Ubah region AWS dari menu navigasi untuk mengulangi proses ini di region lain.

CLI AWS

  1. Jalankan perintah describe-db-instances untuk menampilkan semua ID nama database RDS, yang tersedia di region AWS yang dipilih:
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. Output perintah akan menampilkan setiap ID instance database.
  2. Jalankan perintah modify-db-instance untuk mengubah konfigurasi instance RDS yang dipilih. Kemudian, gunakan perintah berikut untuk menonaktifkan flag Publicly Accessible untuk instance RDS yang dipilih. Perintah ini menggunakan flag apply-immediately. Jika Anda menginginkan to avoid any downtime --no-apply-immediately flag can be used:
aws rds modify-db-instance --region <region-name> --db-instance-identifier <db-name> --no-publicly-accessible --apply-immediately
  1. Output perintah akan menampilkan konfigurasi PubliclyAccessible di bagian nilai tertunda dan akan diterapkan pada waktu yang ditentukan.
  2. Memperbarui Tujuan Internet Gateway melalui AWS CLI saat ini tidak didukung. Untuk memperbarui informasi tentang Internet Gateway, gunakan Prosedur Konsol AWS.
  3. Ulangi langkah 1 hingga 5 untuk setiap instance RDS yang disediakan di region saat ini.
  4. Ubah region AWS menggunakan filter --region untuk mengulangi proses untuk region lain.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rds Enhanced Monitoring Enabled

Nama kategori di API: RDS_ENHANCED_MONITORING_ENABLED

Pemantauan yang ditingkatkan memberikan metrik real-time pada sistem operasi tempat instance RDS berjalan, melalui agen yang diinstal di instance.

Untuk mengetahui detail selengkapnya, lihat Memantau metrik OS dengan Enhanced Monitoring.

Rekomendasi: Memeriksa apakah pemantauan yang ditingkatkan diaktifkan untuk semua instance DB RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, aktifkan Enhanced Monitoring di instance RDS Anda sebagai berikut:

Buat Peran IAM untuk RDS:

resource "aws_iam_role" "rds_logging" {
  name = "CustomRoleForRDSMonitoring"
  assume_role_policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Action = "sts:AssumeRole"
        Effect = "Allow"
        Sid    = "CustomRoleForRDSLogging"
        Principal = {
          Service = "monitoring.rds.amazonaws.com"
        }
      },
    ]
  })
}

Ambil Kebijakan Terkelola AWS untuk Pemantauan yang Ditingkatkan RDS:

data "aws_iam_policy" "rds_logging" {
  name = "AmazonRDSEnhancedMonitoringRole"
}

Lampirkan kebijakan ke peran:

resource "aws_iam_policy_attachment" "rds_logging" {
  name       = "AttachRdsLogging"
  roles      = [aws_iam_role.rds_logging.name]
  policy_arn = data.aws_iam_policy.rds_logging.arn
}

Tentukan interval pemantauan dan ARN peran pemantauan ke instance RDS yang melanggar untuk mengaktifkan Pemantauan yang Ditingkatkan:

resource "aws_db_instance" "default" {
  identifier           = "test-rds"
  allocated_storage    = 10
  engine               = "mysql"
  engine_version       = "5.7"
  instance_class       = "db.t3.micro"
  db_name              = "mydb"
  username             = "foo"
  password             = "foobarbaz"
  parameter_group_name = "default.mysql5.7"
  skip_final_snapshot  = true
  monitoring_interval  = 60
  monitoring_role_arn  = aws_iam_role.rds_logging.arn
}

Konsol AWS

Anda dapat mengaktifkan Enhanced Monitoring saat membuat instance DB, cluster DB Multi-AZ, atau replika baca, atau saat mengubah instance DB atau cluster DB Multi-AZ. Jika mengubah instance DB untuk mengaktifkan Pemantauan yang Ditingkatkan, Anda tidak perlu memulai ulang instance DB agar perubahan tersebut diterapkan.

Anda dapat mengaktifkan Pemantauan yang Ditingkatkan di konsol RDS saat melakukan salah satu tindakan berikut di halaman Database:

  • Membuat instance DB atau cluster DB Multi-AZ - Pilih Buat database.
  • Membuat replika baca - Pilih Tindakan, lalu Buat replika baca.
  • Ubah instance DB atau cluster DB Multi-AZ - Pilih Ubah.

Untuk mengaktifkan atau menonaktifkan Pemantauan yang Ditingkatkan di konsol RDS

  1. Scroll ke Konfigurasi tambahan.
  2. Di Pemantauan, pilih Aktifkan Pemantauan yang Ditingkatkan untuk instance DB atau replika baca Anda. Untuk menonaktifkan Pemantauan yang Ditingkatkan, pilih Nonaktifkan Pemantauan yang Ditingkatkan.
  3. Tetapkan properti Peran Pemantauan ke peran IAM yang Anda buat untuk mengizinkan Amazon RDS berkomunikasi dengan Amazon CloudWatch Logs untuk Anda, atau pilih Default agar RDS membuat peran untuk Anda bernama rds-monitoring-role.
  4. Tetapkan properti Granularitas ke interval, dalam detik, di antara titik saat metrik dikumpulkan untuk instance DB atau replika baca Anda. Properti Granularitas dapat disetel ke salah satu nilai berikut: 1, 5, 10, 15, 30, atau 60. Konsol RDS dimuat ulang paling cepat setiap 5 detik. Jika Anda menetapkan tingkat perincian ke 1 detik di konsol RDS, Anda masih akan melihat metrik yang diperbarui hanya setiap 5 detik. Anda dapat mengambil pembaruan metrik 1 detik menggunakan CloudWatch Logs.

CLI AWS

Buat peran IAM RDS:

aws iam create-role \
  --role-name "CustomRoleForRDSMonitoring" \
  --assume-role-policy-document file://rds-assume-role.json

Lampirkan kebijakan AmazonRDSEnhancedMonitoringRole ke peran:

aws iam attach-role-policy \
  --role-name "CustomRoleForRDSMonitoring"\
  --policy-arn "arn:aws:iam::aws:policy/service-role/AmazonRDSEnhancedMonitoringRole"

Ubah instance RDS untuk mengaktifkan Enhanced Monitoring, dengan menetapkan --monitoring-interval dan --monitoring-role-arn:

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --monitoring-interval 30 \
  --monitoring-role-arn "arn:aws:iam::<account_id>:role/CustomRoleForRDSMonitoring"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rds Instance Deletion Protection Enabled

Nama kategori di API: RDS_INSTANCE_DELETION_PROTECTION_ENABLED

Mengaktifkan perlindungan penghapusan instance adalah lapisan perlindungan tambahan terhadap penghapusan database secara tidak sengaja atau penghapusan oleh entitas yang tidak berwenang.

Saat perlindungan penghapusan diaktifkan, instance DB RDS tidak dapat dihapus. Sebelum permintaan penghapusan berhasil, perlindungan penghapusan harus dinonaktifkan.

Rekomendasi: Memeriksa apakah perlindungan penghapusan diaktifkan untuk semua instance RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, tetapkan deletion_protection ke true di resource aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  deletion_protection = true
}

Konsol AWS

Untuk mengaktifkan perlindungan penghapusan untuk instance DB RDS

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Database, lalu pilih instance DB yang ingin Anda ubah.
  3. Pilih Ubah.
  4. Di bagian Perlindungan penghapusan, pilih Aktifkan perlindungan penghapusan.
  5. Pilih Lanjutkan.
  6. Di bagian Penjadwalan perubahan, pilih waktu untuk menerapkan perubahan. Opsi yang tersedia adalah Terapkan selama periode pemeliharaan terjadwal berikutnya atau Terapkan segera.
  7. Pilih Ubah Instance DB.

CLI AWS

Hal yang sama berlaku untuk AWS CLI. Tetapkan --deletion-protection seperti di bawah ini.

aws rds modify-db-instance \
  --db-instance-identifier = "test-rds" \
  --deletion-protection

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rds In Backup Plan

Nama kategori di API: RDS_IN_BACKUP_PLAN

Pemeriksaan ini mengevaluasi apakah instance DB Amazon RDS tercakup dalam rencana pencadangan. Kontrol ini gagal jika instance DB RDS tidak dicakup oleh rencana cadangan.

AWS Backup adalah layanan pencadangan terkelola sepenuhnya yang memusatkan dan mengotomatiskan pencadangan data di seluruh layanan AWS. Dengan AWS Backup, Anda dapat membuat kebijakan pencadangan yang disebut rencana pencadangan. Anda dapat menggunakan rencana ini untuk menentukan persyaratan pencadangan, seperti frekuensi pencadangan data dan berapa lama pencadangan tersebut akan disimpan. Menyertakan instance DB RDS dalam rencana pencadangan membantu Anda melindungi data dari kehilangan atau penghapusan yang tidak disengaja.

Rekomendasi: Instance DB RDS harus dicakup oleh rencana cadangan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, tetapkan backup_retention_period ke nilai yang lebih besar dari 7 di resource aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other Configuration ...
  backup_retention_period = 7
}

Konsol AWS

Untuk langsung mengaktifkan pencadangan otomatis

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Database, lalu pilih instance DB yang ingin Anda ubah.
  3. Pilih Ubah untuk membuka halaman Ubah Instance DB.
  4. Di bagian Periode Retensi Cadangan, pilih nilai positif yang bukan nol, misalnya 30 hari, lalu pilih Lanjutkan.
  5. Pilih bagian Penjadwalan perubahan dan pilih waktu untuk menerapkan perubahan: Anda dapat memilih untuk Menerapkan selama periode pemeliharaan terjadwal berikutnya atau Menerapkan segera.
  6. Kemudian, di halaman konfirmasi, pilih Ubah Instance DB untuk menyimpan perubahan dan mengaktifkan pencadangan otomatis.

CLI AWS

Hal yang sama berlaku untuk AWS CLI. Untuk mengaktifkan pencadangan otomatis, ubah backup-retention-period ke nilai yang lebih besar dari 0 (default).

aws rds modify-db-instance --db-instance-identifier "test-rds" --backup-retention-period 7

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rds Logging Enabled

Nama kategori di API: RDS_LOGGING_ENABLED

Tindakan ini memeriksa apakah log Amazon RDS berikut diaktifkan dan dikirim ke CloudWatch.

Database RDS harus mengaktifkan log yang relevan. Logging database memberikan catatan mendetail tentang permintaan yang dibuat ke RDS. Log database dapat membantu audit keamanan dan akses serta dapat membantu mendiagnosis masalah ketersediaan.

Rekomendasi: Memeriksa apakah log yang diekspor diaktifkan untuk semua instance DB RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_db_instance" "example" {
  # ... other configuration for MySQL ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
}

resource "aws_db_parameter_group" "example" {
  name   = "${aws_db_instance.example.dbInstanceIdentifier}-parameter-group"
  family = "mysql5.7"

  parameter {
    name  = "general_log"
    value = 1
  }

  parameter {
    name  = "slow_query_log"
    value = 1
  }

  parameter {
    name  = "log_output"
    value = "FILE"
  }
}

Untuk MariaDB, buat juga grup opsi kustom dan tetapkan option_group_name di resource aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration for MariaDB ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
  option_group_name               = aws_db_option_group.example.name
}

resource "aws_db_option_group" "example" {
  name                     = "mariadb-option-group-for-logs"
  option_group_description = "MariaDB Option Group for Logs"
  engine_name              = "mariadb"
  option {
    option_name = "MARIADB_AUDIT_PLUGIN"
    option_settings {
      name  = "SERVER_AUDIT_EVENTS"
      value = "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  }
}

Konsol AWS

Untuk membuat grup parameter DB kustom

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Grup parameter.
  3. Pilih Buat grup parameter.
  4. Di daftar Parameter group family, pilih parameter group family DB.
  5. Dalam daftar Jenis, pilih Grup Parameter DB.
  6. Di Group name, masukkan nama grup parameter DB baru.
  7. Di Deskripsi, masukkan deskripsi untuk grup parameter DB baru.
  8. Pilih Buat.

Untuk membuat grup opsi baru untuk logging MariaDB menggunakan konsol

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Grup opsi.
  3. Pilih Buat grup.
  4. Di jendela Create option group, berikan informasi berikut:
    * Name: harus unik dalam akun AWS Anda. Hanya huruf, angka, dan tanda hubung.
    * Deskripsi: Hanya digunakan untuk tujuan tampilan.
    * Engine: pilih mesin DB Anda.
    * Versi mesin utama: pilih versi utama mesin DB Anda.
  5. Pilih Buat.
  6. Pilih nama grup opsi yang baru saja Anda buat.
  7. Pilih opsi Tambahkan.
  8. Pilih MARIADB_AUDIT_PLUGIN dari daftar Nama opsi.
  9. Tetapkan SERVER_AUDIT_EVENTS ke CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML, QUERY_DCL.
  10. Pilih opsi Tambahkan.

Untuk memublikasikan log SQL Server DB, Oracle DB, atau PostgreSQL ke CloudWatch Logs dari AWS Management Console

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Database.
  3. Pilih instance DB yang ingin Anda ubah.
  4. Pilih Ubah.
  5. Di bagian Ekspor log, pilih semua file log untuk mulai memublikasikan ke CloudWatch Logs.
  6. Ekspor log hanya tersedia untuk versi mesin database yang mendukung publikasi ke CloudWatch Logs.
  7. Pilih Lanjutkan. Kemudian, di halaman ringkasan, pilih Ubah Instance DB.

Untuk menerapkan grup parameter DB atau grup opsi DB baru ke instance DB RDS

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Database.
  3. Pilih instance DB yang ingin Anda ubah.
  4. Pilih Ubah.
  5. Di bagian Opsi database, ubah grup parameter DB dan grup opsi DB sesuai kebutuhan.
  6. Setelah selesai melakukan perubahan, pilih Lanjutkan. Periksa ringkasan modifikasi.
  7. Pilih Ubah Instance DB untuk menyimpan perubahan.

CLI AWS

Ambil keluarga mesin dan pilih yang cocok dengan mesin dan versi instance DB.

aws rds describe-db-engine-versions \
  --query "DBEngineVersions[].DBParameterGroupFamily" \
  --engine "mysql"

Buat grup parameter sesuai dengan mesin dan versi.

aws rds create-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --db-parameter-group-family "mysql5.7" \
  --description "Example parameter group for logs"

Buat file rds-parameters.json yang berisi parameter yang diperlukan sesuai dengan Mesin DB, contoh ini menggunakan MySQL5.7.

[
  {
    "ParameterName": "general_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "slow_query_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "log_output",
    "ParameterValue": "FILE",
    "ApplyMethod": "immediate"
  }
]

Ubah grup parameter untuk menambahkan parameter sesuai dengan mesin DB. Contoh ini menggunakan MySQL5.7

aws rds modify-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --parameters file://rds-parameters.json

Ubah instance DB untuk mengaitkan grup parameter.

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --db-parameter-group-name "rds-mysql-parameter-group"

Selain itu, untuk MariaDB, buat grup opsi sebagai berikut.

aws rds create-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --engine-name "mariadb" \
  --major-engine-version "10.6" \
  --option-group-description "Option group for MariaDB logs"

Buat file rds-mariadb-options.json sebagai berikut.

{
  "OptionName": "MARIADB_AUDIT_PLUGIN",
  "OptionSettings": [
    {
      "Name": "SERVER_AUDIT_EVENTS",
      "Value": "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  ]
}

Tambahkan opsi ke grup opsi.

aws rds add-option-to-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --options file://rds-mariadb-options.json

Kaitkan grup opsi ke Instance DB dengan mengubah instance MariaDB.

aws rds modify-db-instance \
  --db-instance-identifier "rds-test-mariadb" \
  --option-group-name "rds-mariadb-option-group"

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rds Multi Az Support

Nama kategori di API: RDS_MULTI_AZ_SUPPORT

Instance DB RDS harus dikonfigurasi untuk beberapa Zona Ketersediaan (AZ). Hal ini memastikan ketersediaan data yang disimpan. Deployment multi-AZ memungkinkan failover otomatis jika ada masalah dengan ketersediaan Zona Ketersediaan dan selama pemeliharaan RDS reguler.

Rekomendasi: Memeriksa apakah ketersediaan tinggi diaktifkan untuk semua instance DB RDS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, tetapkan multi_az ke benar di resource aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  multi_az                = true
}

Konsol AWS

Untuk mengaktifkan beberapa Zona Ketersediaan untuk instance DB

  1. Buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.
  2. Di panel navigasi, pilih Database, lalu pilih instance DB yang ingin Anda ubah.
  3. Pilih Ubah. Halaman Modify DB Instance akan muncul.
  4. Di bagian Spesifikasi Instance, tetapkan Deployment Multi-AZ ke Yes (Ya).
  5. Pilih Lanjutkan, lalu periksa ringkasan modifikasi.
  6. (Opsional) Pilih Terapkan segera untuk menerapkan perubahan dengan segera. Dalam beberapa kasus, memilih opsi ini dapat menyebabkan pemadaman layanan. Untuk informasi selengkapnya, lihat Menggunakan setelan Terapkan Segera di Panduan Pengguna Amazon RDS.
  7. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih Ubah Instance DB untuk menyimpan perubahan.

CLI AWS

Hal yang sama berlaku untuk AWS CLI. Aktifkan dukungan multi-Az dengan memberikan opsi --multi-az.

modify-db-instance
  --db-instance-identifier "test-rds" \
  --multi-az

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Redshift Cluster Configuration Check

Nama kategori di API: REDSHIFT_CLUSTER_CONFIGURATION_CHECK

Tindakan ini memeriksa elemen penting cluster Redshift: enkripsi dalam penyimpanan, logging, dan jenis node.

Item konfigurasi ini penting dalam pemeliharaan cluster Redshift yang aman dan dapat diamati.

Rekomendasi: Memeriksa apakah semua cluster Redshift memiliki enkripsi dalam penyimpanan, logging, dan jenis node.

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_kms_key" "redshift_encryption" {
  description         = "Used for Redshift encryption configuration"
  enable_key_rotation = true
}

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  encrypted                           = true
  kms_key_id                          = aws_kms_key.redshift_encryption.id
  logging {
    enable               = true
    log_destination_type = "cloudwatch"
    log_exports          = ["connectionlog", "userlog", "useractivitylog"]
  }
}

Konsol AWS

Untuk mengaktifkan logging audit cluster

  1. Buka konsol Amazon Redshift di https://console.aws.amazon.com/redshift/.
  2. Di menu navigasi, pilih Cluster, lalu pilih nama cluster yang akan diubah.
  3. Pilih Properti.
  4. Pilih Edit dan Edit logging audit.
  5. Setel Konfigurasi logging audit ke Aktifkan, setel Jenis ekspor log ke CloudWatch (direkomendasikan), lalu pilih log yang akan diekspor.

Untuk menggunakan AWS S3 guna mengelola log audit Redshift, lihat Redshift - Logging audit database di Dokumentasi AWS.

  1. Pilih Simpan perubahan.

Untuk mengubah enkripsi database di cluster

  1. Login ke AWS Management Console, lalu buka konsol Amazon Redshift di https://console.aws.amazon.com/redshift/.
  2. Pada menu navigasi, pilih Cluster, lalu pilih cluster yang ingin Anda ubah enkripsinya.
  3. Pilih Properti.
  4. Pilih Edit dan Edit enkripsi.
  5. Pilih Enkripsi yang akan digunakan (KMS atau HSM) dan berikan:
  • Untuk KMS: kunci yang akan digunakan
  • Untuk HSM: koneksi dan sertifikat klien

CLI AWS

  1. Membuat kunci KMS dan mengambil ID kunci
aws kms create-key \
  --description "Key to encrypt Redshift Clusters"
  1. Mengubah cluster
aws redshift modify-cluster \
  --cluster-identifiers "test-redshift-cluster" \
  --encrypted \
  --kms-key-id <value>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Redshift Cluster Maintenancesettings Check

Nama kategori di API: REDSHIFT_CLUSTER_MAINTENANCESETTINGS_CHECK

Upgrade versi utama otomatis dilakukan sesuai dengan periode pemeliharaan

Rekomendasi: Memeriksa apakah semua cluster Redshift mengaktifkan allowVersionUpgrade serta menetapkan preferredMaintenanceWindow dan automatedSnapshotRetentionPeriod

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Pemeriksaan ini mematuhi semua nilai default yang disediakan oleh Terraform. Jika Cluster Redshift gagal, tinjau persyaratan dan hapus penggantian default untuk atribut berikut dari resource aws_redshift_cluster.

resource "aws_redshift_cluster" "example" {

  # ...other configuration ...

  # The following values are compliant and set by default if omitted.
  allow_version_upgrade               = true
  preferred_maintenance_window        = "sat:10:00-sat:10:30"
  automated_snapshot_retention_period = 1
}

Konsol AWS

Saat membuat cluster Redshift melalui AWS console, nilai default sudah mematuhi kontrol ini.

Untuk informasi selengkapnya, lihat Mengelola cluster menggunakan konsol

CLI AWS

Untuk memperbaiki kontrol ini menggunakan AWS CLI, lakukan tindakan berikut:

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --allow-version-upgrade

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Redshift Cluster Public Access Check

Nama kategori di API: REDSHIFT_CLUSTER_PUBLIC_ACCESS_CHECK

Atribut PubliclyAccessible dari konfigurasi cluster Amazon Redshift menunjukkan apakah cluster dapat diakses secara publik. Jika cluster dikonfigurasi dengan PubliclyAccessible ditetapkan ke benar, cluster tersebut adalah instance yang menghadap ke Internet yang memiliki nama DNS yang dapat di-resolve secara publik, yang me-resolve ke alamat IP publik.

Jika tidak dapat diakses secara publik, cluster tersebut adalah instance internal dengan nama DNS yang me-resolve ke alamat IP pribadi. Kecuali jika Anda ingin cluster dapat diakses secara publik, cluster tidak boleh dikonfigurasi dengan PubliclyAccessible disetel ke true.

Rekomendasi: Memeriksa apakah cluster Redshift dapat diakses secara publik

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Untuk memperbaiki kontrol ini, Anda harus mengubah resource cluster redshift dan menetapkan publicly_accessible ke false, nilai defaultnya adalah true.

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  publicly_accessible = false
}

Konsol AWS

Untuk menonaktifkan akses publik ke cluster Amazon Redshift

  1. Buka konsol Amazon Redshift di https://console.aws.amazon.com/redshift/.
  2. Di menu navigasi, pilih Cluster, lalu pilih nama cluster dengan grup keamanan yang akan diubah.
  3. Pilih Tindakan, lalu pilih Ubah setelan yang dapat diakses secara publik.
  4. Di bagian Izinkan instance dan perangkat di luar VPC untuk terhubung ke database Anda melalui endpoint cluster, pilih Tidak.
  5. Pilih Konfirmasi.

CLI AWS

Gunakan perintah modify-cluster untuk menetapkan --no-publicly-accessible.

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --no-publicly-accessible

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Restricted Common Ports

Nama kategori di API: RESTRICTED_COMMON_PORTS

Tindakan ini memeriksa apakah traffic masuk yang tidak dibatasi untuk grup keamanan dapat diakses oleh port yang ditentukan dan memiliki risiko tertinggi. Kontrol ini gagal jika ada aturan dalam grup keamanan yang mengizinkan traffic masuk dari '0.0.0.0/0' atau '::/0' untuk port tersebut.

Akses tanpa batasan (0.0.0.0/0) meningkatkan peluang untuk aktivitas berbahaya, seperti peretasan, serangan denial-of-service, dan kehilangan data.

Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk dan keluar ke resource AWS. Tidak ada grup keamanan yang boleh mengizinkan akses masuk yang tidak dibatasi ke port berikut:

  • 20, 21 (FTP)
  • 22 (SSH)
  • 23 (Telnet)
  • 25 (SMTP)
  • 110 (POP3)
  • 135 (RPC)
  • 143 (IMAP)
  • 445 (CIFS)
  • 1433, 1434 (MSSQL)
  • 3.000 (framework pengembangan web Go, Node.js, dan Ruby)
  • 3306 (mySQL)
  • 3389 (RDP)
  • 4333 (ahsp)
  • 5.000 (framework pengembangan web Python)
  • 5432 (postgresql)
  • 5500 (fcp-addr-srvr1)
  • 5601 (Dasbor OpenSearch)
  • 8080 (proxy)
  • 8088 (port HTTP lama)
  • 8888 (port HTTP alternatif)
  • 9200 atau 9300 (OpenSearch)
Rekomendasi: Grup keamanan tidak boleh mengizinkan akses yang tidak dibatasi ke port dengan risiko tinggi

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Untuk menghapus aturan grup keamanan:

  1. Buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.
  2. Di panel navigasi, pilih Grup Keamanan.
  3. Pilih grup keamanan yang akan diperbarui, pilih Tindakan, lalu pilih Edit aturan masuk untuk menghapus aturan masuk atau Edit aturan keluar untuk menghapus aturan keluar.
  4. Pilih tombol Hapus di sebelah kanan aturan yang akan dihapus.
  5. Pilih Pratinjau perubahan, Konfirmasi.

Untuk informasi tentang cara menghapus aturan dari grup keamanan, lihat Mengonfigurasi aturan grup keamanan di Panduan Pengguna Amazon EC2.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Restricted Ssh

Nama kategori di API: RESTRICTED_SSH

Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk dan keluar ke resource AWS.

CIS merekomendasikan agar tidak ada grup keamanan yang mengizinkan akses masuk yang tidak dibatasi ke port 22. Menghapus konektivitas yang tidak dibatasi ke layanan konsol jarak jauh, seperti SSH, akan mengurangi paparan server terhadap risiko.

Rekomendasi: Grup keamanan tidak boleh mengizinkan ingress dari 0.0.0.0/0 ke port 22

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Lakukan langkah-langkah berikut untuk setiap grup keamanan yang terkait dengan VPC.

Buka konsol Amazon VPC di https://console.aws.amazon.com/vpc/.

  1. Di panel kiri, pilih Grup keamanan.
  2. Pilih grup keamanan.
  3. Di bagian bawah halaman, pilih tab Inbound Rules.
  4. Pilih Edit rules.
  5. Identifikasi aturan yang mengizinkan akses melalui port 22, lalu pilih X untuk menghapusnya.
  6. Pilih Simpan aturan.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rotation Customer Created Cmks Enabled

Nama kategori di API: ROTATION_CUSTOMER_CREATED_CMKS_ENABLED

Memeriksa apakah rotasi kunci otomatis diaktifkan untuk setiap kunci dan cocok dengan ID kunci dari kunci AWS KMS yang dibuat pelanggan. Aturannya adalah NON_COMPLIANT jika peran perekam AWS Config untuk resource tidak memiliki izin kms:DescribeKey.

Rekomendasi: Pastikan rotasi untuk CMK yang dibuat pelanggan diaktifkan

Untuk mengaktifkan rotasi kunci otomatis untuk AWS KMS, lihat Merotasi kunci AWS KMS dalam dokumentasi AWS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Rotation Customer Created Symmetric Cmks Enabled

Nama kategori di API: ROTATION_CUSTOMER_CREATED_SYMMETRIC_CMKS_ENABLED

AWS Key Management Service (KMS) memungkinkan pelanggan memutar kunci pendukung yang merupakan materi kunci yang disimpan dalam KMS yang terikat dengan ID kunci kunci master pelanggan (CMK) yang Dibuat Pelanggan. Ini adalah kunci pendukung yang digunakan untuk melakukan operasi kriptografis seperti enkripsi dan dekripsi. Rotasi kunci otomatis saat ini mempertahankan semua kunci pendukung sebelumnya sehingga dekripsi data terenkripsi dapat dilakukan secara transparan. Sebaiknya rotasi kunci CMK diaktifkan untuk kunci simetris. Rotasi kunci tidak dapat diaktifkan untuk CMK asimetris.

Rekomendasi: Pastikan rotasi untuk CMK simetris yang dibuat pelanggan diaktifkan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console, lalu buka konsol IAM di https://console.aws.amazon.com/iam.
  2. Di panel navigasi sebelah kiri, pilih Customer managed keys .
  3. Pilih CMK yang dikelola pelanggan dengan Key spec = SYMMETRIC_DEFAULT
  4. Di bawah panel "Konfigurasi umum", buka tab "Rotasi kunci"
  5. Centang kotak "Rotasi kunci KMS ini secara otomatis setiap tahun".

CLI AWS

  1. Jalankan perintah berikut untuk mengaktifkan rotasi kunci:
 aws kms enable-key-rotation --key-id <kms_key_id>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Routing Tables Vpc Peering Are Least Access

Nama kategori di API: ROUTING_TABLES_VPC_PEERING_ARE_LEAST_ACCESS

Memeriksa apakah tabel rute untuk peering VPC dikonfigurasi dengan prinsip hak istimewa terendah.

Rekomendasi: Pastikan tabel pemilihan rute untuk peering VPC adalah "akses minimum"

Untuk memperbarui tabel rute untuk peering VPC, lihat Memperbarui tabel rute untuk koneksi peering VPC di panduan pengguna AWS VPC.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Account Level Public Access Blocks

Nama kategori di API: S3_ACCOUNT_LEVEL_PUBLIC_ACCESS_BLOCKS

Amazon S3 Blokir Akses Publik menyediakan setelan untuk titik akses, bucket, dan akun untuk membantu Anda mengelola akses publik ke resource Amazon S3. Secara default, bucket, titik akses, dan objek baru tidak mengizinkan akses publik.

Rekomendasi: Memeriksa apakah setelan pemblokiran akses publik S3 yang diperlukan dikonfigurasi dari tingkat akun

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Resource Terraform berikut mengonfigurasi akses tingkat akun ke S3.

resource "aws_s3_account_public_access_block" "s3_control" {
  block_public_acls       = true
  block_public_policy     = true
  ignore_public_acls      = true
  restrict_public_buckets = true
}

Konsol AWS

Untuk mengedit setelan blokir akses publik untuk semua bucket S3 di akun AWS.

  1. Login ke AWS Management Console, lalu buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.
  2. Pilih setelan Blokir Akses Publik untuk akun ini.
  3. Pilih Edit untuk mengubah setelan blokir akses publik untuk semua bucket di akun AWS Anda.
  4. Pilih setelan yang ingin Anda ubah, lalu pilih Simpan perubahan.
  5. Saat Anda diminta untuk mengonfirmasi, masukkan konfirmasi. Kemudian, pilih Konfirmasi untuk menyimpan perubahan.

CLI AWS

aws s3control put-public-access-block \
--account-id <value> \
--public-access-block-configuration '{"BlockPublicAcls": true, "BlockPublicPolicy": true, "IgnorePublicAcls": true, "RestrictPublicBuckets": true}'

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Buckets Configured Block Public Access Bucket And Account Settings

Nama kategori di API: S3_BUCKETS_CONFIGURED_BLOCK_PUBLIC_ACCESS_BUCKET_AND_ACCOUNT_SETTINGS

Amazon S3 menyediakan Block public access (bucket settings) dan Block public access (account settings) untuk membantu Anda mengelola akses publik ke resource Amazon S3. Secara default, bucket dan objek S3 dibuat dengan akses publik dinonaktifkan. Namun, akun utama AWS IAM dengan izin S3 yang memadai dapat mengaktifkan akses publik di tingkat bucket atau objek. Saat diaktifkan, Block public access (bucket settings) mencegah setiap bucket, dan objek yang dikandungnya, agar tidak dapat diakses secara publik. Demikian pula, Block public access (account settings) mencegah semua bucket, dan objek yang dikandung, agar tidak dapat diakses secara publik di seluruh akun.

Rekomendasi:

Pastikan bucket S3 dikonfigurasi dengan Block public access (bucket settings).

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Jika outputnya true untuk setelan konfigurasi terpisah, setelan tersebut akan ditetapkan di akun.

  1. Login ke AWS Management Console dan buka konsol Amazon S3 menggunakan https://console.aws.amazon.com/s3/
  2. Pilih Blokir Akses Publik (setelan akun)
  3. Pilih Edit untuk mengubah setelan blokir akses publik untuk semua bucket di akun AWS Anda
  4. Pilih setelan yang ingin Anda ubah, lalu pilih Simpan. Untuk mengetahui detail setiap setelan, jeda pada ikon i.
  5. Saat Anda diminta untuk mengonfirmasi, masukkan confirm. Kemudian, klik Konfirmasi untuk menyimpan perubahan.

CLI AWS

Untuk menetapkan setelan Blokir Akses publik untuk akun ini, jalankan perintah berikut:

aws s3control put-public-access-block
--public-access-block-configuration BlockPublicAcls=true, IgnorePublicAcls=true, BlockPublicPolicy=true, RestrictPublicBuckets=true
--account-id <value>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Access Logging Enabled Cloudtrail S3 Bucket

Nama kategori di API: S3_BUCKET_ACCESS_LOGGING_ENABLED_CLOUDTRAIL_S3_BUCKET

Logging Akses Bucket S3 menghasilkan log yang berisi catatan akses untuk setiap permintaan yang dibuat ke bucket S3 Anda. Data log akses berisi detail tentang permintaan, seperti jenis permintaan, resource yang ditentukan dalam permintaan yang berfungsi, serta waktu dan tanggal permintaan diproses. Sebaiknya logging akses bucket diaktifkan di bucket S3 CloudTrail.

Rekomendasi:

Pastikan logging akses bucket S3 diaktifkan di bucket S3 CloudTrail

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke AWS Management Console, lalu buka konsol S3 di https://console.aws.amazon.com/s3.
  2. Di bagian All Buckets, klik bucket S3 target
  3. Klik Properties di kanan atas konsol
  4. Di bagian Bucket: <s3\_bucket\_for\_cloudtrail>, klik Logging</s3\_bucket\_for\_cloudtrail>
  5. Konfigurasi logging bucket
    - Klik kotak centang Enabled
    - Pilih Target Bucket dari daftar
    - Masukkan Target Prefix
  6. Klik Simpan.

CLI AWS

  1. Dapatkan nama bucket S3 yang digunakan CloudTrail untuk menyimpan log:
aws cloudtrail describe-trails --region <region-name> --query trailList[*].S3BucketName
  1. Salin dan tambahkan nama bucket target di , Awalan untuk file log di , dan secara opsional tambahkan alamat email di template berikut, lalu simpan sebagai :
{
 "LoggingEnabled": {
 "TargetBucket": "<Logging_BucketName>",
 "TargetPrefix": "<LogFilePrefix>",
 "TargetGrants": [
 {
 "Grantee": {
 "Type": "AmazonCustomerByEmail",
 "EmailAddress": "<EmailID>"
 },
 "Permission": "FULL_CONTROL"
 }
 ]
 }
}
  1. Jalankan perintah put-bucket-logging dengan nama bucket dan sebagai input. Untuk mengetahui informasi selengkapnya, lihat put-bucket-logging:
aws s3api put-bucket-logging --bucket <BucketName> --bucket-logging-status file://<FileName.Json>

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Logging Enabled

Nama kategori di API: S3_BUCKET_LOGGING_ENABLED

Fitur Logging Akses Server AWS S3 mencatat permintaan akses ke bucket penyimpanan yang berguna untuk audit keamanan. Secara default, logging akses server tidak diaktifkan untuk bucket S3.

Rekomendasi: Memeriksa apakah logging diaktifkan di semua bucket S3

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

Contoh berikut menunjukkan cara membuat 2 bucket:

  1. Bucket logging
  2. Bucket yang mematuhi kebijakan
variable "bucket_acl_map" {
  type = map(any)
  default = {
    "logging-bucket"   = "log-delivery-write"
    "compliant-bucket" = "private"
  }
}

resource "aws_s3_bucket" "all" {
  for_each            = var.bucket_acl_map
  bucket              = each.key
  object_lock_enabled = true
  tags = {
    "Pwd"    = "s3"
  }
}

resource "aws_s3_bucket_acl" "private" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  acl      = each.value
}

resource "aws_s3_bucket_versioning" "enabled" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  versioning_configuration {
    status = "Enabled"
  }
}

resource "aws_s3_bucket_logging" "enabled" {
  for_each      = var.bucket_acl_map
  bucket        = each.key
  target_bucket = aws_s3_bucket.all["logging-bucket"].id
  target_prefix = "log/"
}

resource "aws_s3_bucket_server_side_encryption_configuration" "example" {
  for_each = var.bucket_acl_map
  bucket   = each.key

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm     = "aws:kms"
    }
  }
}

Konsol AWS

Untuk informasi tentang cara mengaktifkan logging akses S3 melalui konsol AWS, lihat Mengaktifkan logging akses server Amazon S3 dalam dokumentasi AWS.

CLI AWS

Contoh berikut menunjukkan cara:

  1. Buat kebijakan bucket untuk memberikan izin akun utama layanan logging ke PutObject di bucket logging Anda.

policy.json

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "S3ServerAccessLogsPolicy",
            "Effect": "Allow",
            "Principal": {"Service": "logging.s3.amazonaws.com"},
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::MyBucket/Logs/*",
            "Condition": {
                "ArnLike": {"aws:SourceARN": "arn:aws:s3:::SOURCE-BUCKET-NAME"},
                "StringEquals": {"aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID"}
            }
        }
    ]
}
aws s3api put-bucket-policy \
  --bucket my-bucket
  --policy file://policy.json
  1. Terapkan kebijakan ke bucket logging Anda

logging.json

{
    "LoggingEnabled": {
        "TargetBucket": "MyBucket",
        "TargetPrefix": "Logs/"
    }
}
aws s3api put-bucket-logging \
  --bucket MyBucket \
  --bucket-logging-status file://logging.json

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Policy Set Deny Http Requests

Nama kategori di API: S3_BUCKET_POLICY_SET_DENY_HTTP_REQUESTS

Di tingkat bucket Amazon S3, Anda dapat mengonfigurasi izin melalui kebijakan bucket sehingga objek hanya dapat diakses melalui HTTPS.

Rekomendasi: Pastikan Kebijakan Bucket S3 disetel untuk menolak permintaan HTTP

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

menggunakan AWS Policy Generator:

  1. Ulangi langkah 1-4 di atas.
  2. Klik Policy Generator di bagian bawah Editor Kebijakan Bucket
  3. Pilih Jenis Kebijakan
    S3 Bucket Policy
  4. Tambahkan Pernyataan
    - Effect = Deny
    - Principal = *
    - AWS Service = Amazon S3
    - Actions = *
    - Amazon Resource Name =
  5. Buat Kebijakan
  6. Salin teks dan tambahkan ke Kebijakan Bucket.

CLI AWS

  1. Mengekspor kebijakan bucket ke file json.
aws s3api get-bucket-policy --bucket <bucket_name> --query Policy --output text > policy.json
  1. Ubah file policy.json dengan menambahkan pernyataan ini:
{
 "Sid": <optional>",
 "Effect": "Deny",
 "Principal": "*",
 "Action": "s3:*",
 "Resource": "arn:aws:s3:::<bucket_name>/*",
 "Condition": {
 "Bool": {
 "aws:SecureTransport": "false"
 }
 }
 }
  1. Terapkan kembali kebijakan yang dimodifikasi ini ke bucket S3:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://policy.json

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Replication Enabled

Nama kategori di API: S3_BUCKET_REPLICATION_ENABLED

Kontrol ini memeriksa apakah bucket Amazon S3 mengaktifkan Replikasi Lintas Region. Kontrol akan gagal jika bucket tidak mengaktifkan Replikasi Lintas Region atau jika Replikasi Dalam Region juga diaktifkan.

Replikasi adalah penyalinan objek secara otomatis dan asinkron di seluruh bucket di Region AWS yang sama atau berbeda. Replikasi menyalin objek yang baru dibuat dan pembaruan objek dari bucket sumber ke satu atau beberapa bucket tujuan. Praktik terbaik AWS merekomendasikan replikasi untuk bucket sumber dan tujuan yang dimiliki oleh akun AWS yang sama. Selain ketersediaan, Anda harus mempertimbangkan setelan hardening sistem lainnya.

Rekomendasi: Memeriksa apakah replikasi lintas region diaktifkan untuk bucket S3

Untuk mengaktifkan Replikasi Lintas Wilayah di bucket S3, lihat Mengonfigurasi replikasi untuk bucket sumber dan tujuan yang dimiliki oleh akun yang sama di Panduan Pengguna Amazon Simple Storage Service. Untuk Bucket sumber, pilih Terapkan ke semua objek dalam bucket.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Server Side Encryption Enabled

Nama kategori di API: S3_BUCKET_SERVER_SIDE_ENCRYPTION_ENABLED

Tindakan ini memeriksa apakah bucket S3 Anda mengaktifkan enkripsi default Amazon S3 atau kebijakan bucket S3 secara eksplisit menolak permintaan put-object tanpa enkripsi sisi server.

Rekomendasi: Pastikan semua bucket S3 menggunakan enkripsi dalam penyimpanan

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm = "AES256"
    }
  }
}

Konsol AWS

Untuk mengaktifkan enkripsi default di bucket S3

  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.
  2. Di panel navigasi sebelah kiri, pilih Bucket.
  3. Pilih bucket S3 dari daftar.
  4. Pilih Properti.
  5. Pilih Enkripsi default.
  6. Untuk enkripsi, pilih AES-256 atau AWS-KMS.
  7. Pilih AES-256 untuk menggunakan kunci yang dikelola oleh Amazon S3 untuk enkripsi default. Untuk informasi selengkapnya tentang penggunaan enkripsi sisi server Amazon S3 untuk mengenkripsi data Anda, lihat Panduan Pengguna Amazon Simple Storage Service.
  8. Pilih AWS-KMS untuk menggunakan kunci yang dikelola oleh AWS KMS untuk enkripsi default. Kemudian, pilih kunci master dari daftar kunci master AWS KMS yang telah Anda buat.
  9. Ketik Amazon Resource Name (ARN) kunci AWS KMS yang akan digunakan. Anda dapat menemukan ARN untuk kunci AWS KMS di konsol IAM, di bagian Kunci enkripsi. Atau, Anda dapat memilih nama kunci dari menu drop-down.
  10. Penting: jika menggunakan opsi AWS KMS untuk konfigurasi enkripsi default, Anda akan dikenai kuota RPS (permintaan per detik) AWS KMS. Untuk informasi selengkapnya tentang kuota AWS KMS dan cara meminta peningkatan kuota, lihat Panduan Developer AWS Key Management Service.
  11. Pilih Simpan.

Untuk informasi selengkapnya tentang cara membuat kunci AWS KMS, lihat Panduan Developer AWS Key Management Service.

Untuk informasi selengkapnya tentang penggunaan AWS KMS dengan Amazon S3, lihat Panduan Pengguna Amazon Simple Storage Service.

Saat mengaktifkan enkripsi default, Anda mungkin perlu memperbarui kebijakan bucket. Untuk informasi selengkapnya tentang cara beralih dari kebijakan bucket ke enkripsi default, lihat Panduan Pengguna Amazon Simple Storage Service.

CLI AWS

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Bucket Versioning Enabled

Nama kategori di API: S3_BUCKET_VERSIONING_ENABLED

Amazon S3 adalah cara untuk menyimpan beberapa varian objek dalam bucket yang sama dan dapat membantu Anda memulihkan dengan lebih mudah dari tindakan pengguna yang tidak disengaja dan kegagalan aplikasi.

Rekomendasi: Memeriksa apakah pembuatan versi diaktifkan untuk semua bucket S3

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_s3_bucket" "my_bucket" {
  bucket = "my-bucket"

  versioning {
    enabled = true
  }
}

Konsol AWS

Untuk mengaktifkan atau menonaktifkan pembuatan versi di bucket S3

  1. Login ke AWS Management Console, lalu buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.
  2. Dalam daftar Bucket, pilih nama bucket yang ingin Anda aktifkan pembuatan versinya.
  3. Pilih Properti.
  4. Di bagian Bucket Versioning, pilih Edit.
  5. Pilih Tunda atau Aktifkan, lalu pilih Simpan perubahan.

CLI AWS

aws s3control put-bucket-versioning \
--bucket <bucket_name> \
--versioning-configuration Status=Enabled

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

S3 Default Encryption Kms

Nama kategori di API: S3_DEFAULT_ENCRYPTION_KMS

Memeriksa apakah bucket Amazon S3 dienkripsi dengan AWS Key Management Service (AWS KMS)

Rekomendasi: Memeriksa apakah semua bucket dienkripsi dengan KMS

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Terraform

resource "aws_kms_key" "s3_encryption" {
  description         = "Used for S3 Bucket encryption configuration"
  enable_key_rotation = true
}

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket   = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      kms_master_key_id = aws_kms_key.s3_encryption.arn
      sse_algorithm     = "aws:kms"
    }
  }
}

Konsol AWS

Untuk mengaktifkan enkripsi default di bucket S3

  1. Buka konsol Amazon S3 di https://console.aws.amazon.com/s3/.
  2. Di panel navigasi sebelah kiri, pilih Bucket.
  3. Pilih bucket S3 dari daftar.
  4. Pilih Properti.
  5. Pilih Enkripsi default.
  6. Untuk enkripsi, pilih AWS-KMS.
  7. Pilih AWS-KMS untuk menggunakan kunci yang dikelola oleh AWS KMS untuk enkripsi default. Kemudian, pilih kunci master dari daftar kunci master AWS KMS yang telah Anda buat. Untuk informasi selengkapnya tentang cara membuat kunci KMS, lihat Dokumentasi AWS - Membuat Kunci
  8. Ketik Amazon Resource Name (ARN) kunci AWS KMS yang akan digunakan. Anda dapat menemukan ARN untuk kunci AWS KMS di konsol IAM, di bagian Kunci enkripsi. Atau, Anda dapat memilih nama kunci dari menu drop-down.
  9. Penting: solusi ini tunduk pada kuota RPS (permintaan per detik) AWS KMS. Untuk mengetahui informasi selengkapnya tentang kuota AWS KMS dan cara meminta peningkatan kuota, lihat Panduan Developer AWS Key Management Service.
  10. Pilih Simpan.

Untuk informasi selengkapnya tentang penggunaan AWS KMS dengan Amazon S3, lihat Panduan Pengguna Amazon Simple Storage Service.

Saat mengaktifkan enkripsi default, Anda mungkin perlu memperbarui kebijakan bucket. Untuk informasi selengkapnya tentang cara beralih dari kebijakan bucket ke enkripsi default, lihat Panduan Pengguna Amazon Simple Storage Service.

CLI AWS

Membuat kunci KMS

aws kms create-key \
  --description "Key to encrypt S3 buckets"

Mengaktifkan rotasi kunci

aws kms enable-key-rotation \
  --key-id <key_id_from_previous_command>

Memperbarui bucket

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"KMSMasterKeyID": "<id_from_key>", "SSEAlgorithm": "AES256"}}]}'

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Sagemaker Notebook Instance Kms Key Configured

Nama kategori di API: SAGEMAKER_NOTEBOOK_INSTANCE_KMS_KEY_CONFIGURED

Memeriksa apakah kunci AWS Key Management Service (AWS KMS) dikonfigurasi untuk instance notebook Amazon SageMaker. Aturannya adalah NON_COMPLIANT jika 'KmsKeyId' tidak ditentukan untuk instance notebook SageMaker.

Rekomendasi: Memeriksa apakah semua instance notebook SageMaker dikonfigurasi untuk menggunakan KMS

Untuk mengonfigurasi KMS untuk SageMaker, lihat Pengelolaan Kunci dalam dokumentasi Amazon SageMaker.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Sagemaker Notebook No Direct Internet Access

Nama kategori di API: SAGEMAKER_NOTEBOOK_NO_DIRECT_INTERNET_ACCESS

Memeriksa apakah akses internet langsung dinonaktifkan untuk instance notebook SageMaker. Untuk melakukannya, periksa apakah kolom DirectInternetAccess dinonaktifkan untuk instance notebook.

Jika Anda mengonfigurasi instance SageMaker tanpa VPC, akses internet langsung akan diaktifkan secara default di instance Anda. Anda harus mengonfigurasi instance dengan VPC dan mengubah setelan default ke Nonaktifkan—Akses internet melalui VPC.

Untuk melatih atau menghosting model dari notebook, Anda memerlukan akses internet. Untuk mengaktifkan akses internet, pastikan VPC Anda memiliki gateway NAT dan grup keamanan Anda mengizinkan koneksi keluar. Untuk mempelajari lebih lanjut cara menghubungkan instance notebook ke resource di VPC, lihat Menghubungkan instance notebook ke resource di VPC di Panduan Developer Amazon SageMaker.

Anda juga harus memastikan bahwa akses ke konfigurasi SageMaker hanya dibatasi untuk pengguna yang diberi otorisasi. Batasi izin IAM pengguna untuk mengubah setelan dan resource SageMaker.

Rekomendasi: Memeriksa apakah akses internet langsung dinonaktifkan untuk semua instance notebook Amazon SageMaker

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

Perhatikan bahwa Anda tidak dapat mengubah setelan akses internet setelah instance notebook dibuat. Instance harus dihentikan, dihapus, dan dibuat ulang.

Untuk mengonfigurasi instance notebook SageMaker guna menolak akses internet langsung:

  1. Buka konsol SageMaker di https://console.aws.amazon.com/sagemaker/
  2. Buka instance Notebook.
  3. Hapus instance yang mengaktifkan akses internet langsung. Pilih instance, pilih Tindakan, lalu pilih hentikan.
  4. Setelah instance dihentikan, pilih Tindakan, lalu pilih hapus.
  5. Pilih Buat instance notebook. Berikan detail konfigurasi.
  6. Luaskan bagian jaringan, lalu pilih VPC, subnet, dan grup keamanan. Di bagian Akses internet langsung, pilih Nonaktifkan—Akses internet melalui VPC.
  7. Pilih Buat instance notebook.

Untuk informasi selengkapnya, lihat Menghubungkan instance notebook ke resource di VPC di Panduan Developer Amazon SageMaker.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Secretsmanager Rotation Enabled Check

Nama kategori di API: SECRETSMANAGER_ROTATION_ENABLED_CHECK

Memeriksa apakah secret yang disimpan di AWS Secrets Manager dikonfigurasi dengan rotasi otomatis. Kontrol akan gagal jika secret tidak dikonfigurasi dengan rotasi otomatis. Jika Anda memberikan nilai kustom untuk parameter maximumAllowedRotationFrequency, kontrol hanya akan lulus jika secret dirotasi secara otomatis dalam jangka waktu yang ditentukan.

Secret Manager membantu Anda meningkatkan postur keamanan organisasi. Secret mencakup kredensial database, sandi, dan kunci API pihak ketiga. Anda dapat menggunakan Secret Manager untuk menyimpan secret secara terpusat, mengenkripsi secret secara otomatis, mengontrol akses ke secret, dan merotasi secret dengan aman dan otomatis.

Secret Manager dapat merotasi secret. Anda dapat menggunakan rotasi untuk mengganti secret jangka panjang dengan secret jangka pendek. Memutar secret akan membatasi berapa lama pengguna yang tidak sah dapat menggunakan secret yang disusupi. Oleh karena itu, Anda harus sering merotasi secret. Untuk mempelajari rotasi lebih lanjut, lihat Memutar secret AWS Secrets Manager di Panduan Pengguna AWS Secrets Manager.

Rekomendasi: Memeriksa apakah rotasi diaktifkan pada semua secret AWS Secrets Manager

Untuk mengaktifkan rotasi otomatis untuk secret Secrets Manager, lihat Menyiapkan rotasi otomatis untuk secret AWS Secrets Manager menggunakan konsol di Panduan Pengguna AWS Secrets Manager. Anda harus memilih dan mengonfigurasi fungsi AWS Lambda untuk rotasi.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Sns Encrypted Kms

Nama kategori di API: SNS_ENCRYPTED_KMS

Memeriksa apakah topik SNS dienkripsi dalam penyimpanan menggunakan AWS KMS. Kontrol akan gagal jika topik SNS tidak menggunakan kunci KMS untuk enkripsi sisi server (SSE).

Mengenkripsi data dalam penyimpanan akan mengurangi risiko data yang disimpan di disk diakses oleh pengguna yang tidak diautentikasi ke AWS. Fitur ini juga menambahkan kumpulan kontrol akses lain untuk membatasi kemampuan pengguna yang tidak sah untuk mengakses data. Misalnya, izin API diperlukan untuk mendekripsi data sebelum dapat dibaca. Topik SNS harus dienkripsi dalam penyimpanan untuk lapisan keamanan tambahan.

Rekomendasi: Memeriksa apakah semua topik SNS dienkripsi dengan KMS

Untuk mengaktifkan SSE bagi topik SNS, lihat Mengaktifkan enkripsi sisi server (SSE) untuk topik Amazon SNS di Panduan Developer Amazon Simple Notification Service. Sebelum dapat menggunakan SSE, Anda juga harus mengonfigurasi kebijakan kunci AWS KMS untuk mengizinkan enkripsi topik serta enkripsi dan dekripsi pesan. Untuk informasi selengkapnya, lihat Mengonfigurasi izin AWS KMS di Panduan Developer Amazon Simple Notification Service.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Vpc Default Security Group Closed

Nama kategori di API: VPC_DEFAULT_SECURITY_GROUP_CLOSED

Kontrol ini memeriksa apakah grup keamanan default VPC mengizinkan traffic masuk atau keluar. Kontrol akan gagal jika grup keamanan mengizinkan traffic masuk atau keluar.

Aturan untuk grup keamanan default mengizinkan semua traffic keluar dan masuk dari antarmuka jaringan (dan instance terkait) yang ditetapkan ke grup keamanan yang sama. Sebaiknya jangan gunakan grup keamanan default. Karena grup keamanan default tidak dapat dihapus, Anda harus mengubah setelan aturan grup keamanan default untuk membatasi traffic masuk dan keluar. Tindakan ini mencegah traffic yang tidak diinginkan jika grup keamanan default tidak sengaja dikonfigurasi untuk resource seperti instance EC2.

Rekomendasi: Pastikan grup keamanan default setiap VPC membatasi semua traffic

Untuk mengatasi masalah ini, mulailah dengan membuat grup keamanan dengan hak istimewa minimum baru. Untuk mengetahui petunjuknya, lihat Membuat grup keamanan di Panduan Pengguna Amazon VPC. Kemudian, tetapkan grup keamanan baru ke instance EC2 Anda. Untuk mengetahui petunjuknya, lihat Mengubah grup keamanan instance di Panduan Pengguna Amazon EC2 untuk Instance Linux.

Setelah menetapkan grup keamanan baru ke resource, hapus semua aturan masuk dan keluar dari grup keamanan default. Untuk mengetahui petunjuknya, lihat Menghapus aturan grup keamanan di Panduan Pengguna Amazon VPC.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Vpc Flow Logging Enabled All Vpcs

Nama kategori di API: VPC_FLOW_LOGGING_ENABLED_ALL_VPCS

Log Aliran VPC adalah fitur yang memungkinkan Anda merekam informasi tentang traffic IP yang menuju ke dan keluar dari antarmuka jaringan di VPC. Setelah membuat log alur, Anda dapat melihat dan mengambil datanya di Amazon CloudWatch Logs. Sebaiknya aktifkan Log Aliran VPC untuk "Penolakan" paket untuk VPC.

Rekomendasi: Pastikan logging flow VPC diaktifkan di semua VPC

Untuk memperbaiki temuan ini, selesaikan langkah-langkah berikut:

Konsol AWS

  1. Login ke konsol pengelolaan
  2. Pilih Services, lalu VPC
  3. Di panel navigasi sebelah kiri, pilih Your VPCs
  4. Memilih VPC
  5. Di panel kanan, pilih tab Flow Logs.
  6. Jika tidak ada Log Aliran, klik Create Flow Log
  7. Untuk Filter, pilih Reject
  8. Masukkan Role dan Destination Log Group
  9. Klik Create Log Flow
  10. Klik CloudWatch Logs Group

Catatan: Menetapkan filter ke "Tolak" akan secara drastis mengurangi akumulasi data logging untuk rekomendasi ini dan memberikan informasi yang memadai untuk tujuan deteksi, riset, dan perbaikan pelanggaran. Namun, selama periode engineering grup keamanan dengan hak istimewa minimum, menyetel filter ini ke "Semua" dapat sangat membantu dalam menemukan alur traffic yang ada yang diperlukan untuk pengoperasian lingkungan yang sudah berjalan dengan benar.

CLI AWS

  1. Buat dokumen kebijakan dan beri nama role_policy_document.json, lalu tempelkan konten berikut:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Sid": "test",
 "Effect": "Allow",
 "Principal": {
 "Service": "ec2.amazonaws.com"
 },
 "Action": "sts:AssumeRole"
 }
 ]
}
  1. Buat dokumen kebijakan lain dan beri nama iam_policy.json, lalu tempelkan konten berikut:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Effect": "Allow",
 "Action":[
 "logs:CreateLogGroup",
 "logs:CreateLogStream",
 "logs:DescribeLogGroups",
 "logs:DescribeLogStreams",
 "logs:PutLogEvents",
 "logs:GetLogEvents",
 "logs:FilterLogEvents"
 ],
 "Resource": "*"
 }
 ]
}
  1. Jalankan perintah di bawah untuk membuat peran IAM:
aws iam create-role --role-name <aws_support_iam_role> --assume-role-policy-document file://<file-path>role_policy_document.json
  1. Jalankan perintah di bawah untuk membuat kebijakan IAM:
aws iam create-policy --policy-name <ami-policy-name> --policy-document file://<file-path>iam-policy.json
  1. Jalankan perintah attach-group-policy menggunakan ARN kebijakan IAM yang ditampilkan pada langkah sebelumnya untuk melampirkan kebijakan ke peran IAM (jika perintah berhasil, tidak ada output yang ditampilkan):
aws iam attach-group-policy --policy-arn arn:aws:iam::<aws-account-id>:policy/<iam-policy-name> --group-name <group-name>
  1. Jalankan describe-vpcs untuk mendapatkan VpcId yang tersedia di region yang dipilih:
aws ec2 describe-vpcs --region <region>
  1. Output perintah akan menampilkan ID VPC yang tersedia di region yang dipilih.
  2. Jalankan create-flow-logs untuk membuat log aliran untuk vpc:
aws ec2 create-flow-logs --resource-type VPC --resource-ids <vpc-id> --traffic-type REJECT --log-group-name <log-group-name> --deliver-logs-permission-arn <iam-role-arn>
  1. Ulangi langkah 8 untuk VPC lain yang tersedia di region yang dipilih.
  2. Ubah region dengan memperbarui --region dan ulangi prosedur perbaikan untuk vpc lain.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Vpc Sg Open Only To Authorized Ports

Nama kategori di API: VPC_SG_OPEN_ONLY_TO_AUTHORIZED_PORTS

Kontrol ini memeriksa apakah grup keamanan Amazon EC2 mengizinkan traffic masuk yang tidak dibatasi dari port yang tidak sah. Status kontrol ditentukan sebagai berikut:

Jika Anda menggunakan nilai default untuk authorizedTcpPorts, kontrol akan gagal jika grup keamanan mengizinkan traffic masuk yang tidak dibatasi dari port apa pun selain port 80 dan 443.

Jika Anda memberikan nilai kustom untuk authorizedTcpPorts atau authorizedUdpPorts, kontrol akan gagal jika grup keamanan mengizinkan traffic masuk yang tidak dibatasi dari port yang tidak tercantum.

Jika tidak ada parameter yang digunakan, kontrol akan gagal untuk grup keamanan yang memiliki aturan traffic masuk yang tidak dibatasi.

Grup keamanan menyediakan pemfilteran stateful traffic jaringan masuk dan keluar ke AWS. Aturan grup keamanan harus mengikuti prinsip akses dengan hak istimewa terendah. Akses tanpa batasan (alamat IP dengan akhiran /0) meningkatkan peluang terjadinya aktivitas berbahaya seperti peretasan, serangan denial-of-service, dan kehilangan data. Kecuali jika port diizinkan secara khusus, port harus menolak akses yang tidak dibatasi.

Rekomendasi: Memeriksa apakah setiap grup keamanan dengan 0.0.0.0/0 dari VPC hanya mengizinkan traffic TCP/UDP masuk tertentu

Untuk mengubah grup keamanan, lihat Menggunakan grup keamanan di Panduan Pengguna Amazon VPC.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.

Both VPC VPN Tunnels Up

Nama kategori di API: VPC_VPN_2_TUNNELS_UP

Tunnel VPN adalah link terenkripsi tempat data dapat diteruskan dari jaringan pelanggan ke atau dari AWS dalam koneksi VPN Site-to-Site AWS. Setiap koneksi VPN menyertakan dua tunnel VPN yang dapat Anda gunakan secara bersamaan untuk ketersediaan tinggi. Memastikan kedua tunnel VPN aktif untuk koneksi VPN penting untuk mengonfirmasi koneksi yang aman dan sangat tersedia antara VPC AWS dan jaringan jarak jauh Anda.

Kontrol ini memeriksa apakah kedua tunnel VPN yang disediakan oleh AWS Site-to-Site VPN dalam status UP. Kontrol akan gagal jika salah satu atau kedua tunnel berada dalam status DOWN.

Rekomendasi: Memeriksa apakah kedua tunnel AWS VPN yang disediakan oleh AWS site-to-site dalam status UP

Untuk mengubah opsi tunnel VPN, lihat Mengubah opsi tunnel VPN Site-to-Site di Panduan Pengguna VPN Site-to-Site AWS.

Pelajari aset dan setelan pemindaian yang didukung untuk jenis temuan ini.