Recolha registos do Rapid7 InsightIDR

Compatível com:

Este analisador processa registos formatados em JSON e SYSLOG do Rapid7 InsightIDR. Extrai campos, normaliza-os para o UDM e executa uma lógica específica para dados de vulnerabilidade, incluindo classificações CVSS e informações de exploração, processando os formatos JSON e syslog separadamente. Também mapeia as tentativas de autenticação e os eventos de sessão para os tipos de eventos da UDM adequados.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps.
  • Acesso privilegiado à consola de gestão do InsightIDR.

Configurar uma chave da API no Rapid7 InsightIDR

  1. Inicie sessão na plataforma de comandos do InsightIDR.
  2. Clique em Administração.
  3. Clique em Chaves da API.
  4. Aceda ao separador Chaves da organização.
  5. Clique em Nova chave de organização.
  6. Selecione uma organização e indique um nome para a chave (por exemplo, Google SecOps).
  7. Gere a chave.
  8. Copie a chave de uma nova janela que apresenta a chave gerada.

Configure feeds

Para configurar um feed, siga estes passos:

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em Adicionar novo feed.
  3. Na página seguinte, clique em Configurar um único feed.
  4. No campo Nome do feed, introduza um nome para o feed; por exemplo, Registos do Rapid7 InsightIDR.
  5. Selecione API de terceiros como o Tipo de origem.
  6. Selecione Rapid7 Insight como o Tipo de registo.
  7. Clicar em Seguinte.
  8. Especifique valores para os seguintes parâmetros de entrada:
    • Cabeçalho HTTP de autenticação: token gerado anteriormente no formato X-Api-Key:<value> (por exemplo, X-Api-Key:AAAABBBBCCCC111122223333).
    • Ponto final da API: introduza vulnerabilities ou assets.
    • Nome de anfitrião da API: o FQDN (nome de domínio totalmente qualificado) do ponto final da API Rapid7 no formato [region].api.insight.rapid7.com.
  9. Clicar em Seguinte.
  10. Reveja a configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
