En este documento, se describe un tipo de hallazgo de amenazas de Security Command Center. Los detectores de amenazas generan hallazgos de amenazas cuando identifican una posible amenaza en tus recursos de Cloud. Para obtener una lista completa de los hallazgos de amenazas disponibles, consulta el Índice de hallazgos de amenazas.
Descripción general
Un agente potencialmente malicioso creó un Pod que tiene contenedores con privilegios o contenedores con capacidades de elevación de privilegios.
Un contenedor con privilegios tiene el campo privileged configurado como true. Un contenedor con capacidades de elevación de privilegios tiene el campo allowPrivilegeEscalation configurado como true. Para obtener más información, consulta la referencia de la API principal de SecurityContext v1 en la documentación de Kubernetes.
Event Threat Detection es la fuente de este hallazgo.
Cómo se debe responder
Para responder a este hallazgo, sigue los pasos que se indican a continuación:
Paso 1: Revisa los detalles del hallazgo
Abre un hallazgo de
Privilege Escalation: Launch of privileged Kubernetes containercomo se indica en Revisa los hallazgos. Se abrirá el panel de detalles del hallazgo en la pestaña Resumen.En la pestaña Resumen, revisa la información de las secciones siguientes:
- Qué se detectó, en especial, los campos siguientes:
- Correo electrónico principal: Es la cuenta que realizó la llamada.
- Pods de Kubernetes: Es el Pod recién creado con contenedores con privilegios.
- Recurso afectado, en especial, los campos siguientes:
- Nombre visible del recurso: Es el clúster de Kubernetes en el que se produjo la acción.
- Vínculos relacionados, en especial los campos siguientes:
- URI de Cloud Logging: Es el vínculo a las entradas de Logging.
- Método MITRE ATT&CK: Es el vínculo a la documentación de MITRE ATT&CK.
- Hallazgos relacionados: Son los vínculos a los hallazgos relacionados.
- Qué se detectó, en especial, los campos siguientes:
En la pestaña JSON, anota los valores de los campos del hallazgo:
- findings.kubernetes.pods[].containers: Es el contenedor con privilegios que se activó dentro del Pod.
Paso 2: Revisa los registros
- En la pestaña Resumen de los detalles del hallazgo en la consola de Google Cloud , haz clic en el vínculo del campo URI de Cloud Logging para ir al Explorador de registros.
Verifica otras acciones que realizó el principal con los siguientes filtros:
resource.labels.cluster_name="CLUSTER_NAME"protoPayload.authenticationInfo.principalEmail="PRINCIPAL_EMAIL"Reemplaza lo siguiente:
CLUSTER_NAME: Es el valor que anotaste en el campo Nombre visible del recurso en los detalles del hallazgo.PRINCIPAL_EMAIL: Es el valor que anotaste en el campo Correo electrónico principal en los detalles del hallazgo.
Paso 3: Investiga los métodos de ataque y respuesta
- Revisa las entradas del framework de MITRE ATT&CK para este tipo de hallazgo: Elevación de privilegios.
- Confirma que el contenedor que se creó requiere acceso a los recursos del host y a las capacidades del kernel.
- Determina si hay otros indicios de actividad maliciosa por parte del principal en los registros.
Si el correo electrónico principal no es una cuenta de servicio, comunícate con el propietario de la cuenta para confirmar si el propietario legítimo realizó la acción.
Si el correo electrónico principal es una cuenta de servicio (IAM o Kubernetes), identifica el origen de la acción para determinar su legitimidad.
Para elaborar un plan de respuesta, combina los resultados de la investigación con la investigación de MITRE.
Ejemplo de JSON de hallazgo
A continuación, se muestra un ejemplo del JSON del hallazgo.
{ "findings": { "access": { "principalEmail": "PRINCIPAL_EMAIL", "callerIp": "IP_ADDRESS", "callerIpGeo": { "regionCode": "US" }, "serviceName": "k8s.io", "methodName": "io.k8s.core.v1.pods.create" }, "canonicalName": "projects/PROJECT_NUMBER/sources/SOURCE_ID/findings/04206668443b45078d5b51c908ad87da", "category": "Privilege Escalation: Launch of privileged Kubernetes container", "contacts": { "technical": { "contacts": [ { "email": "EMAIL_ADDRESS" }, { "email": "EMAIL_ADDRESS" }, { "email": "EMAIL_ADDRESS" } ] } }, "createTime": "2022-10-08T21:43:41.145Z", "database": {}, "eventTime": "2022-10-08T21:43:09.188Z", "exfiltration": {}, "findingClass": "THREAT", "findingProviderId": "organizations/ORGANIZATION_NUMBER/firstPartyFindingProviders/etd", "indicator": {}, "kubernetes": { "pods": [ { "ns": "default", "name": "POD_NAME", "containers": [ { "name": "CONTAINER_NAME", "uri": "CONTAINER_URI" } ] } ] }, "mitreAttack": {}, "mute": "UNDEFINED", "name": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID/findings/04206668443b45078d5b51c908ad87da", "parent": "organizations/ORGANIZATION_NUMBER/sources/SOURCE_ID", "parentDisplayName": "Event Threat Detection", "resourceName": "//container.googleapis.com/projects/PROJECT_ID/locations/us-west1-a/clusters/CLUSTER_NAME", "severity": "LOW", "sourceDisplayName": "Event Threat Detection", "state": "ACTIVE", "vulnerability": {}, "workflowState": "NEW" }, "resource": { "name": "//container.googleapis.com/projects/PROJECT_ID/locations/us-west1-a/clusters/CLUSTER_NAME", "display_name": "CLUSTER_NAME", "project_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "project_display_name": "PROJECT_ID", "parent_name": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER", "parent_display_name": "PROJECT_ID", "type": "google.container.Cluster", "folders": [ { "resourceFolderDisplayName": "FOLDER_NAME", "resourceFolder": "//cloudresourcemanager.googleapis.com/folders/FOLDER_NUMBER" } ] }, "sourceProperties": { "sourceId": { "projectNumber": "PROJECT_NUMBER", "customerOrganizationNumber": "ORGANIZATION_NUMBER" }, "detectionCategory": { "ruleName": "gke_control_plane", "subRuleName": "launch_privileged_container" }, "detectionPriority": "LOW", "affectedResources": [ { "gcpResourceName": "//k8s.io/core/v1/namespaces/default/pods/POD_NAME" }, { "gcpResourceName": "//cloudresourcemanager.googleapis.com/projects/PROJECT_NUMBER" } ], "evidence": [ { "sourceLogId": { "projectId": "PROJECT_ID", "resourceContainer": "projects/PROJECT_ID", "timestamp": { "seconds": "1665265389", "nanos": 188357000 }, "insertId": "98b6dfb7-05f6-4279-a902-7e18e815364c" } } ], "properties": {}, "findingId": "04206668443b45078d5b51c908ad87da", "contextUris": { "mitreUri": { "displayName": "MITRE Link", "url": "https://attack.mitre.org/tactics/TA0004/" }, "cloudLoggingQueryUri": [ { "displayName": "Cloud Logging Query Link", "url": "https://console.cloud.google.com/logs/query;query=timestamp%3D%222022-10-08T21:43:09.188357Z%22%0AinsertId%3D%2298b6dfb7-05f6-4279-a902-7e18e815364c%22%0Aresource.labels.project_id%3D%22PROJECT_ID%22?project=PROJECT_ID" } ], "relatedFindingUri": {} } } }
¿Qué sigue?
- Aprende a trabajar con los hallazgos de amenazas en Security Command Center.
- Consulta el Índice de hallazgos de amenazas.
- Aprende a revisar un hallazgo con la consola de Google Cloud .
- Obtén información sobre los servicios que generan hallazgos de amenazas.