Raccogli i log di gestione delle vulnerabilità di Qualys

Supportata in:

Questo parser gestisce i log di gestione delle vulnerabilità di Qualys in formato coppia chiave-valore (KV) o JSON. Estrae i dettagli delle vulnerabilità, le informazioni sull'host e i metadati della scansione, mappandoli all'UDM. Il parser gestisce anche diverse strutture di log, dando la priorità all'analisi KV e ricorrendo a JSON se necessario, e suddivide l'array DetectionList in singoli eventi di vulnerabilità.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Istanza Google Security Operations.
  • Accesso privilegiato alla console Qualys VMDR.

(Facoltativo) Crea un utente API dedicato in Qualys

  1. Accedi alla console Qualys.
  2. Vai a Utenti.
  3. Fai clic su Nuovo > Utente.
  4. Inserisci le Informazioni generali richieste per l'utente.
  5. Seleziona la scheda Ruolo utente.
  6. Assicurati che per il ruolo sia selezionata la casella di controllo Accesso API.
  7. Fai clic su Salva.

Identifica l'URL specifico dell'API Qualys

Opzione 1

Identifica gli URL come indicato nell'identificazione della piattaforma.

Opzione 2

  1. Accedi alla console Qualys.
  2. Vai a Guida > Informazioni.
  3. Scorri per visualizzare queste informazioni in Security Operations Center (SOC).
  4. Copia l'URL dell'API Qualys.

Configura i feed

Per configurare un feed:

  1. Vai a Impostazioni > Gestione dei dati > Feed. Se utilizzi una piattaforma solo SIEM, vai a Impostazioni > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed, ad esempio Log Qualys VM.
  5. Seleziona API di terze parti come Tipo di origine.
  6. Seleziona Qualys VM come tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:
    • Nome utente: inserisci il nome utente.
    • Secret: inserisci la password.
    • Percorso completo dell'API: fornisci l'URL del server API Qualys (ad esempio, <qualys_base_url>/api/2.0/fo/asset/host/vm/detection/?action=list) dove <qualys_base_url> è l'URL di base del server API Qualys in cui si trova il tuo account.
  9. Fai clic su Avanti.
  10. Rivedi la configurazione del feed nella schermata Finalizza, quindi fai clic su Invia.

Tabella di mappatura UDM

