Melaporkan secret dalam variabel lingkungan ke Security Command Center

Halaman ini menjelaskan cara menggunakan layanan penemuan Sensitive Data Protection untuk menentukan apakah ada informasi rahasia dalam variabel lingkungan Cloud Run Anda. Sensitive Data Protection melaporkan semua 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. Fitur ini juga memberikan rekomendasi untuk menyelidiki dan memperbaiki temuan.

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 ditampilkan di berbagai sistem, seperti log. Sebaiknya Anda menggunakan Secret Manager untuk menyimpan secret Anda. Untuk mengetahui informasi selengkapnya, lihat dokumentasi Cloud Run dan Cloud Run Functions tentang cara mengonfigurasi secret.

Cara kerjanya

Untuk melakukan penemuan secret, Anda membuat konfigurasi pemindaian penemuan di tingkat organisasi atau project. Dalam cakupan yang Anda pilih, Sensitive Data Protection secara berkala memindai Cloud Run untuk menemukan rahasia dalam variabel lingkungan build dan runtime.

Jika secret ada dalam variabel lingkungan, Sensitive Data Protection akan mengirimkan temuan kerentanan Secrets in environment variables ke Security Command Center. Tidak ada profil data yang dibuat. Semua temuan hanya tersedia melalui Security Command Center.

Sensitive Data Protection menghasilkan maksimal satu temuan per resource. Misalnya, jika rahasia ditemukan dalam dua variabel lingkungan di fungsi Cloud Run yang sama, hanya satu temuan yang dihasilkan di Security Command Center.

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

Temuan yang dihasilkan dalam daftar temuan Security Command Center di konsol Google Cloud

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

Secret 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

Bergantung pada ukuran organisasi Anda, temuan Sensitive Data Protection dapat mulai muncul di Security Command Center dalam beberapa menit setelah Anda mengaktifkan penemuan data sensitif. Untuk organisasi yang lebih besar atau organisasi dengan konfigurasi tertentu yang memengaruhi pembuatan temuan, mungkin diperlukan waktu hingga 12 jam sebelum temuan awal muncul di Security Command Center.

Selanjutnya, Sensitive Data Protection membuat temuan di Security Command Center dalam beberapa menit setelah layanan penemuan memindai resource Anda.

Jenis rahasia yang dilaporkan

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

Resource yang didukung

Untuk penemuan rahasia, Sensitive Data Protection mendukung fungsi Cloud Run (termasuk Cloud Functions generasi ke-1) dan revisi layanan Cloud Run.

Harga

Fitur ini tidak dikenai biaya Perlindungan Data Sensitif. Biaya Security Command Center mungkin berlaku, bergantung pada tingkat layanan Anda. Sensitive Data Protection berfungsi dengan Security Command Center di semua tingkat layanan.

Residensi data

Saat pertama kali membuat konfigurasi pemindaian, Anda menentukan tempat yang Anda inginkan agar Perlindungan Data Sensitif menyimpannya. Semua konfigurasi pemindaian berikutnya yang Anda buat disimpan di region yang sama. Sensitive Data Protection mengekspor metadata Cloud Run Anda ke region tempat konfigurasi pemindaian Anda disimpan, tetapi revisi fungsi atau layanan itu sendiri tidak diekspor.

Jika Sensitive Data Protection mendeteksi rahasia dalam variabel lingkungan, temuan 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 menggunakan temuan Security Command Center. Untuk mengetahui informasi selengkapnya, lihat IAM untuk aktivasi level organisasi dalam dokumentasi Security Command Center.

Sebelum memulai

  1. Periksa level 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 tingkat layanan apa pun. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan Security Command Center untuk organisasi.

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

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

Mengonfigurasi penemuan secret di tingkat organisasi

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

Jika Anda tidak memiliki peran Administrator Organisasi (roles/resourcemanager.organizationAdmin) atau Admin Keamanan (roles/iam.securityAdmin), Anda tetap 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. Di toolbar, klik pemilih project, lalu pilih organisasi Anda.

    Setelah menyelesaikan 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 penagihan dan container agen layanan, tentukan project yang akan digunakan sebagai container agen layanan. Anda dapat meminta Perlindungan Data Sensitif membuat project baru secara otomatis, atau Anda dapat memilih project yang ada.

    • Jika Anda tidak memiliki project untuk digunakan sebagai penampung agen layanan, pilih Buat project baru sebagai penampung agen layanan. Sensitive Data Protection membuat project baru bernama DLP Service Agent Container. Agen layanan dalam project ini akan digunakan untuk mengautentikasi Sensitive Data Protection 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 Buat project baru sebagai penampung agen layanan akan dinonaktifkan. Dalam kasus ini, Anda harus memilih project yang ada atau meminta administratorGoogle Cloud untuk memberi Anda peran Project Creator (roles/resourcemanager.projectCreator).

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

  6. Untuk Tetapkan lokasi untuk menyimpan konfigurasi, pilih region tempat Anda ingin menyimpan konfigurasi pemindaian ini. Semua konfigurasi pemindaian yang Anda buat nanti 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 segera setelah Anda membuat konfigurasi pemindaian, pilih Buat pemindaian dalam mode dijeda.

    Opsi ini berguna dalam kasus berikut:

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

Sensitive Data Protection mulai memindai variabel lingkungan Cloud Run Anda segera setelah Anda membuat konfigurasi pemindaian atau melanjutkan konfigurasi yang dijeda. Untuk mengetahui informasi tentang berapa lama waktu yang diperlukan agar temuan muncul di Security Command Center, lihat Latensi pembuatan temuan di halaman ini.

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

Mengonfigurasi penemuan secret di level project

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

  1. Buka halaman Buat konfigurasi pemindaian.

    Buka Buat konfigurasi pemindaian

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

    Setelah menyelesaikan setiap langkah di halaman ini, klik Lanjutkan.

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

  4. Untuk Pilih cakupan, pastikan Pindai seluruh project dipilih. Jika tidak dipilih, pastikan Anda berada di tampilan project.

  5. Untuk Tetapkan lokasi untuk menyimpan konfigurasi, pilih region tempat Anda ingin menyimpan konfigurasi pemindaian ini. Semua konfigurasi pemindaian yang Anda buat nanti juga akan disimpan di lokasi ini. Untuk mengetahui informasi tentang pertimbangan residensi data, lihat Residensi data di halaman ini.

  6. Klik Buat.

Sensitive Data Protection mulai memindai variabel lingkungan Cloud Run Anda segera setelah Anda membuat konfigurasi pemindaian atau melanjutkan konfigurasi yang dijeda. Untuk mengetahui informasi tentang berapa lama waktu yang diperlukan agar temuan muncul di Security Command Center, lihat Latensi pembuatan temuan di halaman ini.

Kueri untuk temuan Secrets in environment variables

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 Query editor. Untuk mengetahui informasi selengkapnya tentang editor kueri, lihat Mengedit kueri temuan di dasbor Security Command Center.

Mencantumkan semua temuan Secrets in environment variables

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

Mencantumkan semua temuan Secrets in environment variables 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 kueri