Dampak: Impor Dokumen Gemini Discovery Engine API dari Resource 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

Upaya dilakukan untuk mengimpor dokumen ke datastore Gemini Enterprise dari resource eksternal Google Cloud di luar organisasi atau project Anda, seperti bucket Cloud Storage eksternal atau set data BigQuery. 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 from External Resource 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, 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 resource sumber eksternal (seperti gcsSource.inputUris, bigquerySource, cloudSqlSource, spannerSource, firestoreSource, alloyDbSource, bigtableSource, atau fhirStoreSource).

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 dari resource eksternal diizinkan. Jika sah, konfigurasikan akses resource lintas project tepercaya atau lakukan penyerapan dari bucket internal.
  2. Pertimbangkan untuk mencabut izin untuk akun utama yang memulai impor hingga penyelidikan Anda selesai.
  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 mencegah pergerakan data di seluruh batas organisasi, konfigurasikan perimeter layanan Kontrol Layanan VPC di sekitar resource penyimpanan dan Gemini Enterprise Anda.

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 from External Resource",
    "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_document_import_attempt_from_external_resource"
    },
    "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