Integre o Armis com o Google SecOps

Este documento descreve como integrar o Armis com o Google Security Operations.

Versão da integração: 12.0

Exemplos de utilização

  1. Realizar ações de enriquecimento.
  2. Realizar a carregamento dos alertas.
  3. Realizar ação de triagem (atualizar estado do alerta).

Parâmetros de integração

Use os seguintes parâmetros para configurar a integração:

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Raiz da API String Sim Raiz da API Armis
Segredo da API Palavra-passe N/A Sim Segredo da API Armis
Validar SSL Caixa de verificação Marcado Sim Se estiver ativada, verifica se o certificado SSL para a ligação ao servidor da Armis é válido.

Para obter instruções sobre como configurar uma integração no Google SecOps, consulte o artigo Configurar integrações.

Se necessário, pode fazer alterações numa fase posterior. Depois de configurar uma instância de integração, pode usá-la em manuais de soluções. Para mais informações sobre como configurar e suportar várias instâncias, consulte o artigo Suporte de várias instâncias.

Ações

Para mais informações sobre ações, consulte os artigos Responda a ações pendentes da sua mesa de trabalho e Execute uma ação manual.

Tchim-tchim

Teste a conetividade com o Armis.

Parâmetros

N/A

É apresentado em

A ação não usa entidades nem tem parâmetros de entrada obrigatórios.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False
Parede da caixa
Tipo de resultado Descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se tiver êxito: "Ligação ao servidor da Armis estabelecida com êxito com os parâmetros de ligação fornecidos!"

A ação deve falhar e parar a execução de um guia interativo:

Se não for bem-sucedido: "Não foi possível estabelecer ligação ao servidor da Armis! O erro é {0}".format(exception.stacktrace)

Geral

Enriquecer entidades

Enriqueça as entidades com informações da Armis. Entidades suportadas: IP, endereço MAC.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Crie estatísticas de pontos finais Caixa de verificação Marcado Sim Se estiver ativada, a ação cria uma estatística com informações sobre os pontos finais.

É apresentado em

Esta ação é executada nas seguintes entidades:

  • Endereço IP
  • Endereço MAC

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False

Resultado JSON

{
    "accessSwitch": null,
    "category": "Computers",
    "dataSources": [
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Example",
            "types": [
                "Asset & System Management",
                "Virtualization"
            ]
        },
        {
            "firstSeen": "2021-03-07T04:04:22.562873+00:00",
            "lastSeen": "2021-03-07T04:04:22.562873+00:00",
            "name": "Armis Smart Scanner",
            "types": [
                "Vulnerability Management"
            ]
        }
    ],
    "firstSeen": "2021-03-07T04:04:22.562873+00:00",
    "id": 1616,
    "ipAddress": "192.0.2.120",
    "ipv6": null,
    "lastSeen": "2021-03-21T08:05:40.244960+00:00",
    "macAddress": "01:23:45:ab:cd:ef",
    "manufacturer": "VMware",
    "model": "VMware Virtual Platform",
    "name": "Example",
    "operatingSystem": "CentOS",
    "operatingSystemVersion": "6.6",
    "purdueLevel": 4.0,
    "riskLevel": 5,
    "sensor": {
        "name": "North conference room",
        "type": "Physical Sensor"
    },
    "site": {
        "location": "Palo Alto",
        "name": "Palo Alto Offices"
    },
    "tags": [
        "Discover",
        "Example"
    ],
    "type": "Virtual Machines",
    "user": "",
    "visibility": "Full"
}

Enriquecimento de entidades

Nome do campo de enriquecimento Lógica: quando aplicar
categoria Quando estiver disponível em JSON
id Quando estiver disponível em JSON
ipAddress Quando estiver disponível em JSON
macAddress Quando estiver disponível em JSON
nome Quando estiver disponível em JSON
os Quando estiver disponível em JSON
purdue_level Quando estiver disponível em JSON
risk_level Quando estiver disponível em JSON
etiquetas Quando estiver disponível em JSON
escrever Quando estiver disponível em JSON
utilizador Quando estiver disponível em JSON
visibilidade Quando estiver disponível em JSON
site Quando estiver disponível em JSON
link Quando estiver disponível em JSON
Parede da caixa
Tipo de resultado Descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

if enriched some(is_success = true): "Successfully enriched the following entities using Armis:\n".format(entity.identifier)

Se não tiver enriquecido algumas (is_success = true): "Não foi possível enriquecer as seguintes entidades com o Armis:\n".format(entity.identifier)

Se não tiver enriquecido tudo (is_success = false): "Nenhuma entidade foi enriquecida".

A ação deve falhar e parar a execução de um playbook:
se ocorrer um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Erro ao executar a ação "Enriquecer entidades". Motivo: {0}''.format(error.Stacktrace)

Geral
Tabela de entidades Entidade

Listar associações de alertas

Liste as ligações relacionadas com o alerta no Armis.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
ID do alerta Número inteiro Sim Especifique o ID do alerta para o qual quer obter dados de associações.
Gravidade mais baixa a obter LDD

Médio

Valores possíveis:

  • Baixo
  • Médio
  • Alto
Não Especifique a gravidade mais baixa das associações que devem ser usadas quando as obtém.
Número máximo de ligações a devolver Número inteiro 50 Não Especifique o número de associações a devolver.

É apresentado em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False

Resultado JSON

