Persistensi: Peran Sensitif Diberikan kepada Agen AI Eksternal

Dokumen ini menjelaskan jenis temuan ancaman di Security Command Center. Temuan ancaman dibuat oleh pendeteksi ancaman saat mendeteksi potensi ancaman di resource cloud Anda. Untuk mengetahui daftar lengkap temuan ancaman yang tersedia, lihat Indeks temuan ancaman.

Ringkasan

Agen AI dari organisasi eksternal diberi peran IAM sensitif. Temuan diklasifikasikan sebagai tingkat keparahan Sedang untuk peran dengan sensitivitas sedang, atau tingkat keparahan Tinggi untuk peran dengan sensitivitas tinggi. Untuk mengetahui informasi selengkapnya, lihat Peran dan izin IAM sensitif untuk AI.

Event Threat Detection adalah sumber temuan ini.

Cara merespons

Untuk menanggapi temuan ini, lakukan hal berikut:

Langkah 1: Tinjau detail temuan

  1. Buka temuan Persistence: Sensitive Role Granted to External AI Agent seperti yang diarahkan dalam Meninjau temuan. Panel detail untuk temuan akan terbuka di tab Summary.

  2. Di tab Ringkasan, tinjau informasi di bagian berikut:

    • Apa yang terdeteksi, terutama kolom berikut:
      • Email akun utama: alamat email untuk pengguna atau akun layanan yang menetapkan peran.
      • Pemberian akses yang melanggar: detail peran sensitif yang ditambahkan.
    • Resource yang terpengaruh

    • Link terkait, terutama kolom berikut:

      • Cloud Logging URI: link ke entri Logging.
      • Metode MITRE ATT&CK: link ke dokumentasi MITRE ATT&CK.

Langkah 2: Periksa log

  1. Di tab Ringkasan pada panel detail temuan, klik link URI Cloud Logging untuk membuka Logs Explorer.
  2. Di halaman yang dimuat, cari resource IAM baru atau yang diperbarui menggunakan filter berikut:
    • protoPayload.methodName="SetIamPolicy"

Langkah 3: Meneliti metode serangan dan respons

  1. Tinjau entri framework MITRE ATT&CK untuk jenis temuan ini: Akun yang Valid: Akun Cloud.
  2. Untuk mengembangkan rencana respons, gabungkan hasil penyelidikan Anda dengan riset MITRE.

Langkah 4: Terapkan respons Anda

Rencana respons berikut mungkin sesuai untuk temuan ini, tetapi juga dapat memengaruhi operasi. Evaluasi dengan cermat informasi yang Anda kumpulkan dalam penyelidikan untuk menentukan cara terbaik dalam menyelesaikan temuan.

  • Hubungi pemilik project dengan akun yang disusupi.
  • Hapus akun layanan yang disusupi, lalu ganti dan hapus semua kunci akses akun layanan untuk project yang disusupi. Setelah penghapusan, resource yang menggunakan akun layanan untuk autentikasi akan kehilangan akses.
  • Hapus resource project yang dibuat oleh akun yang tidak sah, seperti instance, snapshot, akun layanan, dan pengguna IAM Compute Engine yang tidak dikenal.
  • Untuk membatasi penambahan pengguna eksternal, gunakan Kebijakan Organisasi.

Contoh JSON temuan

Berikut adalah contoh JSON temuan, dengan nilai default yang dihilangkan.

