Raccogliere i log di scansione Qualys
Questo parser estrae i campi dai log JSON di Qualys Scan, normalizza i timestamp e li mappa a UDM. Gestisce vari tipi di eventi Qualys, inclusi eventi generici e accessi degli utenti, compilando i campi UDM con informazioni e metadati di sicurezza pertinenti.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google Security Operations.
- Accesso con privilegi alla console Qualys VMDR.
(Facoltativo) Crea un utente API dedicato in Qualys
- Accedi alla console Qualys.
- Vai a Utenti.
- Fai clic su Nuovo > Utente.
- Inserisci le informazioni generali richieste per l'utente.
- Seleziona la scheda Ruolo utente.
- Assicurati che la casella di controllo Accesso API sia selezionata per il ruolo.
- Fai clic su Salva.
Identificare l'URL API Qualys specifico
Opzione 1
Identifica i tuoi URL come indicato nell'identificazione della piattaforma.
Opzione 2
- Accedi alla console Qualys.
- Vai ad Aiuto > Informazioni.
- Scorri per visualizzare queste informazioni nella sezione Security Operations Center (SOC).
- Copia l'URL dell'API Qualys.
Configurare i feed
Esistono due diversi punti di accesso per configurare i feed nella piattaforma Google SecOps:
- Impostazioni SIEM > Feed
- Hub dei contenuti > Pacchetti di contenuti
Configura i feed da Impostazioni SIEM > Feed
Per configurare un feed:
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Aggiungi nuovo feed.
- Nella pagina successiva, fai clic su Configura un singolo feed.
- Nel campo Nome feed, inserisci un nome per il feed, ad esempio Qualys Scan Logs.
- Seleziona API di terze parti come Tipo di origine.
- Seleziona Qualys Scan come tipo di log.
- Fai clic su Avanti.
- Specifica i valori per i seguenti parametri di input:
- Nome utente: inserisci il nome utente per l'utente dedicato.
- Secret (Segreto): inserisci la password per l'utente dedicato.
- Percorso completo dell'API: fornisci l'URL del server API Qualys semplice (ad esempio,
qualysapi.qg2.apps.qualys.eu
). - Tipo di API: seleziona il tipo di scansione che vuoi importare.
- Fai clic su Avanti.
- Controlla la configurazione del feed nella schermata Finalizza e poi fai clic su Invia.
Configurare i feed dall'hub dei contenuti
Specifica i valori per i seguenti campi:
- Nome utente: inserisci il nome utente per l'utente dedicato.
- Secret (Segreto): inserisci la password per l'utente dedicato.
- Percorso completo dell'API: fornisci l'URL del server API Qualys semplice (ad esempio,
qualysapi.qg2.apps.qualys.eu
). - Tipo di API: seleziona il tipo di scansione che vuoi importare.
Opzioni avanzate
- Nome feed: un valore precompilato che identifica il feed.
- Tipo di origine: metodo utilizzato per raccogliere i log in Google SecOps.
- Spazio dei nomi dell'asset: lo spazio dei nomi associato al feed.
- Etichette di importazione: etichette applicate a tutti gli eventi di questo feed.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
Category |
security_result.category_details |
Mappato direttamente dal campo Category . |
ID |
metadata.product_log_id |
Mappato direttamente dal campo ID . Convertito in stringa. |
LaunchDatetime |
metadata.event_timestamp |
Utilizzato come timestamp dell'evento se ScanInput.ScanDatetime e UpdateDate non sono presenti. Analizzato nel formato "ISO8601". |
Ref |
additional.fields[1].key additional.fields[1].value.string_value |
Mappato a additional.fields con la chiave "ScanReference" se ScanReference non è presente. |
ScanDetails.Status |
security_result.detection_fields[0].key security_result.detection_fields[0].value |
Mappato a security_result.detection_fields con la chiave "ScanDetails Status". |
ScanInput.Network.ID |
additional.fields[0].key additional.fields[0].value.string_value |
Mappato a additional.fields con la chiave "ID rete ScanInput". |
ScanInput.Network.Name |
additional.fields[1].key additional.fields[1].value.string_value |
Mappato a additional.fields con la chiave "ScanInput Network Name". |
ScanInput.OptionProfile.ID |
additional.fields[2].key additional.fields[2].value.string_value |
Mappato a additional.fields con la chiave "ID profilo opzione di scansione input". |
ScanInput.OptionProfile.Name |
additional.fields[3].key additional.fields[3].value.string_value |
Mappato a additional.fields con la chiave "Nome profilo opzione input scansione". |
ScanInput.ScanDatetime |
metadata.event_timestamp |
Utilizzato come timestamp dell'evento, se presente. Analizzato nel formato "ISO8601". |
ScanInput.Title |
metadata.description |
Mappato direttamente dal campo ScanInput.Title . |
ScanInput.Username |
principal.user.userid |
Mappato direttamente dal campo ScanInput.Username . |
ScanReference |
additional.fields[4].key additional.fields[4].value.string_value |
Mappato a additional.fields con la chiave "ScanReference". |
Statement |
metadata.description |
Mappato direttamente dal campo Statement se ScanInput.Title e Title non sono presenti. |
Status |
security_result.detection_fields[0].key security_result.detection_fields[0].value |
Mappato a security_result.detection_fields con la chiave "Stato". |
SubCategory |
security_result.description |
Mappato direttamente dal campo SubCategory . |
Technologies[].ID |
security_result.detection_fields[0].value |
Mappato direttamente dal campo Technologies[].ID . Convertito in stringa. Parte di un oggetto security_result ripetuto. |
Technologies[].Name |
security_result.detection_fields[1].value |
Mappato direttamente dal campo Technologies[].Name . Parte di un oggetto security_result ripetuto. |
Technologies[].Rationale |
security_result.detection_fields[2].value |
Mappato direttamente dal campo Technologies[].Rationale . Parte di un oggetto security_result ripetuto. |
Title |
metadata.description |
Mappato direttamente dal campo Title se ScanInput.Title e Statement non sono presenti. |
Type |
additional.fields[2].key additional.fields[2].value.string_value |
Mappato a additional.fields con la chiave "Tipo". |
UpdateDate |
metadata.event_timestamp |
Utilizzato come timestamp dell'evento se ScanInput.ScanDatetime non è presente. Analizzato nel formato "ISO8601". |
Userlogin |
target.user.userid |
Mappato direttamente dal campo Userlogin . Imposta "AUTHTYPE_UNSPECIFIED" se è presente Userlogin . Imposta il valore su "GENERIC_EVENT". Valore modificato in "USER_LOGIN" se è presente Userlogin . Valore modificato in "USER_UNCATEGORIZED" se metadata_event_type è "GENERIC_EVENT" e ScanInput.Username è presente. Imposta il valore su "QUALYS_SCAN". Imposta il valore su "QUALYS_SCAN". Imposta "ID" per ogni tecnologia. Parte di un oggetto security_result ripetuto. Imposta "Nome" per ogni tecnologia. Parte di un oggetto security_result ripetuto. Imposta "Motivazione" per ogni tecnologia. Parte di un oggetto security_result ripetuto. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.