Campo log Mappatura UDM Logica
DETECTION.FIRST_FOUND_DATETIME extensions.vulns.vulnerabilities.first_found Analizzato dal campo DETECTION.FIRST_FOUND_DATETIME, convertendo il valore della stringa in un timestamp.
DETECTION.LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found Analizzato dal campo DETECTION.LAST_FOUND_DATETIME, convertendo il valore della stringa in un timestamp.
DETECTION.QID extensions.vulns.vulnerabilities.name Concatena "QID: " con il valore di DETECTION.QID.
DETECTION.RESULTS extensions.vulns.vulnerabilities.description Viene mappato direttamente al campo della descrizione. Utilizzato anche per estrarre network.ip_protocol e principal.port utilizzando grok.
DETECTION.SEVERITY extensions.vulns.vulnerabilities.severity Mappato da DETECTION.SEVERITY. I valori 0, 1, 2 diventano "LOW"; 3, 4 diventano "MEDIUM"; 5, 6, 7 diventano "HIGH".
DETECTION.STATUS extensions.vulns.vulnerabilities.about.labels Aggiunto come etichetta con chiave "Stato di rilevamento".
DETECTION.TYPE extensions.vulns.vulnerabilities.about.labels Aggiunto come etichetta con la chiave "Tipo di rilevamento".
DNS principal.hostname Mappa direttamente a principal.hostname.
DNSData.DOMAIN principal.domain.name Mappa direttamente a principal.domain.name.
HOST.ASSET_ID principal.asset_id Concatena "QUALYS:" con il valore di HOST.ASSET_ID.
HOST.DNS principal.hostname Viene mappato direttamente a principal.hostname se DNS è vuoto.
HOST.DNS_DATA.DOMAIN principal.domain.name Viene mappato direttamente a principal.domain.name se DNSData.DOMAIN è vuoto.
HOST.ID metadata.product_log_id Mappa direttamente a metadata.product_log_id.
HOST.IP principal.ip Viene mappato direttamente a principal.ip se IP è vuoto.
HOST.LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time Analizzato dal campo HOST.LAST_SCAN_DATETIME, convertendo il valore della stringa in un timestamp.
HOST.LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time Analizzato dal campo HOST.LAST_VM_SCANNED_DATE, convertendo il valore della stringa in un timestamp.
HOST.NETBIOS additional.fields Aggiunto come etichetta con chiave "HOST NETBIOS".
HOST.OS principal.platform_version Viene mappato direttamente a principal.platform_version se OS è vuoto.
HOST.QG_HOSTID additional.fields Aggiunta come etichetta con chiave "HOST QG_HOSTID".
HOST.TRACKING_METHOD additional.fields Aggiunta come etichetta con chiave "HOST TRACKING_METHOD".
HOST_ID principal.asset_id Concatena "QUALYS:" con il valore di HOST_ID.
ID metadata.product_log_id Mappa direttamente a metadata.product_log_id.
IP principal.ip Mappa direttamente a principal.ip.
LastScanDateTime extensions.vulns.vulnerabilities.scan_start_time Analizzato dal campo LastScanDateTime, convertendo il valore della stringa in un timestamp.
LastVMAuthScanDuration additional.fields Aggiunta come etichetta con chiave "LastVMAuthScanDuration".
LastVMScanDate extensions.vulns.vulnerabilities.scan_end_time Analizzato dal campo LastVMScanDate, convertendo il valore della stringa in un timestamp.
LastVMScanDuration additional.fields Aggiunta come etichetta con chiave "LastVMScanDuration".
LAST_FOUND_DATETIME extensions.vulns.vulnerabilities.last_found Analizzato dal campo LAST_FOUND_DATETIME, convertendo il valore della stringa in un timestamp.
LAST_SCAN_DATETIME extensions.vulns.vulnerabilities.scan_start_time Analizzato dal campo LAST_SCAN_DATETIME, convertendo il valore della stringa in un timestamp.
LAST_VM_SCANNED_DATE extensions.vulns.vulnerabilities.scan_end_time Analizzato dal campo LAST_VM_SCANNED_DATE, convertendo il valore della stringa in un timestamp.
NETBIOS additional.fields Aggiunto come etichetta con chiave "NETBIOS".
NetworkID additional.fields Aggiunto come etichetta con la chiave "NetworkID".
NETWORK_ID additional.fields Aggiunto come etichetta con la chiave "NetworkID".
OS principal.platform_version Mappa direttamente a principal.platform_version.
Os principal.platform_version Viene mappato direttamente a principal.platform_version se OS è vuoto.
QID extensions.vulns.vulnerabilities.name Concatena "QID: " con il valore di QID.
QgHostID principal.asset_id Imposta principal.asset_id su "Host Id:%{QgHostID}".
SEVERITY extensions.vulns.vulnerabilities.severity Mappato da SEVERITY. I valori 0, 1, 2 diventano "LOW"; 3, 4 diventano "MEDIUM"; 5, 6, 7 diventano "HIGH".
TRACKING_METHOD additional.fields Aggiunta come etichetta con chiave "TRACKING_METHOD".
TrackingMethod additional.fields Aggiunta come etichetta con chiave "TRACKING_METHOD".
N/D metadata.vendor_name Impostato come hardcoded su "Qualys".
N/D metadata.product_name Impostato come hardcoded su "Gestione delle vulnerabilità".
N/D metadata.event_type Impostato su "SCAN_VULN_HOST" se _vulns non è vuoto, su "STATUS_UPDATE" se prin_host o IP non sono vuoti e su "GENERIC_EVENT" in caso contrario.
N/D metadata.log_type Tratto dal campo log_type del log non elaborato.
N/D principal.platform Determinato da OS, Os o HOST.OS. Se uno di questi contiene "Linux", la piattaforma è impostata su "LINUX". Se uno di questi contiene "Windows", la piattaforma è impostata su "WINDOWS". Se uno di questi contiene "mac" o "IOS", la piattaforma è impostata su "MAC".
detection.DType extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunto come etichetta con chiave "Detection Type" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.FirstFoundTime extensions.vulns.vulnerabilities.first_found Analizzato dal campo detection.FirstFoundTime, convertendo il valore stringa in un timestamp all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.LastFoundTime extensions.vulns.vulnerabilities.last_found Analizzato dal campo detection.LastFoundTime, convertendo il valore stringa in un timestamp all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.LastProcessedDatetime extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunto come etichetta con chiave "LastProcessedDatetime" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.LastTestDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunto come etichetta con chiave "LastTestDateTime" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.LastUpdateDateTime extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunta come etichetta con chiave "LastUpdateDateTime" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.Qid extensions.vulns.vulnerabilities.name Concatena "QID: " con il valore di detection.Qid all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.Results extensions.vulns.vulnerabilities.description Viene mappato direttamente al campo della descrizione all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList. Le tabulazioni e le nuove righe vengono sostituite con spazi.
detection.Severity extensions.vulns.vulnerabilities.severity Mappato da detection.Severity. I valori 0, 1, 2 diventano "LOW"; 3, 4 diventano "MEDIUM"; 5, 6, 7 diventano "HIGH" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.Status extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunto come etichetta con chiave "Detection status" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
detection.TimesFound extensions.vulns.vulnerabilities.about.resource.attribute.labels Aggiunto come etichetta con la chiave "TimesFound" all'interno dell'array delle vulnerabilità per gli eventi analizzati dal campo DetectionList.
timestamp metadata.event_timestamp, timestamp Il campo timestamp del log non elaborato viene utilizzato sia per il timestamp dell'evento sia per il timestamp di primo livello.

Log delle modifiche

Visualizza il log delle modifiche per questo parser

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.