Descripción general de los módulos personalizados para Event Threat Detection

En esta página, se proporciona una descripción general de los módulos personalizados para Event Threat Detection.

Puedes configurar módulos, también conocidos como detectores, para que procesen tus Cloud Logging y y detectar amenazas según los parámetros que especifiques. Esta función extiende el de supervisión de Event Threat Detection y te permite agregar módulos con propios parámetros de detección, orientación de remediación y designaciones de gravedad para que los detectores integrados podrían no admitir.

Los módulos personalizados son útiles si necesitas módulos con reglas de detección que cumplan con las necesidades únicas de tu organización. Por ejemplo, puedes agregar un módulo personalizado Crea resultados si las entradas de registro muestran que un recurso está conectado a una IP específica. direcciones IP o se crea en una región restringida.

Cómo funcionan los módulos personalizados para Event Threat Detection

Los módulos personalizados son un grupo selecto de detectores de Event Threat Detection que puedes que puedes configurar con tus propios parámetros de detección. Puedes crear un Módulo personalizado de Event Threat Detection a través de la consola de Google Cloud. Por otro lado, puedes crear una actualizando una plantilla de módulo personalizada el módulo personalizado a Security Command Center con Google Cloud CLI. Para información sobre las plantillas disponibles, consulta Módulos personalizados y plantillas.

Las plantillas de módulos personalizadas se escriben en JSON y te permiten definir las parámetros que controlan qué eventos en las entradas de registro deben activar los resultados. Para ejemplo, el detector integrado Malware: Bad IP verifica Registros de flujo de nube privada virtual para evidencia de conexiones a IP sospechosas conocidas direcciones IP del proveedor. Sin embargo, puedes habilitar y modificar el Configurable Bad IP personalizado. módulo con una lista de las direcciones IP sospechosas que mantienes. Si tus registros indican una conexión con cualquiera de tus direcciones IP proporcionadas, se generarse y escribirse en Security Command Center.

Las plantillas de módulos también te permiten definir la gravedad de las amenazas y proporcionar pasos de solución para ayudar a tus equipos de seguridad a solucionar problemas.

Con los módulos personalizados, tienes más control sobre cómo Event Threat Detection detecta amenazas e informa los hallazgos. Los módulos personalizados incluyen los parámetros proporcionados, pero seguirán utilizando la lógica de detección y las amenazas propias de Event Threat Detection Inteligencia Artificial, incluido el emparejamiento del indicador de tripwire. Puedes implementar una amplia un conjunto de modelos de amenazas adaptados a los requisitos únicos de tu organización.

Los módulos personalizados de Event Threat Detection se ejecutan junto con los detectores integrados. Habilitada Los módulos se ejecutan en modo en tiempo real, lo que activa análisis cada vez que se agregan registros nuevos crear.

Módulos y plantillas personalizados

La siguiente tabla contiene una lista de los tipos de módulos personalizados admitidos: descripciones, registros obligatorios y plantillas de módulos JSON.

Necesitas estas plantillas de módulos JSON si quieres usar la gcloud CLI para crear o actualizar módulos personalizados. Para ver una plantilla, Haz clic en el ícono de expansión junto al nombre. Información sobre el uso de módulos personalizados, consulta Cómo configurar y administrar módulos módulos.

