Recolha registos do Qualys Vulnerability Management

Compatível com:

Este analisador processa os registos de gestão de vulnerabilidades da Qualys no formato de valor-chave (KV) ou JSON. Extrai detalhes de vulnerabilidades, informações do anfitrião e metadados de análise, mapeando-os para o UDM. O analisador também processa diferentes estruturas de registos, dando prioridade à análise KV e recorrendo ao JSON, se necessário, e divide a matriz DetectionList em eventos de vulnerabilidade individuais.

Antes de começar

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

  • Instância do Google Security Operations.
  • Acesso privilegiado à consola do Qualys VMDR.

Opcional: crie um utilizador da API dedicado no Qualys

  1. Inicie sessão na consola do Qualys.
  2. Aceda a Utilizadores.
  3. Clique em Novo > Utilizador.
  4. Introduza as informações gerais necessárias para o utilizador.
  5. Selecione o separador Função do utilizador.
  6. Certifique-se de que a caixa de verificação Acesso à API está selecionada para a função.
  7. Clique em Guardar.

Identifique o URL da API Qualys específico

Opção 1

Identifique os seus URLs conforme mencionado na identificação da plataforma.

Opção 2

  1. Inicie sessão na consola do Qualys.
  2. Aceda a Ajuda > Acerca de.
  3. Desloque a página para ver estas informações em Centro de operações de segurança (SOC).
  4. Copie o URL da API Qualys.

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 de VM do Qualys.
  5. Selecione API de terceiros como o Tipo de origem.
  6. Selecione Qualys VM como o tipo de registo.
  7. Clicar em Seguinte.
  8. Especifique valores para os seguintes parâmetros de entrada:
    • Nome de utilizador: introduza o nome de utilizador.
    • Secreto: introduza a palavra-passe.
    • Caminho completo da API: indique o URL do servidor da API Qualys (por exemplo, https://<qualys_base_url>/api/2.0/fo/asset/host/?action=list), em que <qualys_base_url> é o URL base do servidor da API Qualys onde a sua conta está localizada.
  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
DETECTION.FIRST_FOUND_DATETIME extensions.vulns.vulnerabilities.first_found Analisado a partir do campo DETECTION.FIRST_FOUND_DATETIME, convertendo o valor da string numa data/hora.
DETECTION.LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found Analisado a partir do campo DETECTION.LAST_FOUND_DATETIME, convertendo o valor da string numa data/hora.
DETECTION.QID extensions.vulns.vulnerabilities.name Concatena "QID: " com o valor de DETECTION.QID.
DETECTION.RESULTS extensions.vulns.vulnerabilities.description Mapeia diretamente para o campo de descrição. Também é usado para extrair network.ip_protocol e principal.port através do grok.
DETECTION.SEVERITY extensions.vulns.vulnerabilities.severity Mapeado a partir de DETECTION.SEVERITY. Os valores 0, 1 e 2 tornam-se "LOW"; 3 e 4 tornam-se "MEDIUM"; 5, 6 e 7 tornam-se "HIGH".
DETECTION.STATUS extensions.vulns.vulnerabilities.about.labels Adicionada como uma etiqueta com a chave "Estado da deteção".
DETECTION.TYPE extensions.vulns.vulnerabilities.about.labels Adicionada como uma etiqueta com a chave "Tipo de deteção".
DNS principal.hostname Mapeia diretamente para principal.hostname.
DNSData.DOMAIN principal.domain.name Mapeia diretamente para principal.domain.name.
HOST.ASSET_ID principal.asset_id Concatena "QUALYS:" com o valor de HOST.ASSET_ID.
HOST.DNS principal.hostname Mapeia diretamente para principal.hostname se DNS estiver vazio.
HOST.DNS_DATA.DOMAIN principal.domain.name Mapeia diretamente para principal.domain.name se DNSData.DOMAIN estiver vazio.
HOST.ID metadata.product_log_id Mapeia diretamente para metadata.product_log_id.
HOST.IP principal.ip Mapeia diretamente para principal.ip se IP estiver vazio.
HOST.LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time Analisado a partir do campo HOST.LAST_SCAN_DATETIME, convertendo o valor da string numa data/hora.
HOST.LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time Analisado a partir do campo HOST.LAST_VM_SCANNED_DATE, convertendo o valor da string numa data/hora.
HOST.NETBIOS additional.fields Adicionado como uma etiqueta com a chave "HOST NETBIOS".
HOST.OS principal.platform_version Mapeia diretamente para principal.platform_version se OS estiver vazio.
HOST.QG_HOSTID additional.fields Adicionada como uma etiqueta com a chave "HOST QG_HOSTID".
HOST.TRACKING_METHOD additional.fields Adicionado como uma etiqueta com a chave "HOST TRACKING_METHOD".
HOST_ID principal.asset_id Concatena "QUALYS:" com o valor de HOST_ID.
ID metadata.product_log_id Mapeia diretamente para metadata.product_log_id.
IP principal.ip Mapeia diretamente para principal.ip.
LastScanDateTime extensions.vulns.vulnerabilities.scan_start_time Analisado a partir do campo LastScanDateTime, convertendo o valor da string numa data/hora.
LastVMAuthScanDuration additional.fields Adicionado como uma etiqueta com a chave "LastVMAuthScanDuration".
LastVMScanDate extensions.vulns.vulnerabilities.scan_end_time Analisado a partir do campo LastVMScanDate, convertendo o valor da string numa data/hora.
LastVMScanDuration additional.fields Adicionado como uma etiqueta com a chave "LastVMScanDuration".
LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found Analisado a partir do campo LAST_FOUND_DATETIME, convertendo o valor da string numa data/hora.
LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time Analisado a partir do campo LAST_SCAN_DATETIME, convertendo o valor da string numa data/hora.
LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time Analisado a partir do campo LAST_VM_SCANNED_DATE, convertendo o valor da string numa data/hora.
NETBIOS additional.fields Adicionado como uma etiqueta com a chave "NETBIOS".
NetworkID additional.fields Adicionado como uma etiqueta com a chave "NetworkID".
NETWORK_ID additional.fields Adicionado como uma etiqueta com a chave "NetworkID".
OS principal.platform_version Mapeia diretamente para principal.platform_version.
Os principal.platform_version Mapeia diretamente para principal.platform_version se OS estiver vazio.
QID extensions.vulns.vulnerabilities.name Concatena "QID: " com o valor de QID.
QgHostID principal.asset_id Define principal.asset_id como "Host Id:%{QgHostID}".
SEVERITY extensions.vulns.vulnerabilities.severity Mapeado a partir de SEVERITY. Os valores 0, 1 e 2 tornam-se "LOW"; 3 e 4 tornam-se "MEDIUM"; 5, 6 e 7 tornam-se "HIGH".
TRACKING_METHOD additional.fields Adicionado como uma etiqueta com a chave "TRACKING_METHOD".
TrackingMethod additional.fields Adicionado como uma etiqueta com a chave "TRACKING_METHOD".
N/A metadata.vendor_name Codificado de forma rígida para "Qualys".
N/A metadata.product_name Codificado como "Gestão de vulnerabilidades".
N/A metadata.event_type Definido como "SCAN_VULN_HOST" se _vulns não estiver vazio, "STATUS_UPDATE" se prin_host ou IP não estiverem vazios e "GENERIC_EVENT" caso contrário.
N/A metadata.log_type Extraído do campo log_type do registo não processado.
N/A principal.platform Determinado a partir de OS, Os ou HOST.OS. Se alguma destas opções contiver "Linux", a plataforma é definida como "LINUX". Se algum contiver "Windows", a plataforma é definida como "WINDOWS". Se algum contiver "mac" ou "IOS", a plataforma é definida como "MAC".
detection.DType extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "Detection Type" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.FirstFoundTime extensions.vulns.vulnerabilities.first_found Analisado a partir do campo detection.FirstFoundTime, convertendo o valor da string numa data/hora na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.LastFoundTime extensions.vulns.vulnerabilities.last_found Analisado a partir do campo detection.LastFoundTime, convertendo o valor da string numa data/hora na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.LastProcessedDatetime extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "LastProcessedDatetime" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.LastTestDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "LastTestDateTime" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.LastUpdateDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "LastUpdateDateTime" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.Qid extensions.vulns.vulnerabilities.name Concatena "QID: " com o valor de detection.Qid na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.Results extensions.vulns.vulnerabilities.description Mapeia diretamente para o campo de descrição na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList. As tabulações e as novas linhas são substituídas por espaços.
detection.Severity extensions.vulns.vulnerabilities.severity Mapeado a partir de detection.Severity. Os valores 0, 1 e 2 tornam-se "LOW"; 3 e 4 tornam-se "MEDIUM"; 5, 6 e 7 tornam-se "HIGH" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.Status extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "Detection status" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
detection.TimesFound extensions.vulns.vulnerabilities.about.resource.attribute.labels Adicionado como uma etiqueta com a chave "TimesFound" na matriz de vulnerabilidades para eventos analisados a partir do campo DetectionList.
timestamp metadata.event_timestamp, timestamp O campo timestamp do registo não processado é usado para a data/hora do evento e a data/hora de nível superior.

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