added vulnerabilities.first_found O campo added é convertido numa data/hora e mapeado para vulnerabilities.first_found.
Authentication security_result.detection_fields.value O valor de Authentication do registo não processado é mapeado para o campo value em security_result.detection_fields. O key correspondente está definido como "Autenticação".
critical_vulnerabilities asset.attribute.labels.value O valor de critical_vulnerabilities está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Vulnerabilidades críticas".
cves vulnerabilities.cve_id O valor de cves está mapeado para vulnerabilities.cve_id.
cvss_v2_access_complexity asset.attribute.labels.value O valor de cvss_v2_access_complexity está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Complexidade de acesso(Ac)".
cvss_v2_availability_impact asset.attribute.labels.value O valor de cvss_v2_availability_impact está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Impacto na disponibilidade (A)".
cvss_v2_confidentiality_impact asset.attribute.labels.value O valor de cvss_v2_confidentiality_impact está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Impacto na confidencialidade (C)".
cvss_v2_integrity_impact asset.attribute.labels.value O valor de cvss_v2_integrity_impact está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Impacto na integridade (I)".
cvss_v2_score vulnerabilities.cvss_base_score O valor de cvss_v2_score é convertido numa string, depois num número de vírgula flutuante e mapeado para vulnerabilities.cvss_base_score.
cvss_v2_vector vulnerabilities.cvss_vector O valor de cvss_v2_vector está mapeado para vulnerabilities.cvss_vector.
cvss_v3_availability_impact asset.attribute.labels.value O valor de cvss_v3_availability_impact está mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Impacto na disponibilidade (A)".
cvss_v3_score vulnerabilities.cvss_base_score O valor de cvss_v3_score é convertido numa string, depois num número de vírgula flutuante e mapeado para vulnerabilities.cvss_base_score.
cvss_v3_vector vulnerabilities.cvss_vector O valor de cvss_v3_vector está mapeado para vulnerabilities.cvss_vector.
description vulnerabilities.description O valor de description do registo não processado é mapeado para vulnerabilities.description.
exploits asset.attribute.labels.value O valor de exploits é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente é "Número de explorações" ou "Classificação da exploração" com base na presença do campo "classificação" no objeto exploits.
host_name asset.hostname O valor de host_name está mapeado para asset.hostname. Se host_name estiver vazio e ip e mac estiverem vazios, é usado o valor de id.
id asset.product_object_id O valor de id está mapeado para asset.product_object_id. Se host_name estiver vazio e ip e mac estiverem vazios, o valor de id é usado para asset.hostname.
ip asset.ip, entity.asset.ip O valor de ip está mapeado para asset.ip e entity.asset.ip.
last_assessed_for_vulnerabilities vulnerabilities.scan_end_time O campo last_assessed_for_vulnerabilities é convertido numa data/hora e mapeado para vulnerabilities.scan_end_time.
last_scan_end vulnerabilities.last_found O campo last_scan_end é convertido numa data/hora e mapeado para vulnerabilities.last_found.
last_scan_start vulnerabilities.first_found O campo last_scan_start é convertido numa data/hora e mapeado para vulnerabilities.first_found.
links vulnerabilities.cve_id, vulnerabilities.vendor_knowledge_base_article_id O campo id em links está mapeado para vulnerabilities.cve_id e o campo href em links está mapeado para vulnerabilities.vendor_knowledge_base_article_id.
mac asset.mac, entity.asset.mac O valor de mac é convertido em minúsculas e mapeado para asset.mac e entity.asset.mac.
MessageSourceAddress principal.ip, principal.asset.ip O endereço IP extraído de MessageSourceAddress está mapeado para principal.ip e principal.asset.ip.
Method network.http.method O valor de Method está mapeado para network.http.method.
moderate_vulnerabilities asset.attribute.labels.value O valor de moderate_vulnerabilities é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Vulnerabilidades moderadas".
os_architecture asset.hardware.cpu_platform O valor de os_architecture está mapeado para asset.hardware.cpu_platform.
os_description asset.platform_software.platform_version O valor de os_description está mapeado para asset.platform_software.platform_version.
os_family asset.platform_software.platform O valor de os_family é convertido em maiúsculas e mapeado para asset.platform_software.platform. O processamento especial é feito para "MAC OS X", "IOS", "WINDOWS", "MAC" e "LINUX". Se não corresponder a nenhuma destas opções, é definido como "UNKNOWN_PLATFORM".
Port principal.port O valor de Port é mapeado para principal.port e convertido num número inteiro.
Principal principal.user.email_addresses Se Principal for um endereço de email, está mapeado para principal.user.email_addresses.
product_event_type metadata.product_event_type O valor de product_event_type está mapeado para metadata.product_event_type.
Protocol network.application_protocol Se Protocol for "HTTP" ou "HTTPS", é mapeado para network.application_protocol.
published vulnerabilities.last_found O campo published é convertido numa data/hora e mapeado para vulnerabilities.last_found.
Referer network.http.referral_url O valor de Referer está mapeado para network.http.referral_url.
risk_score asset.attribute.labels.value O valor de risk_score é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Pontuação de risco".
security_result_summary security_result.summary O valor de security_result_summary está mapeado para security_result.summary. Se corresponder ao padrão "Total de sessões para o principal: ", o número é extraído e mapeado para uma etiqueta separada com a chave "Contagem de sessões" em security_result.detection_fields.
Session network.session_id O valor de Session está mapeado para network.session_id.
severe_vulnerabilities asset.attribute.labels.value O valor de severe_vulnerabilities é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Vulnerabilidades graves".
severity vulnerabilities.severity, security_result.severity O valor de severity é convertido em maiúsculas. Se for "HIGH", "LOW", "CRITICAL" ou "MEDIUM", é mapeado para vulnerabilities.severity. Para mensagens syslog, se for "Info", é mapeado para "INFORMATIONAL" no security_result.severity. Se for "Error", é mapeado para "ERROR" em security_result.severity.
severity_score asset.attribute.labels.value O valor de severity_score é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Gravidade".
SiloID security_result.detection_fields.value O valor de SiloID está mapeado para o campo value em security_result.detection_fields. O key correspondente está definido como "ID do silo".
SourceModuleName target.resource.name O valor de SourceModuleName com as aspas removidas é mapeado para target.resource.name.
SourceModuleType observer.application O valor de SourceModuleType com as aspas e os parênteses de fecho removidos é mapeado para observer.application.
Status network.http.response_code O valor de Status é mapeado para network.http.response_code e convertido num número inteiro.
tags asset.attribute.labels Para cada elemento na matriz tags, o campo type é mapeado para key e o campo name é mapeado para value em asset.attribute.labels.
Thread security_result.detection_fields.value O valor de Thread está mapeado para o campo value em security_result.detection_fields. O key correspondente está definido como "Discussão".
timestamp event.timestamp, metadata.collected_timestamp, read_only_udm.metadata.event_timestamp O campo timestamp é convertido numa data/hora e mapeado para event.timestamp para registos JSON e metadata.collected_timestamp para eventos de entidades. Para mensagens syslog, é mapeado para read_only_udm.metadata.event_timestamp.
title vulnerabilities.description O valor de title está mapeado para vulnerabilities.description.
total_vulnerabilities asset.attribute.labels.value O valor de total_vulnerabilities é convertido numa string e mapeado para o campo value em asset.attribute.labels. O key correspondente está definido como "Total de vulnerabilidades".
URI security_result.detection_fields.value O valor de URI está mapeado para o campo value em security_result.detection_fields. O key correspondente está definido como "URI".
User-Agent network.http.user_agent, network.http.parsed_user_agent O valor de User-Agent está mapeado para network.http.user_agent. Também é mapeado para network.http.parsed_user_agent e convertido num objeto de agente do utilizador analisado. Codificado de forma rígida para "Rapid7 Insight". Codificado de forma rígida para "Rapid7 Insight". Codificado como "ASSET" para registos JSON. Inicialmente, definido como "GENERIC_EVENT" e, em seguida, potencialmente alterado para "PROCESS_UNCATEGORIZED", "STATUS_UPDATE" ou "USER_LOGIN" com base noutros campos. Definido como "AUTHTYPE_UNSPECIFIED" para eventos "USER_LOGIN". Definido como "PERMITIR" ou "BLOQUEAR" com base em product_event_type. Codificado de forma rígida como "RAPID7_INSIGHT" para mensagens syslog.
username principal.user.user_display_name O valor de username, com as aspas removidas e potencialmente analisado para o endereço de email, é mapeado para principal.user.user_display_name. O endereço de email extraído, se estiver presente, é mapeado para principal.user.email_addresses.

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