{
    "band": null,
    "channel": null,
    "dhcpAuthenticationDuration": null,
    "duration": 12339,
    "endTimestamp": "2021-03-18T20:19:31.562873+00:00",
    "id": 33355,
    "inboundTraffic": 12412512,
    "outboundTraffic": 19626489,
    "protocol": "Bluetooth",
    "radiusAuthenticationDuration": null,
    "risk": "Medium",
    "rssi": null,
    "sensor": {
        "name": "EXAMPLE",
        "type": "Switch"
    },
    "site": {
        "location": "Location",
        "name": "Location HQ"
    },
    "snr": null,
    "sourceId": 2097,
    "startTimestamp": "2021-03-18T16:53:52.562873+00:00",
    "targetId": 217,
    "title": "Connection between Example and user's iPhone",
    "totalAssociationDuration": null,
    "traffic": 32039001,
    "wlanAssociationDuration": null
}
Parede da caixa
Tipo de resultado Descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se 200 e os dados estiverem disponíveis (is_success = true): "Foram devolvidas com êxito as associações relacionadas com o alerta {alertId} com base nos critérios fornecidos no Armis."

Se o código de resposta for 200 e não estiverem disponíveis dados (is_success=false): "Não foram encontradas associações relacionadas com o alerta {alertId} com base nos critérios fornecidos no Armis."

A ação deve falhar e parar a execução de um guia interativo:

Se ocorrer um erro fatal, como credenciais incorretas, sem ligação ao servidor, entre outros: "Erro ao executar a ação "List Alert Connections". Motivo: {0}''.format(error.Stacktrace)

Geral
Tabela de parede da caixa

Nome: comunicações disponíveis

Colunas:

  • Título
  • Protocolo
  • Gravidade
  • Hora de início
  • Hora de fim
Geral

Atualize o estado do alerta

Atualize o estado do alerta no Armis.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
ID do alerta Número inteiro Sim Especifique o ID do alerta para o qual quer atualizar o estado.
Estado LDD

Não processado

Valores possíveis:

  • Não processado
  • Suprimida
  • Resolvido
Não Especifique o estado que deve ser definido para o alerta.

É apresentado em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False
Parede da caixa
Tipo de resultado Descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

if 200 (is_success = true): "O estado do alerta "{alert id}" foi atualizado com êxito para "{status}" no Armis.".

If 400 (is_success=true): "O alerta "{alert id}" já tem o estado "{status}" no Armis. "

A ação deve falhar e parar a execução de um guia interativo:

Se ocorrer um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Erro ao executar a ação "Atualizar estado do alerta". Motivo: {0}''.format(error.Stacktrace)

Se for 404: "Erro ao executar a ação "Atualizar estado do alerta". Motivo: não foi possível encontrar o alerta "{alert id}" no Armis.

Geral

Conetor

Para mais detalhes sobre como configurar conetores no Google SecOps, consulte o artigo Carregue os seus dados (conetores).

Armis - Alerts Connector

Extraia alertas com atividades relacionadas do Armis.

Parâmetros do conetor

Use os seguintes parâmetros para configurar o conector:

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Nome do campo do produto String alert_type Sim

O nome do campo onde o nome do produto está armazenado.

O valor predefinido é alert_type.

O nome do produto afeta principalmente o mapeamento. Para simplificar e melhorar o processo de mapeamento do conetor, o valor predefinido alert_type é resolvido para um valor alternativo referenciado a partir do código. Qualquer entrada inválida para este parâmetro é resolvida para um valor alternativo por predefinição.

Nome do campo de evento String escrever Sim

O nome do campo que determina o nome do evento (subtipo).

Nome do campo do ambiente String "" Não

O nome do campo onde o nome do ambiente está armazenado.

Se o campo de ambiente estiver em falta, o conector usa o valor predefinido.

Environment Regex Pattern String .* Não

Um padrão de expressão regular a executar no valor encontrado no campo Environment Field Name. Este parâmetro permite-lhe manipular o campo de ambiente através da lógica de expressão regular.

Use o valor predefinido .* para obter o valor bruto Environment Field Name necessário.

Se o padrão de expressão regular for nulo ou estiver vazio, ou o valor do ambiente for nulo, o resultado do ambiente final é o ambiente predefinido.

Limite de tempo do script (segundos) Número inteiro 180 Sim

O limite de tempo limite, em segundos, para o processo Python que executa o script atual.

Raiz da API String https:// Sim Raiz da API da instância do Armis.
Segredo da API Palavra-passe N/A Sim Segredo da API da conta da Armis.
Gravidade mais baixa a obter Baixo Baixo Não Gravidade mais baixa que vai ser usada para obter alertas. Valores possíveis: Low, Medium, High.
Máximo de horas para trás Número inteiro 1 Não

O número de horas antes da primeira iteração do conector para obter os alertas.

Este parâmetro pode aplicar-se à iteração inicial do conector depois de ativar o conector pela primeira vez ou ao valor alternativo para uma data/hora do conector expirada.

Máximo de alertas a obter Número inteiro 10 Não O número de alertas a processar por iteração de conetor. O valor máximo é 1000.
Use whitelist as a blacklist Caixa de verificação Marcado Sim

Se estiver selecionada, o conetor usa a lista dinâmica como uma lista de bloqueios.

Validar SSL Caixa de verificação Desmarcado Sim Se estiver selecionada, a integração valida o certificado SSL quando se liga ao servidor Armis.
Endereço do servidor proxy String Não O endereço do servidor proxy a usar.
Nome de utilizador do proxy String Não O nome de utilizador do proxy para autenticação.
Palavra-passe do proxy Palavra-passe Não A palavra-passe do proxy para autenticação.

Regras de conector

O conetor suporta proxies.

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.