Melaporkan secret dalam variabel lingkungan ke Security Command Center

Halaman ini menjelaskan cara menggunakan layanan penemuan Perlindungan Data Sensitif untuk menentukan apakah ada secret dalam variabel lingkungan Cloud Functions Anda. Perlindungan Data Sensitif melaporkan setiap temuan ke Security Command Center sebagai kerentanan.

Tentang Security Command Center

Security Command Center adalah layanan pelaporan ancaman dan kerentanan terpusat dari Google Cloud. Security Command Center membantu Anda memperkuat postur keamanan dengan mengidentifikasi kesalahan konfigurasi, kerentanan, pengamatan, dan ancaman. Dokumen ini juga memberikan rekomendasi untuk menyelidiki dan memperbaiki temuannya.

Alasan memindai secret dalam variabel lingkungan

Menyimpan secret, seperti sandi, dalam variabel lingkungan bukanlah praktik yang aman karena variabel lingkungan tidak dienkripsi. Nilainya dapat dikumpulkan dan diekspos dalam berbagai sistem, seperti log. Sebaiknya gunakan Secret Manager untuk menyimpan secret Anda. Untuk mengetahui informasi selengkapnya, baca artikel Mengonfigurasi secret dalam dokumentasi Cloud Functions.

Cara kerja Duet AI

Untuk melakukan penemuan secret, Anda membuat konfigurasi pemindaian penemuan di level organisasi atau project. Dalam cakupan yang dipilih, Perlindungan Data Sensitif secara berkala memindai Cloud Functions untuk menemukan secret dalam variabel lingkungan build dan runtime.

Jika rahasia ada dalam variabel lingkungan, Perlindungan Data Sensitif akan mengirim penemuan kerentanan Secrets in environment variables ke Security Command Center. Tidak ada profil data yang dibuat. Temuan apa pun hanya tersedia melalui Security Command Center.

Perlindungan Data Sensitif menghasilkan maksimum satu temuan per fungsi. Misalnya, jika secret ditemukan dalam dua variabel lingkungan dalam fungsi yang sama, hanya satu temuan yang akan dihasilkan di Security Command Center.

Di Security Command Center, Anda dapat melihat temuan Secrets in environment variables saat melakukan hal berikut:

Temuan yang dibuat dalam daftar temuan Security Command Center di Konsol Google Cloud

JSON berikut menunjukkan contoh temuan Secrets in environment variables. Contoh ini hanya menampilkan kolom yang relevan dengan fitur ini; contoh ini tidak memberikan daftar kolom lengkap.

Rahasia dalam variabel lingkungan

{
  "finding": {
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
    "category": "SECRETS_IN_ENVIRONMENT_VARIABLES",
    "compliances": [
      {
        "standard": "cis",
        "version": "1.3",
        "ids": [
          "1.18"
        ]
      }
    ],
    "createTime": "DATE_TIME",
    "description": "The affected resource is storing credentials or other secret information in its environment variables. This is a security vulnerability because environment variables are stored unencrypted, and accessible to all users who have access to the code.",
    "eventTime": "DATE_TIME",
    "findingClass": "VULNERABILITY",
    "findingProviderId": "organizations/ORGANIZATION_ID/firstPartyFindingProviders/dlp",
    "mute": "MUTE_STATUS",
    "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/findings/FINDING_ID",
    "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID",
    "parentDisplayName": "Sensitive Data Protection",
    "resourceName": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID",
  },
  "resource": {
    "name": "//cloudfunctions.googleapis.com/projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID",
    "display_name": "projects/PROJECT_ID/locations/REGION/functions/FUNCTION_ID",
    "type": "google.cloudfunctions.CloudFunction",
    "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "project_display_name": "PROJECT_DISPLAY_NAME",
    "parent_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "parent_display_name": "PARENT_DISPLAY_NAME"
  }
}
    

Menemukan latensi pembuatan

Sejak Anda mengaktifkan penemuan rahasia di Perlindungan Data Sensitif, perlu waktu hingga 12 jam untuk menyelesaikan pemindaian awal variabel lingkungan. Selanjutnya, Perlindungan Data Sensitif memindai variabel lingkungan setiap 24 jam. Dalam praktiknya, pemindaian dapat dijalankan lebih sering dari itu.

Jenis rahasia yang dilaporkan

