Persistance : Nouvelle méthode d'API

Ce document décrit un type de résultat de détection de menace dans Security Command Center. Ces résultats sont générés par les détecteurs de menaces lorsqu'ils détectent une menace potentielle dans vos ressources cloud. Pour obtenir la liste complète des résultats de détection de menace disponibles, consultez cet index.

Présentation

Une activité d'administration anormale a été détectée dans une organisation, un dossier ou un projet. Elle peut être l'une des suivantes :

  • Nouvelle activité d'un compte principal dans une organisation, un dossier ou un projet
  • Activité qui n'a pas été observée depuis un certain temps par un compte principal dans une organisation, un dossier ou un projet

Event Threat Detection est la source de ce résultat.

Actions à mettre en place

Pour traiter ce résultat, procédez comme suit :

Étape 1 : Examiner les détails du résultat

  1. Ouvrez le résultat Persistence: New API Method comme indiqué dans Examiner un résultat.
  2. Dans l'onglet Résumé des résultats détaillés, notez les valeurs des champs suivants :

    • Sous Risque détecté :
      • Adresse e-mail du compte principal : compte qui a effectué l'appel
      • Nom du service : nom de l'API du service Google Cloud utilisé dans l'action
      • Nom de la méthode : méthode appelée
    • Sous Ressource concernée :
      • Nom à afficher de la ressource : nom de la ressource concernée, qui peut être identique à celui de l'organisation, du dossier ou du projet
      • Chemin d'accès à la ressource : emplacement dans la hiérarchie des ressources où l'activité a eu lieu

Étape 2 : Étudier les méthodes d'attaque et de réponse

  1. Examinez les entrées du framework MITRE ATT&CK pour ce type de résultat : Persistance.
  2. Vérifiez si l'action était justifiée dans l'organisation, le dossier ou le projet, et si elle a été effectuée par le propriétaire légitime du compte. L'organisation, le dossier ou le projet sont affichés sur la ligne Chemin d'accès à la ressource, et le compte est affiché sur la ligne Adresse e-mail du compte principal.
  3. Pour élaborer un plan d'intervention, combinez vos résultats d'enquête avec les recherches MITRE.

Exemple de code JSON pour un résultat

Voici un exemple de fichier JSON de résultat.

{
 "findings": {
   "access": {
     "principalEmail": "PRINCIPAL_EMAIL",
     "callerIp": "IP_ADDRESS",
     "callerIpGeo": {
        "regionCode": "US"
      },
     "serviceName": "SERVICE_NAME",
     "methodName": "METHOD_NAME",
     "principalSubject": "PRINCIPAL_SUBJECT",
     "serviceAccountKeyName": "SERVICE_ACCOUNT_KEY_NAME"
   },
   "assetDisplayName": "ASSET_DISPLAY_NAME",
   "assetId": "organizations/ORGANIZATION_NUMBER/assets/ASSET_ID",
   "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
   "category": "Persistence: New API Method",
   "contacts": {
     "security": {
       "contacts": [
         {
           "email": "EMAIL_ADDRESS"
         },
         {
           "email": "EMAIL_ADDRESS"
         },
         {
           "email": "EMAIL_ADDRESS"
         }
       ]
     },
     "technical": {
       "contacts": [
         {
           "email": "EMAIL_ADDRESS"
         },
         {
           "email": "EMAIL_ADDRESS"
         },
         {
           "email": "EMAIL_ADDRESS"
         }
       ]
     }
   },
   "createTime": "2023-01-12T10:35:47.381Z",
   "database": {},
   "eventTime": "2023-01-12T10:35:47.270Z",
   "exfiltration": {},
   "findingClass": "THREAT",
   "findingProviderId": "organizations/ORGANIZATION_NUMBER/firstPartyFindingProviders/etd",
   "indicator": {},
   "kernelRootkit": {},
   "kubernetes": {},
   "mitreAttack": {},
   "mute": "UNDEFINED",
   "name": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID/findings/FINDING_ID",
   "parent": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID",
   "parentDisplayName": "Event Threat Detection",
   "resourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
   "severity": "LOW",
   "sourceDisplayName": "Event Threat Detection",
   "state": "ACTIVE",
   "vulnerability": {},
   "workflowState": "NEW"
 },
 "resource": {
   "name": "RESOURCE_NAME",
   "display_name": "RESOURCE_DISPLAY_NAME",
   "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER",
   "project_display_name": "PROJECT_ID",
   "parent_name": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER",
   "parent_display_name": "FOLDER_NAME",
   "type": "RESOURCE_TYPE",
   "folders": [
     {
       "resourceFolderDisplayName": "FOLDER_NAME",
       "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER"
     }
   ]
 },
 "sourceProperties": {
   "sourceId": {
     "projectNumber": "PROJECT_NUMBER",
     "customerOrganizationNumber": "ORGANIZATION_NUMBER"
   },
   "detectionCategory": {
     "technique": "persistence",
     "indicator": "audit_log",
     "ruleName": "anomalous_behavior",
     "subRuleName": "new_api_method"
   },
   "detectionPriority": "LOW",
   "affectedResources": [
     {
       "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER"
     }
   ],
   "evidence": [
     {
       "sourceLogId": {
         "projectId": "PROJECT_ID",
         "resourceContainer": "projects/PROJECT_ID",
         "timestamp": {
           "seconds": "1673519681",
           "nanos": 728289000
         },
         "insertId": "INSERT_ID"
       }
     }
   ],
   "properties": {
     "newApiMethod": {
       "newApiMethod": {
         "serviceName": "SERVICE_NAME",
         "methodName": "METHOD_NAME"
       },
       "principalEmail": "PRINCIPAL_EMAIL",
       "callerIp": "IP_ADDRESS",
       "callerUserAgent": "CALLER_USER_AGENT",
       "resourceContainer": "projects/PROJECT_NUMBER"
     }
   },
   "findingId": "FINDING_ID",
   "contextUris": {
     "mitreUri": {
       "displayName": "MITRE Link",
       "url": "https://attack.mitre.org/tactics/TA0003/"
     }
   }
 }
}

Étapes suivantes