Integrar o Armis ao Google SecOps
Neste documento, descrevemos como integrar o Armis ao Google Security Operations.
Versão da integração: 12.0
Casos de uso
- Realizar ações de enriquecimento.
- Faça a ingestão dos alertas.
- Realize a triagem (atualize o status do alerta).
Parâmetros de integração
Use os seguintes parâmetros para configurar a integração:
| Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Raiz da API | String | Sim | Raiz da API do Armis. | |
| Chave secreta da API | Senha | N/A | Sim | Chave secreta da API do Armis |
| Verificar SSL | Caixa de seleção | Selecionado | Sim | Se ativada, verifica se o certificado SSL da conexão com o servidor Armis é válido. |
Para instruções sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
Você pode fazer mudanças mais tarde, se necessário. Depois de configurar uma instância de integração, você pode usá-la em playbooks. Para mais informações sobre como configurar e oferecer suporte a várias instâncias, consulte Suporte a várias instâncias.
Ações
Para mais informações sobre ações, consulte Responder a ações pendentes da sua mesa de trabalho e Realizar uma ação manual.
Ping
Teste a conectividade com o Armis.
Parâmetros
N/A
Data de execução
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 valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se a conexão for bem-sucedida: "Conexão com o servidor da Armis realizada com sucesso usando os parâmetros fornecidos." A ação precisa falhar e interromper a execução de um playbook: Se não for possível: "Não foi possível se conectar ao servidor da Armis! Erro: {0}".format(exception.stacktrace) |
Geral |
Enriquecer entidades
Aprimorar entidades usando informações da Armis. Entidades compatíveis: IP, endereço MAC.
Parâmetros
| Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Criar insight de endpoint | Caixa de seleção | Selecionado | Sim | Se ativada, a ação cria um insight com informações sobre os endpoints. |
Data de execução
Essa 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 valor | 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 disponível em JSON |
| ID | Quando disponível em JSON |
| ipAddress | Quando disponível em JSON |
| macAddress | Quando disponível em JSON |
| nome | Quando disponível em JSON |
| os | Quando disponível em JSON |
| purdue_level | Quando disponível em JSON |
| risk_level | Quando disponível em JSON |
| tags | Quando disponível em JSON |
| tipo | Quando disponível em JSON |
| usuário | Quando disponível em JSON |
| visibility | Quando disponível em JSON |
| site | Quando disponível em JSON |
| link | Quando disponível em JSON |
Painel de casos
| Tipo de resultado | Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: if enriched some(is_success = true): "Enriquecimento das seguintes entidades usando a Armis:\n".format(entity.identifier) Se não enriquecer algumas (is_success = true): "Não foi possível enriquecer as seguintes entidades usando o Armis:\n".format(entity.identifier) Se não enriquecer tudo (is_success = false): "Nenhuma entidade foi enriquecida". A ação precisa falhar e interromper a execução de um playbook: |
Geral |
| Tabela de entidades | Entidade |
Listar conexões de alerta
Liste as conexões relacionadas ao alerta no Armis.
Parâmetros
| Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Código de alerta | Número inteiro | Sim | Especifique o ID do alerta para o qual você quer extrair dados de conexões. | |
| Menor gravidade a ser buscada | DDL | Médio Valores possíveis:
|
Não | Especifique a menor gravidade das conexões que devem ser usadas ao buscá-las. |
| Número máximo de conexões a serem retornadas | Número inteiro | 50 | Não | Especifique quantas conexões serão retornadas. |
Data de execução
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | 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
}
Painel de casos
| Tipo de resultado | Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: if 200 and data is available (is_success = true): "Successfully returned connections related to the alert {alertId} based on the provided criteria in Armis." Se 200 e nenhum dado estiver disponível (is_success=false): "Nenhuma conexão foi encontrada relacionada ao alerta {alertId} com base nos critérios fornecidos na Armis". A ação precisa falhar e interromper a execução de um playbook: Se houver um erro fatal, como credenciais incorretas, sem conexão com o servidor, outro: "Erro ao executar a ação "List Alert Connections". Motivo: {0}''.format(error.Stacktrace) |
Geral |
| Tabela do painel de casos | Nome:Available Communications Colunas:
|
Geral |
Atualizar status do alerta
Atualize o status do alerta no Armis.
Parâmetros
| Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Código de alerta | Número inteiro | Sim | Especifique o ID do alerta cujo status você quer atualizar. | |
| Status | DDL | Não processada Valores possíveis:
|
Não | Especifique qual status deve ser definido para o alerta. |
Data de execução
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
| Nome do resultado do script | Opções de valor | Exemplo |
|---|---|---|
| is_success | Verdadeiro/falso | is_success:False |
Painel de casos
| Tipo de resultado | Descrição | Tipo |
|---|---|---|
| Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: if 200 (is_success = true): "O status do alerta "{alert id}" foi atualizado para "{status}" no Armis.". Se 400 (is_success=true): "O alerta "{alert id}" já tem o status "{status}" no Armis. " A ação precisa falhar e interromper a execução de um playbook: Se houver um erro fatal, como credenciais incorretas, sem conexão com o servidor, outros: "Erro ao executar a ação "Atualizar status do alerta". Motivo: {0}''.format(error.Stacktrace) Se 404: "Erro ao executar a ação "Atualizar status do alerta". Motivo: o alerta "{alert id}" não foi encontrado no Armis. |
Geral |
Conector
Para saber mais sobre como configurar conectores no Google SecOps, consulte Ingerir seus dados (conectores).
Armis: conector de alertas
Extrair alertas com atividades relacionadas do Armis.
Parâmetros do conector
Use os seguintes parâmetros para configurar o conector:
| Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
|---|---|---|---|---|
| Nome do campo do produto | String | alert_type | Sim | O nome do campo em que o nome do produto é armazenado. O valor padrão é O nome do produto afeta principalmente o mapeamento. Para simplificar e melhorar o processo de mapeamento do conector, o valor padrão |
| Nome do campo de evento | String | tipo | Sim | O nome do campo que determina o nome do evento (subtipo). |
| Nome do campo de ambiente | String | "" | Não | O nome do campo em que o nome do ambiente é armazenado. Se o campo "environment" estiver ausente, o conector usará o valor padrão. |
Environment Regex Pattern |
String | .* | Não |
Um padrão de expressão regular a ser executado no valor encontrado no campo Use o valor padrão Se o padrão de expressão regular for nulo ou vazio, ou se o valor do ambiente for nulo, o resultado final será o ambiente padrão. |
| Tempo limite do script (segundos) | Número inteiro | 180 | Sim | O limite de tempo limite, em segundos, para o processo do Python que executa o script atual. |
| Raiz da API | String | https:// | Sim | Raiz da API da instância do Armis. |
| Chave secreta da API | Senha | N/A | Sim | Chave secreta da API da conta da Armis. |
| Menor gravidade a ser buscada | Baixo | Baixo | Não | A gravidade mais baixa que será usada para buscar 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 recuperar os alertas. Esse parâmetro pode ser aplicado à iteração inicial do conector depois que você o ativa pela primeira vez ou ao valor de substituição de um carimbo de data/hora expirado do conector. |
| Máximo de alertas a serem buscados | Número inteiro | 10 | Não | O número de alertas a serem processados por iteração de conector. O valor máximo é 1000. |
Use whitelist as a blacklist |
Caixa de seleção | Selecionado | Sim | Se selecionado, o conector usa a lista dinâmica como uma lista de bloqueio. |
| Verificar SSL | Caixa de seleção | Desmarcado | Sim | Se selecionada, a integração valida o certificado SSL ao se conectar ao servidor da Armis. |
| Endereço do servidor proxy | String | Não | O endereço do servidor proxy a ser usado. | |
| Nome de usuário do proxy | String | Não | O nome de usuário do proxy para autenticação. | |
| Senha do proxy | Senha | Não | A senha do proxy para autenticação. |
Regras do conector
O conector é compatível com proxies.
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.