Categoría Module type Tipos de fuente del archivo de registro Descripción
IP incorrecta configurable CONFIGURABLE_BAD_IP Registros de flujo de VPC
Registros de reglas de firewall
Detecta una conexión a una dirección IP especificada.
Plantilla: IP incorrecta configurable
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "ips": [
    "IP_ADDRESS_1",
    "IP_ADDRESS_2"
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • IP_ADDRESS_1: Es una IPv4 o IPv6 de enrutamiento público. o el bloque CIDR que se debe vigilar, por ejemplo, 192.0.2.1 o 192.0.2.0/24.
  • IP_ADDRESS_2: Opcional Un objeto de enrutamiento público Dirección IPv4 o IPv6 o bloque CIDR para vigilar, por ejemplo, 192.0.2.1 o 192.0.2.0/24.
Dominio incorrecto configurable CONFIGURABLE_BAD_DOMAIN Registros de Cloud DNS Detecta una conexión a un nombre de dominio especificado.
Plantilla: Dominio incorrecto configurable
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "domains": [
    "DOMAIN_1","DOMAIN_2"
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • DOMAIN_1: Es un nombre de dominio para detectar. Por ejemplo, example.com. Un valor de localhost es no permitido. Los nombres de dominio Unicode y Punycode están normalizados. Para ejemplo, 例子.example y xn--fsqu00a.example son equivalentes.
  • DOMAIN_2: Opcional Un nombre de dominio para observar por ejemplo, example.com. Un valor de No se permite localhost. Nombres de dominio Unicode y Punycode están normalizados. Por ejemplo, 例子.example y xn--fsqu00a.example se equivalente.
Tipo de instancia de Compute Engine inesperado CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_INSTANCE_TYPE Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta la creación de instancias de Compute Engine que no coinciden con un tipo de instancia o una configuración especificados.
Plantilla: Tipo de instancia de Compute Engine inesperado
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "instances": [
    {
      "series": "SERIES",
      "cpus": {
        "minimum": MINIMUM_NUMBER_OF_CPUS,
        "maximum": MAXIMUM_NUMBER_OF_CPUS
      },
      "ram_mb": {
        "minimum": MINIMUM_RAM_SIZE,
        "maximum": MAXIMUM_RAM_SIZE
      },
      "gpus": {
        "minimum": MINIMUM_NUMBER_OF_GPUS,
        "maximum": MAXIMUM_NUMBER_OF_GPUS
      },
      "projects": [
        "PROJECT_ID_1",
        "PROJECT_ID_2"
      ],
      "regions": [
        "REGION_1",
        "REGION_2"
      ]
    },
    {
      "series": " ... ",
      ...
      "regions": [ ... ]
    }
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • SERIES: Opcional La herramienta Compute Engine de máquina virtual, por ejemplo, C2. Si está vacío, el módulo permite todas las series. Para obtener más información, consulta Recurso y comparación de familias de máquinas de la guía de YouTube.
  • MINIMUM_NUMBER_OF_CPUS: Opcional El mínimo la cantidad de CPU que se permitirá. Si no está presente, no hay un mínimo. No debe ser negativo.
  • MAXIMUM_NUMBER_OF_CPUS: Opcional El máximo la cantidad de CPU que se permitirá. Si no está presente, no hay un máximo. Debe ser mayor o igual que minimum e inferior o igual a igual a 1,000.
  • MINIMUM_RAM_SIZE: Opcional RAM mínima y el tamaño máximo permitido, en megabytes. Si no está presente, no habrá mínimo.
  • MAXIMUM_RAM_SIZE: Opcional La cantidad máxima de RAM y el tamaño máximo permitido, en megabytes. Si no está presente, no habrá máximo. Debe ser mayor o igual que minimum y menor igual o superior a 10,000,000.
  • MINIMUM_NUMBER_OF_GPUS: Opcional El mínimo la cantidad de GPU que se permitirán. Si no está presente, no hay un mínimo. No debe ser negativo.
  • MAXIMUM_NUMBER_OF_GPUS: Opcional El máximo la cantidad de GPU que se permitirán. Si no está presente, no hay un máximo. Indispensable ser superior o igual a minimum e inferior o igual a 100.
  • PROJECT_ID_1: Opcional El ID de un proyecto que al que quieres aplicar este módulo, por ejemplo, projects/example-project. Si está vacío o no está configurado, el módulo se aplican a las instancias creadas en todos los proyectos dentro del permiso actual.
  • PROJECT_ID_2: Opcional El ID de un proyecto que al que quieres aplicar este módulo, por ejemplo, projects/example-project.
  • REGION_1: Opcional Una región en la que quieras aplicar esto módulo, por ejemplo, us-central1. Si está vacía o no se establece, el se aplica a las instancias creadas en todas las regiones.
  • REGION_2: Opcional Una región en la que desees este módulo, por ejemplo, us-central1.
Imagen de origen de Compute Engine inesperada CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_SOURCE_IMAGE Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta la creación de una instancia de Compute Engine con una imagen o familia de imágenes que no coincide con una lista especificada
Plantilla: Imagen de origen inesperada de Compute Engine
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "patterns": [
    {

      "pattern": "PATTERN_1",
      "name": "NAME_1"
    },
    {
      "pattern": "PATTERN_2",
      "name": "NAME_2"
    }
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • PATTERN_1: Es un objeto RE2. expresión regular para comparar las imágenes, por ejemplo, debian-image-1 Si se usa una imagen para crear una instancia de Compute Engine y su nombre no coincide con ninguna de las expresiones regulares especificadas, se genera un resultado.
  • NAME_1: Es un nombre descriptivo para esto. patrón, por ejemplo, first-image.
  • PATTERN_2: Opcional Otra expresión regular RE2 para verificar imágenes, por ejemplo, debian-image-2.
  • NAME_2: Opcional Un nombre descriptivo para el segundo patrón, por ejemplo, second-image.
Región inesperada de Compute Engine CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_REGION Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta la creación de una instancia de Compute Engine en una región que no se encuentra en una lista especificada
Plantilla: Región inesperada de Compute Engine
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "regions": [
    {
      "region": "REGION_1"
    },
    {
      "region": "REGION_2"
    }
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • REGION_1: Es el nombre de una región que se debe permitir. ejemplo, us-west1. Si una instancia de Compute Engine está creado en una región que no está especificada en la lista, Event Threat Detection o un hallazgo.
  • REGION_2: Opcional El nombre de una región a permitir, por ejemplo, us-central1. Si se crea una instancia de Compute Engine en una región que no está especificada en la lista, Event Threat Detection emite un hallazgo.
Se usó la cuenta de anulación de emergencia CONFIGURABLE_BREAKGLASS_ACCOUNT_USED Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta el uso de una cuenta de acceso de emergencia (anulación de emergencia).
Plantilla: Se usó la cuenta de anulación de emergencia
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "accounts": [
    "BREAKGLASS_ACCOUNT_1", "BREAKGLASS_ACCOUNT_2"
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • BREAKGLASS_ACCOUNT_1: Una cuenta de anulación de emergencia para tener en cuenta, por ejemplo, test@example.com. Un hallazgo es generados si esta cuenta se utiliza para una acción que se registra en un Registros de auditoría de Cloud.
  • BREAKGLASS_ACCOUNT_2: Opcional Una anulación de emergencia cuenta para supervisar, por ejemplo, test@example.com. R se genera un resultado si esta cuenta se utiliza para una acción que se registra en una entrada de Registros de auditoría de Cloud.
Otorgamiento de rol inesperado CONFIGURABLE_UNEXPECTED_ROLE_GRANT Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta cuándo se otorga un rol especificado a un usuario.
Plantilla: Otorgamiento de rol inesperado
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "roles": ["ROLE_1", "ROLE_2"]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • ROLE_1: Un rol de IAM para mirar por ejemplo, roles/owner. Se genera un hallazgo si se otorga este rol.
  • ROLE_2: Opcional Un rol de IAM para por ejemplo, roles/editor. Se genera un hallazgo si se otorga este rol.
Rol personalizado con permiso prohibido CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta cuándo se crea o actualiza un rol personalizado con cualquiera de los permisos de IAM especificados.
Plantilla: Rol personalizado con permiso prohibido
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "permissions": [
    "PERMISSION_1",
    "PERMISSION_2"
  ]
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • PERMISSION_1: Es un permiso de IAM para lo siguiente: tener en cuenta, por ejemplo, storage.buckets.list. Event Threat Detection emite un hallazgo si un rol de IAM personalizado que contiene este permiso se otorga a una principal.
  • PERMISSION_2: Opcional Un IAM permiso para vigilar, por ejemplo, storage.buckets.get. Event Threat Detection emite un un rol de IAM personalizado que contiene este permiso otorgada a una principal.
Llamada inesperada a la API de Cloud CONFIGURABLE_UNEXPECTED_CLOUD_API_CALL Registros de auditoría de Cloud:
Registros de actividad del administrador (obligatorio)
Registros de acceso a los datos (opcional)
Detecta cuándo una principal especificada llama a un método especificado en un recurso especificado. Un resultado se genera solo si todas las expresiones regulares coinciden en una sola entrada de registro.
Plantilla: Llamada inesperada a la API de Cloud
{
  "metadata": {
    "severity": "SEVERITY",
    "description": "DESCRIPTION",
    "recommendation": "RECOMMENDATION"
  },
  "caller_pattern": "CALLER_PATTERN",
  "method_pattern": "METHOD_PATTERN",
  "resource_pattern": "RESOURCE_PATTERN"
}

Reemplaza lo siguiente:

  • SEVERITY: la gravedad de los resultados que se deben producidos en este módulo. Los valores válidos son LOW, MEDIUM, HIGH y CRITICAL.
  • DESCRIPTION: Es una descripción de la amenaza que que detecta el módulo personalizado. Esta descripción se usa para propagar Propiedad explanation de cada hallazgo generado por este módulo.
  • RECOMMENDATION: Una explicación de los pasos recomendados que pueden seguir los equipos de seguridad para resolver el problema problema. Esta explicación se usa para propagar nextSteps de cada hallazgo que genera este módulo.
  • CALLER_PATTERN: Es un objeto RE2. expresión regular con la que se verificarán las principales. Por ejemplo: .* coincide con cualquier principal.
  • METHOD_PATTERN: Es un valor regular RE2 expresión para verificar los métodos, por ejemplo, ^cloudsql\\.instances\\.export$
  • RESOURCE_PATTERN: Es un valor regular RE2 expresión para comparar los recursos, por ejemplo, example-project

Precios y cuota

Esta función no tiene costo para la versión Premium de Security Command Center clientes.

Los módulos personalizados de Event Threat Detection están sujetos a límites de cuota.

El límite de cuota predeterminado para la creación de módulos personalizados es de 200.

Las llamadas a la API a métodos de módulos personalizados también están sujetas a límites de cuota. El En la siguiente tabla, se muestran los límites de cuota predeterminados para las llamadas a la API de módulos personalizados.

Tipo de llamada a la API Límite
Get, List 1,000 llamadas a la API por minuto y por organización
Create/update/delete 60 llamadas a la API por minuto y por organización

Límites de tamaño de los módulos

Cada módulo personalizado de Event Threat Detection tiene un con un límite de tamaño de 6 MB.

Límites de frecuencia

Se aplican los siguientes límites de frecuencia:

  • 30 hallazgos por módulo personalizado por hora
  • 200 hallazgos de módulos personalizados por recurso superior (organización o proyecto) por hora. Cada hallazgo cuenta para una organización o según el nivel en el que se creó el módulo personalizado de origen.

Estos límites no se pueden aumentar.

¿Qué sigue?