Contoh secret adalah sandi, token autentikasi, dan kredensial Google Cloud. Untuk mengetahui daftar lengkap jenis rahasia yang dipindai oleh Perlindungan Data Sensitif dalam fitur ini, lihat Kredensial dan rahasia.

Resource yang didukung

Untuk penemuan secret, Perlindungan Data Sensitif mendukung Cloud Functions (generasi ke-1 dan ke-2).

Harga

Fitur ini bebas dari biaya Perlindungan Data Sensitif. Biaya Security Command Center mungkin berlaku, bergantung pada tingkat layanan Anda—Standar atau Premium. Perlindungan Data Sensitif berfungsi dengan Security Command Center di paket Standar dan Premium.

Residensi Data

Saat pertama kali membuat konfigurasi pemindaian, Anda menentukan tempat yang diinginkan untuk Perlindungan Data Sensitif untuk menyimpannya. Semua konfigurasi pemindaian berikutnya yang Anda buat akan disimpan di region yang sama. Perlindungan Data Sensitif mengekspor metadata Cloud Functions Anda ke region tempat konfigurasi pemindaian Anda disimpan, tetapi fungsi itu sendiri tidak diekspor.

Jika Perlindungan Data Sensitif mendeteksi rahasia dalam variabel lingkungan, temuan tersebut akan dikirim ke Security Command Center dan tunduk pada proses penanganan datanya.

Peran IAM yang diperlukan

Untuk melakukan penemuan rahasia, Anda memerlukan peran Identity and Access Management yang diperlukan untuk membuat profil data:

Selain itu, Anda memerlukan peran yang sesuai untuk menangani temuan Security Command Center. Untuk informasi selengkapnya, lihat IAM untuk aktivasi tingkat organisasi dalam dokumentasi Security Command Center.

Sebelum memulai

  1. Periksa tingkat aktivasi Security Command Center untuk organisasi Anda. Untuk mengirim profil data ke Security Command Center, Anda harus mengaktifkan Security Command Center di tingkat organisasi, dalam paket Standar atau Premium. Untuk informasi selengkapnya, lihat Mengaktifkan Security Command Center untuk organisasi.

    Jika Security Command Center hanya diaktifkan di level project, temuan dari Perlindungan Data Sensitif tidak akan muncul di Security Command Center.

  2. Di Security Command Center, pastikan Perlindungan Data Sensitif diaktifkan sebagai layanan terintegrasi. Untuk mengetahui informasi selengkapnya, lihat Menambahkan layanan terintegrasi Google Cloud.

Mengonfigurasi penemuan secret di tingkat organisasi

Lakukan langkah-langkah ini jika Anda ingin mengaktifkan penemuan rahasia di seluruh organisasi. Untuk penemuan level project, lihat Mengonfigurasi penemuan secret di level project.

Jika tidak memiliki peran Organization Administrator (roles/resourcemanager.organizationAdmin) atau Security Admin (roles/iam.securityAdmin), Anda masih dapat membuat konfigurasi pemindaian. Namun, setelah Anda membuat konfigurasi pemindaian, seseorang dengan salah satu peran tersebut harus memberikan akses penemuan ke agen layanan Anda.

  1. Buka halaman Buat konfigurasi pemindaian.

    Buka Buat konfigurasi pemindaian

  2. Buka organisasi Anda. Pada toolbar, klik pemilih project dan pilih organisasi Anda.

    Setelah melakukan setiap langkah di halaman ini, klik Lanjutkan.

  3. Untuk Pilih jenis penemuan, pilih Kerentanan rahasia/kredensial.

  4. Untuk Pilih cakupan, pilih apakah Anda ingin memindai seluruh organisasi.

  5. Untuk Mengelola container dan penagihan agen layanan, tentukan project yang akan digunakan sebagai container agen layanan. Anda dapat mengatur agar Perlindungan Data Sensitif otomatis membuat project baru, atau memilih project yang sudah ada.

    • Jika Anda tidak memiliki project untuk digunakan sebagai container agen layanan, pilih Create a new project as a service agent container. Perlindungan Data Sensitif membuat project baru bernama DLP Service Agent Container. Agen layanan dalam project ini akan digunakan untuk melakukan autentikasi ke Perlindungan Data Sensitif dan API lainnya. Sistem akan meminta Anda memilih akun yang akan ditagih untuk semua operasi yang dapat ditagih terkait project ini, termasuk operasi yang tidak terkait dengan penemuan.

      Jika Anda tidak memiliki izin yang diperlukan untuk membuat project, opsi Create a new project as a new project as a service container akan dinonaktifkan. Dalam hal ini, Anda harus memilih project yang sudah ada atau meminta administrator Google Cloud untuk memberi Anda peran Project Creator (roles/resourcemanager.projectCreator).

    • Jika Anda sudah memiliki penampung agen layanan yang ingin digunakan kembali, pilih Select an existing service agent container. Selanjutnya, klik Browse untuk memilih project ID container agen layanan.

  6. Untuk Set location to store configuration, pilih region tempat Anda ingin menyimpan konfigurasi pemindaian ini. Semua konfigurasi pemindaian yang nantinya Anda buat juga akan disimpan di lokasi ini. Untuk mengetahui informasi tentang pertimbangan residensi data, lihat Residensi data di halaman ini.

  7. Opsional: Jika Anda tidak ingin pemindaian dimulai sesaat setelah Anda membuat konfigurasi pemindaian, pilih Create Scan in paused mode.

    Opsi ini berguna dalam kasus berikut:

    • Administrator Google Cloud Anda masih perlu memberikan akses penemuan ke agen layanan.
    • Anda ingin membuat beberapa konfigurasi pemindaian dan ingin beberapa konfigurasi untuk menggantikan konfigurasi lainnya.
  8. Klik Create.