{
  "finding": {
    "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global/findings/FINDING_ID",
    "parent": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global",
    "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "state": "ACTIVE",
    "category": "Persistence: Sensitive Role Granted to External AI Agent",
    "securityMarks": {
      "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global/findings/FINDING_ID/securityMarks"
    },
    "eventTime": "TIMESTAMP",
    "createTime": "TIMESTAMP",
    "severity": "HIGH",
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/locations/global/findings/FINDING_ID",
    "findingClass": "THREAT",
    "access": {
      "principalEmail": "PRINCIPAL_EMAIL",
      "userAgent": "USER_AGENT",
      "serviceName": "cloudresourcemanager.googleapis.com",
      "methodName": "SetIamPolicy",
      "principalSubject": "user:PRINCIPAL_EMAIL"
    },
    "mitreAttack": {
      "primaryTactic": "PERSISTENCE",
      "primaryTechniques": [
        "ACCOUNT_MANIPULATION"
      ],
      "additionalTactics": [
        "PRIVILEGE_ESCALATION"
      ],
      "additionalTechniques": [
        "ADDITIONAL_CLOUD_ROLES"
      ]
    },
    "iamBindings": [
      {
        "action": "ADD",
        "role": "roles/editor",
        "member": "principalSet://agents-nonprod.global.org-PROJECT_NUMBER.system.id.goog/*"
      },
      {
        "action": "ADD",
        "role": "roles/editor",
        "member": "principalSet://agents.global.org-PROJECT_NUMBER.system.id.goog/*"
      }
    ],
    "parentDisplayName": "Event Threat Detection",
    "domains": [
      {
        "category": "AI"
      },
      {
        "category": "IDENTITY_AND_ACCESS"
      }
    ],
    "logEntries": [
      {
        "cloudLoggingEntry": {
          "insertId": "INSERT_ID",
          "logId": "cloudaudit.googleapis.com/activity",
          "resourceContainer": "projects/PROJECT_ID",
          "timestamp": "TIMESTAMP"
        }
      }
    ]
  },
  "resource": {
    "name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
    "displayName": "PROJECT_ID",
    "type": "google.cloud.resourcemanager.Project",
    "cloudProvider": "GOOGLE_CLOUD_PLATFORM",
    "service": "cloudresourcemanager.googleapis.com",
    "gcpMetadata": {
      "project": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
      "projectDisplayName": "PROJECT_ID",
      "parent": "//cloudresourcemanager.googleapis.com/folders/FOLDER_ID",
      "parentDisplayName": "FOLDER_NAME",
      "folders": [
        {
          "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_ID",
          "resourceFolderDisplayName": "FOLDER_NAME"
        }
      ],
      "organization": "organizations/ORGANIZATION_ID"
    },
    "resourcePath": {
      "nodes": [
        {
          "nodeType": "GCP_PROJECT",
          "id": "projects/PROJECT_NUMBER",
          "displayName": "PROJECT_ID"
        },
        {
          "nodeType": "GCP_FOLDER",
          "id": "folders/FOLDER_ID",
          "displayName": "FOLDER_NAME"
        },
        {
          "nodeType": "GCP_ORGANIZATION",
          "id": "organizations/ORGANIZATION_ID"
        }
      ]
    },
    "resourcePathString": "organizations/ORGANIZATION_ID/folders/FOLDER_ID/projects/PROJECT_NUMBER"
  },
  "sourceProperties": {
    "sourceId": {
      "projectNumber": "PROJECT_NUMBER",
      "customerOrganizationNumber": "ORGANIZATION_ID"
    },
    "detectionCategory": {
      "ruleName": "external_ai_agent_granted_sensitive_role"
    },
    "detectionPriority": "HIGH",
    "affectedResources": [
      {
        "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
      }
    ],
    "evidence": [
      {
        "sourceLogId": {
          "projectId": "PROJECT_ID",
          "resourceContainer": "projects/PROJECT_ID",
          "timestamp": {
            "seconds": "TIMESTAMP_SECONDS",
            "nanos": TIMESTAMP_NANOS
          },
          "insertId": "INSERT_ID",
          "logId": "cloudaudit.googleapis.com/activity"
        }
      }
    ],
    "findingId": "FINDING_ID",
    "contextUris": {
      "mitreUri": {
        "displayName": "MITRE Link",
        "url": "https://attack.mitre.org/techniques/T1078/003"
      },
      "cloudLoggingQueryUri": [
        {
          "displayName": "Cloud Logging Query Link",
          "url": "https://console.cloud.google.com/logs/query;query=timestamp%3D%22TIMESTAMP%22%0AinsertId%3D%22INSERT_ID%22?project=PROJECT_ID"
        }
      ]
    },
    "domains": [
      {
        "category": "AI"
      },
      {
        "category": "IDENTITY_AND_ACCESS"
      }
    ]
  }
}

Langkah berikutnya