Nesta página, você encontra uma visão geral dos módulos personalizados do Event Threat Detection.
É possível configurar módulos, também conhecidos como detectores, para processar o fluxo do Cloud Logging e detectar ameaças com base nos parâmetros especificados. Esse recurso amplia as capacidades de monitoramento do Event Threat Detection e permite adicionar módulos com seus próprios parâmetros de detecção, orientações de correção e designações de gravidade para configurações incompatíveis com os detectores integrados.
Os módulos personalizados são úteis quando você precisa de módulos com regras de detecção que atendam às necessidades exclusivas da sua organização. Por exemplo, é possível adicionar um módulo personalizado que cria descobertas se as entradas de registro mostrarem que um recurso está conectado a endereços IP específicos ou foi criado em uma região restrita.
Como os módulos personalizados do Event Threat Detection funcionam
Os módulos personalizados são um grupo seleto de detectores do Event Threat Detection que podem ser configurados com seus próprios parâmetros. É possível criar um módulo personalizado do Event Threat Detection pelo console do Google Cloud. Outra possibilidade de criação é atualizar um modelo de módulo personalizado e enviá-lo ao Security Command Center via Google Cloud CLI. Para informações sobre modelos disponíveis, consulte Módulos personalizados e modelos.
Os modelos de módulo personalizado são escritos em JSON e permitem definir parâmetros de detecção que controlam quais eventos nas entradas de registro acionarão descobertas. Por
exemplo, o detector Malware: Bad IP integrado verifica
os registros de fluxo da nuvem privada virtual em busca de evidências de conexões com endereços IP
suspeitos conhecidos. No entanto, é possível ativar e modificar o módulo personalizado Configurable Bad IP com uma lista de endereços IP suspeitos que você mantém. Se os registros indicarem uma conexão com qualquer um dos endereços IP fornecidos, uma descoberta será gerada e gravada no Security Command Center.
Os modelos de módulo também permitem definir a gravidade das ameaças e fornecem etapas de correção personalizadas para ajudar as equipes de segurança a resolver problemas.
Com os módulos personalizados, você tem mais controle sobre como o Event Threat Detection detecta ameaças e reporta descobertas. Os módulos personalizados contêm os parâmetros que você forneceu, mas ainda utilizam a lógica de detecção e a inteligência contra ameaças exclusivas do Event Threat Detection, incluindo a correspondência de indicadores tripwire. É possível implementar um amplo conjunto de modelos de ameaças personalizados de acordo com os requisitos exclusivos da sua organização.
Os módulos personalizados do Event Threat Detection são executados com os detectores integrados. Os módulos ativados são executados no modo em tempo real, que aciona as verificações sempre que novos registros são criados.
Módulos personalizados e modelos
A tabela a seguir contém uma lista de tipos de módulos personalizados,
descrições, registros obrigatórios e modelos de módulo JSON compatíveis.
Você precisará desses modelos de módulo JSON se quiser usar a gcloud CLI para criar ou atualizar módulos personalizados. Para ver um modelo, clique no ícone de expansão add_circle ao lado do nome dele. Para informações sobre o uso de módulos personalizados, consulte Configurar e gerenciar módulos personalizados.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
IP_ADDRESS_1: um endereço IPv4 ou IPv6 roteável publicamente ou um bloco CIDR que será monitorado, por exemplo, 192.0.2.1 ou 192.0.2.0/24.
IP_ADDRESS_2: opcional. Um endereço IPv4 ou IPv6 roteável publicamente ou um bloco CIDR que será monitorado, por exemplo, 192.0.2.1 ou 192.0.2.0/24.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
DOMAIN_1: um nome de domínio que será monitorado, por exemplo, example.com. Um valor de localhost não é permitido. Os nomes de domínio Unicode e Punycode são normalizados. Por exemplo, 例子.example e xn--fsqu00a.example são equivalentes.
DOMAIN_2: opcional. Um nome de domínio que será monitorado, por exemplo, example.com. Um valor de localhost não é permitido. Os nomes de domínio Unicode e Punycode são normalizados. Por exemplo, 例子.example e xn--fsqu00a.example são equivalentes.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
MINIMUM_NUMBER_OF_CPUS: opcional. O número mínimo de CPUs que será permitido. Se não estiver presente, não haverá valor mínimo.
Não pode ser negativo.
MAXIMUM_NUMBER_OF_CPUS: opcional. O número máximo de CPUs que será permitido. Se não estiver presente, não haverá valor máximo.
Precisa ser maior ou igual a minimum e menor ou igual a 1.000.
MINIMUM_RAM_SIZE: opcional. O tamanho mínimo de RAM que será permitido, em megabytes. Se não estiver presente, não haverá valor mínimo.
MAXIMUM_RAM_SIZE: opcional. O tamanho máximo de RAM que será permitido, em megabytes. Se não estiver presente, não haverá valor máximo. Precisa ser maior ou igual a minimum e menor ou igual a 10.000.000.
MINIMUM_NUMBER_OF_GPUS: opcional. O número mínimo de GPUs que será permitido. Se não estiver presente, não haverá valor mínimo.
Não pode ser negativo.
MAXIMUM_NUMBER_OF_GPUS: opcional. O número máximo de GPUs que será permitido. Se não estiver presente, não haverá valor máximo. Precisa ser maior ou igual a minimum e menor ou igual a 100.
PROJECT_ID_1: opcional. O ID de um projeto a que você quer aplicar esse módulo, por exemplo, projects/example-project. Se estiver vazio ou indefinido, o módulo será aplicado às instâncias criadas em todos os projetos dentro do escopo atual.
PROJECT_ID_2: opcional. O ID de um projeto a que você quer aplicar esse módulo, por exemplo, projects/example-project.
REGION_1: opcional. Uma região a que você quer aplicar esse módulo, por exemplo, us-central1. Se estiver vazio ou indefinido, o módulo será aplicado às instâncias criadas em todas as regiões.
REGION_2: opcional. Uma região a que você quer aplicar esse módulo, por exemplo, us-central1.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
PATTERN_1: uma expressão regular RE2 para verificar imagens, por exemplo, debian-image-1. Uma descoberta será gerada se uma imagem for usada para criar uma instância do Compute Engine e o nome dela não corresponder a nenhuma
das expressões regulares especificadas.
NAME_1: um nome descritivo para esse padrão, por exemplo, first-image.
PATTERN_2: opcional. Outra expressão regular RE2 para verificar imagens, por exemplo, debian-image-2.
NAME_2: opcional. Um nome descritivo para o segundo padrão, por exemplo, second-image.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
REGION_1: o
nome de uma região que será
permitida, por exemplo, us-west1. Se uma instância do Compute Engine
for criada em uma região não especificada na lista,
o Event Threat Detection vai gerar uma descoberta.
REGION_2: opcional. O nome de uma região que será permitida, por exemplo, us-central1. Se uma instância do Compute Engine for criada em uma região não especificada na lista, o Event Threat Detection vai gerar uma descoberta.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
BREAKGLASS_ACCOUNT_1: uma conta de implantação forçada que será monitorada, por exemplo, test@example.com. Uma descoberta será gerada se essa conta for usada para uma ação registrada em uma entrada dos Registros de auditoria do Cloud.
BREAKGLASS_ACCOUNT_2: opcional. Uma conta de implantação forçada que será monitorada, por exemplo, test@example.com. Uma descoberta será gerada se essa conta for usada para uma ação registrada em uma entrada dos Registros de auditoria do Cloud.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
ROLE_1: um papel do IAM que será monitorado, por exemplo, roles/owner. Uma descoberta será gerada se esse papel for concedido.
ROLE_2: opcional. Um papel do IAM que será monitorado, por exemplo, roles/editor. Uma descoberta será gerada se esse papel for concedido.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
PERMISSION_1: uma
permissão do IAM
que será monitorada, por exemplo, storage.buckets.list.
O Event Threat Detection gera uma descoberta se um papel personalizado do IAM
que contém essa permissão for concedido a um principal.
PERMISSION_2: opcional. Uma permissão do IAM que será monitorada, por exemplo, storage.buckets.get.
O Event Threat Detection gera uma descoberta se um papel personalizado do IAM
que contém essa permissão for concedido a um principal.
Detecta quando um principal especificado chama um método especificado em um
recurso especificado. Uma descoberta só é gerada se todas as expressões regulares
forem correspondidas em uma única entrada de registro.
SEVERITY: a gravidade das descobertas que serão produzidas por esse módulo. Os valores válidos são LOW, MEDIUM, HIGH e CRITICAL.
DESCRIPTION: uma descrição da ameaça que o módulo personalizado detecta. Essa descrição é usada para preencher a property explanation de cada descoberta gerada por esse módulo.
RECOMMENDATION: uma explicação das etapas recomendadas que as equipes de segurança podem seguir para resolver o problema detectado. Essa explicação é usada para preencher a property nextSteps de cada descoberta gerada por esse módulo.
CALLER_PATTERN: uma expressão regular RE2
para verificar as principais. Por exemplo,
.* corresponde a qualquer participante.
METHOD_PATTERN: uma expressão regular
RE2 para verificar métodos, por exemplo,
^cloudsql\\.instances\\.export$.
RESOURCE_PATTERN: uma expressão regular RE2 para verificar recursos, por exemplo, example-project.
Preços e cotas
Esse recurso é sem custo financeiro para clientes do Security Command Center Premium.
Os módulos personalizados do Event Threat Detection estão sujeitos a limites de cota.
O limite de cota padrão para a criação de módulos personalizados é 200.
As chamadas de API para métodos de módulo personalizados também estão sujeitas a limites de cota. A
tabela a seguir mostra os limites de cota padrão para chamadas de API do módulo personalizado.
Tipo de chamada de API
Limite
Get, List
1.000 chamadas de API por minuto e organização.
Criar, Atualizar, Excluir
60 chamadas de API por minuto e organização.
Limites de tamanho do módulo
Cada módulo personalizado de detecção de ameaças a eventos tem um
limite de tamanho de 6 MB.
Limites de taxas
Os seguintes limites de taxa se aplicam:
30 descobertas por módulo personalizado por hora.
200 descobertas de módulo personalizado por recurso pai (organização ou projeto)
por hora. Cada descoberta conta para uma organização ou
projeto, dependendo do nível em que o módulo personalizado de origem foi criado.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-02-19 UTC."],[],[]]