Perlindungan Data Sensitif mulai memindai variabel lingkungan Cloud Functions segera setelah Anda membuat konfigurasi pemindaian atau melanjutkan konfigurasi yang dijeda. Untuk mengetahui informasi tentang waktu yang diperlukan agar temuan muncul di Security Command Center, lihat Menemukan latensi pembuatan di halaman ini.

Jika Anda tidak memiliki peran Organization Administrator (roles/resourcemanager.organizationAdmin) atau Security Admin (roles/iam.securityAdmin), seseorang dengan salah satu peran tersebut harus memberikan akses penemuan kepada agen layanan Anda sebelum penemuan dapat dimulai.

Mengonfigurasi penemuan secret di level project

Lakukan langkah-langkah berikut jika Anda ingin mengaktifkan penemuan secret untuk satu project. Untuk penemuan tingkat organisasi, lihat Mengonfigurasi penemuan secret di tingkat organisasi.

  1. Buka halaman Buat konfigurasi pemindaian.

    Buka Buat konfigurasi pemindaian

  2. Buka project Anda. Pada toolbar, klik pemilih project, lalu pilih project Anda.

    Setelah melakukan setiap langkah di halaman ini, klik Lanjutkan.

  3. Untuk Pilih jenis penemuan, pilih Kerentanan rahasia/kredensial.

  4. Untuk Select scope, pastikan Scan entire project dipilih. Jika tidak dipilih, pastikan Anda berada dalam tampilan project.

  5. Untuk Set location to store configuration, pilih region tempat Anda ingin menyimpan konfigurasi pemindaian ini. Semua konfigurasi pemindaian yang nantinya Anda buat juga akan disimpan di lokasi ini. Untuk mengetahui informasi tentang pertimbangan residensi data, lihat Residensi data di halaman ini.

  6. Klik Create.

Perlindungan Data Sensitif mulai memindai variabel lingkungan Cloud Functions segera setelah Anda membuat konfigurasi pemindaian atau melanjutkan konfigurasi yang dijeda. Untuk mengetahui informasi tentang waktu yang diperlukan agar temuan muncul di Security Command Center, lihat Menemukan latensi pembuatan di halaman ini.

Kueri untuk Secrets in environment variables temuan

Berikut adalah contoh kueri yang dapat Anda gunakan untuk menemukan temuan Secrets in environment variables di Security Command Center. Anda dapat memasukkan kueri ini di kolom Editor kueri. Untuk informasi editor kueri selengkapnya, lihat Mengedit kueri temuan di dasbor Security Command Center.

Mencantumkan semua Secrets in environment variables temuan

state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"

Mencantumkan semua Secrets in environment variables temuan untuk project tertentu

state="ACTIVE"
AND NOT mute="MUTED"
AND category="SECRETS_IN_ENVIRONMENT_VARIABLES"
AND resource.project_name="//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"

Ganti kode berikut:

  • PROJECT_NUMBER: ID numerik project yang ingin Anda buat kuerinya