Dampak: Impor Dokumen Gemini Discovery Engine API oleh Pengguna Eksternal

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

Ringkasan

Akun utama di luar organisasi Anda memulai impor dokumen ke datastore Gemini Enterprise. Temuan diklasifikasikan sebagai tingkat keparahan Sedang secara default.

Event Threat Detection adalah sumber temuan ini.

Cara merespons

Untuk merespons temuan ini, lakukan hal berikut:

Langkah 1: Tinjau detail temuan

  1. Buka temuan Impact: Gemini Discovery Engine API Document Import by External User seperti yang diarahkan dalam Meninjau temuan. Panel detail untuk temuan akan terbuka di tab Summary.

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

    • Yang terdeteksi, terutama kolom berikut:
      • Email akun utama: alamat email untuk pengguna eksternal, akun layanan, atau agen AI yang memulai impor dokumen.
      • Nama metode: metode API yang dipanggil (google.cloud.discoveryengine.v1.DocumentService.ImportDocuments).
    • Resource yang terpengaruh:
      • Nama lengkap resource: nama resource lengkap project, folder, atau organisasi tempat datastore Gemini Enterprise berada.
    • 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 Summary pada panel detail temuan, klik link Cloud Logging URI untuk membuka Logs Explorer.
  2. Di halaman yang dimuat, cari operasi impor dokumen Gemini Enterprise menggunakan filter berikut:
    • protoPayload.serviceName="discoveryengine.googleapis.com"
    • protoPayload.methodName="google.cloud.discoveryengine.v1.DocumentService.ImportDocuments"
  3. Periksa protoPayload.request untuk mengidentifikasi datastore target (parent) dan sumber data yang diimpor (gcsSource, bigquerySource, atau inlineSource).

Langkah 3: Pelajari metode serangan dan respons

  1. Tinjau entri framework MITRE ATT&CK untuk jenis temuan ini: Data Manipulation: Stored Data Manipulation.
  2. Untuk mengembangkan rencana respons, gabungkan hasil investigasi Anda dengan riset MITRE.

Langkah 4: Terapkan respons Anda

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

  1. Hubungi pemilik project yang berisi datastore Gemini Enterprise yang terpengaruh untuk memverifikasi apakah impor tersebut diizinkan. Jika aktivitas ini diotorisasi (misalnya, domain kontraktor atau domain partner eksternal), tambahkan domain pengguna ke daftar domain terverifikasi organisasi Anda di Cloud Identity atau Google Workspace.
  2. Cabut peran IAM yang tidak sah yang diberikan kepada pengguna eksternal, akun layanan, atau agen AI di project atau resource Gemini Enterprise.
  3. Tinjau dan hapus dokumen yang tidak sah atau tidak tepercaya yang diimpor ke datastore Gemini Enterprise untuk mencegah perusakan penyimpanan pengetahuan atau injeksi perintah tidak langsung.
  4. Untuk membatasi penambahan akun utama eksternal ke resource Anda, gunakan Batasan kebijakan organisasi berbagi yang dibatasi domain.

Untuk rekomendasi respons, lihat Merespons temuan ancaman AI.

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": "Impact: Gemini Discovery Engine API Document Import by External User",
    "securityMarks": {
      "name": "organizations/ORGANIZATION_ID/sources/SOURCE_ID/locations/global/findings/FINDING_ID/securityMarks"
    },
    "eventTime": "TIMESTAMP",
    "createTime": "TIMESTAMP",
    "severity": "MEDIUM",
    "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/locations/global/findings/FINDING_ID",
    "findingClass": "THREAT",
    "access": {
      "principalEmail": "PRINCIPAL_EMAIL",
      "callerIp": "IP_ADDRESS",
      "callerIpGeo": {
        "regionCode": "COUNTRY_CODE"
      },
      "userAgent": "USER_AGENT",
      "serviceName": "discoveryengine.googleapis.com",
      "methodName": "google.cloud.discoveryengine.v1.DocumentService.ImportDocuments",
      "principalSubject": "user:PRINCIPAL_EMAIL"
    },
    "mitreAttack": {
      "primaryTactic": "IMPACT",
      "additionalTactics": [
        "DEFENSE_EVASION",
        "PERSISTENCE"
      ]
    },
    "parentDisplayName": "Event Threat Detection",
    "domains": [
      {
        "category": "AI"
      }
    ],
    "logEntries": [
      {
        "cloudLoggingEntry": {
          "insertId": "INSERT_ID",
          "logId": "cloudaudit.googleapis.com/data_access",
          "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/organizations/ORGANIZATION_ID",
      "parentDisplayName": "ORGANIZATION_DISPLAY_NAME",
      "organization": "organizations/ORGANIZATION_ID"
    },
    "resourcePath": {
      "nodes": [
        {
          "nodeType": "GCP_PROJECT",
          "id": "projects/PROJECT_NUMBER",
          "displayName": "PROJECT_ID"
        },
        {
          "nodeType": "GCP_ORGANIZATION",
          "id": "organizations/ORGANIZATION_ID"
        }
      ]
    },
    "resourcePathString": "organizations/ORGANIZATION_ID/projects/PROJECT_NUMBER"
  },
  "sourceProperties": {
    "sourceId": {
      "projectNumber": "PROJECT_NUMBER",
      "customerOrganizationNumber": "ORGANIZATION_ID"
    },
    "detectionCategory": {
      "ruleName": "gemini_enterprise_datastore_document_import_by_external_user"
    },
    "detectionPriority": "MEDIUM",
    "affectedResources": [
      {
        "gcpResourceName": "//discoveryengine.googleapis.com/projects/PROJECT_NUMBER/locations/LOCATION/collections/default_collection/dataStores/DATA_STORE_ID/branches/0"
      },
      {
        "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/data_access"
        }
      }
    ],
    "findingId": "FINDING_ID",
    "contextUris": {
      "mitreUri": {
        "displayName": "MITRE Link",
        "url": "https://attack.mitre.org/techniques/T1565/001/"
      },
      "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"
      }
    ]
  }
}

Langkah berikutnya