Raccogliere i log di Microsoft LAPS
Questo documento spiega come importare i log di Microsoft LAPS (Local Administrator Password Solution) in Google Security Operations utilizzando Bindplane. Il parser estrae innanzitutto i dati formattati in JSON dal campo message
e poi analizza ulteriormente il campo EventData
all'interno del JSON estratto. Dopodiché, mappa i campi estratti allo schema Unified Data Model (UDM), classifica il tipo di evento in base a EventId
e infine unisce tutti i dati elaborati nell'evento di output.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google SecOps
- se l'esecuzione avviene tramite un proxy, le porte del firewall sono aperte
- Accesso con privilegi a un Microsoft Windows Server con LAPS
Recuperare il file di autenticazione importazione di Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Agenti di raccolta.
- Scarica il file di autenticazione importazione. Salva il file in modo sicuro sul sistema in cui verrà installato Bindplane.
Recuperare l'ID cliente Google SecOps
- Accedi alla console Google SecOps.
- Vai a Impostazioni SIEM > Profilo.
- Copia e salva l'ID cliente dalla sezione Dettagli dell'organizzazione.
Installa l'agente Bindplane
Installazione di Windows
- Apri il prompt dei comandi o PowerShell come amministratore.
Esegui questo comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Risorse aggiuntive per l'installazione
Per ulteriori opzioni di installazione, consulta la guida all'installazione.
Configura l'agente Bindplane per importare Syslog e inviarli a Google SecOps
- Accedi al file di configurazione:
- Individua il file
config.yaml
. In genere si trova nella directory di installazione su Windows. - Apri il file utilizzando un editor di testo (ad esempio, Blocco note).
- Individua il file
Modifica il file
config.yaml
come segue:receivers: windowseventlog/laps_operational: channel: Microsoft-Windows-LAPS/Operational max_reads: 100 poll_interval: 5s raw: true start_at: end processors: batch: exporters: chronicle/laps: # Adjust the path to the credentials file you downloaded in Step 1 creds: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'WINDOWS_LAPS' override_log_type: false raw_log_field: body service: pipelines: logs/laps: receivers: - windowseventlog/laps_operational processors: [batch] exporters: [chronicle/laps]
Sostituisci
<customer_id>
con l'ID cliente effettivo.Aggiorna
/path/to/ingestion-authentication-file.json
al percorso in cui è stato salvato il file di autenticazione nella sezione Recupera il file di autenticazione per l'importazione di Google SecOps.
Riavvia l'agente Bindplane per applicare le modifiche
Per riavviare l'agente Bindplane in Windows, puoi utilizzare la console Servizi o inserire il seguente comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurare LAPS di Microsoft Windows
- Digita
eventvwr.msc
in un prompt dei comandi con privilegi elevati e premi INVIO per aprire il Visualizzatore eventi. - Vai a Registri applicazioni e servizi > Microsoft > Windows > LAPS.
- Espandi LAPS.
- Fai clic con il tasto destro del mouse su LAPS e poi su Proprietà.
- Seleziona la casella di controllo Abilita il logging.
- Fai clic su Ok quando ti viene chiesto se il log è attivato.
- Fai clic su OK.
Tabella di mappatura UDM
Campo log | Mappatura UDM | Logic |
---|---|---|
Canale | read_only_udm.additional.fields.key | Il valore viene estratto dal campo Channel nel log non elaborato e assegnato al campo key . |
Canale | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo Channel nel log non elaborato e assegnato al campo string_value . |
Computer | read_only_udm.principal.hostname | Il valore viene estratto dal campo Computer nel log non elaborato. |
Computer | read_only_udm.principal.asset.hostname | Il valore viene estratto dal campo Computer nel log non elaborato. |
EventData.%1 | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo EventData.%1 nel log non elaborato e assegnato al campo string_value . |
EventId | read_only_udm.metadata.product_event_type | Il valore viene estratto dal campo EventId nel log non elaborato. |
EventId | read_only_udm.security_result.rule_name | Il valore viene estratto dal campo EventId nel log non elaborato e aggiunto a EventID: . |
EventRecordID | read_only_udm.metadata.product_log_id | Il valore viene estratto dal campo EventRecordID nel log non elaborato. |
Parole chiave | read_only_udm.additional.fields.key | Il valore viene estratto dal campo Keywords nel log non elaborato e assegnato al campo key . |
Parole chiave | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo Keywords nel log non elaborato e assegnato al campo string_value . |
Livello | read_only_udm.security_result.severity | Il valore viene estratto dal campo Level nel log non elaborato e mappato a: INFORMATIONAL per INFO , Informational , Information , Normal , NOTICE ; ERROR per ERROR , Error ; CRITICAL per Critical . |
Opcode | read_only_udm.additional.fields.key | Il valore viene estratto dal campo Opcode nel log non elaborato e assegnato al campo key . |
Opcode | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo Opcode nel log non elaborato e assegnato al campo string_value . |
ProcessID | read_only_udm.principal.process.pid | Il valore viene estratto dal campo ProcessID nel log non elaborato. |
ProviderName | read_only_udm.metadata.product_name | Il valore viene estratto dal campo ProviderName nel log non elaborato. |
Attività | read_only_udm.additional.fields.key | Il valore viene estratto dal campo Task nel log non elaborato e assegnato al campo key . |
Attività | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo Task nel log non elaborato e assegnato al campo string_value . |
ThreadID | read_only_udm.additional.fields.key | Il valore viene estratto dal campo ThreadID nel log non elaborato e assegnato al campo key . |
ThreadID | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo ThreadID nel log non elaborato e assegnato al campo string_value . |
TimeCreated | read_only_udm.metadata.event_timestamp | Il valore viene estratto dal campo TimeCreated nel log non elaborato, analizzato come timestamp UNIX_MS. |
TimeCreated | events.timestamp | Il valore viene estratto dal campo TimeCreated nel log non elaborato, analizzato come timestamp UNIX_MS. |
Versione | read_only_udm.additional.fields.key | Il valore viene estratto dal campo Version nel log non elaborato e assegnato al campo key . |
Versione | read_only_udm.additional.fields.value.string_value | Il valore viene estratto dal campo Version nel log non elaborato e assegnato al campo string_value . |
read_only_udm.additional.fields.key | È stato assegnato il valore EventData_P1 . |
|
read_only_udm.metadata.event_type | Assegnato in modo condizionale STATUS_UNCATEGORIZED se EventId è 7 o 2 , altrimenti GENERIC_EVENT . |
|
read_only_udm.metadata.vendor_name | È stato assegnato il valore Microsoft . |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.