Raccogliere i log di AWS Aurora
Questo documento spiega come importare i log di AWS Aurora in Google Security Operations. AWS Aurora è un servizio di database relazionale gestito che offre prestazioni elevate, scalabilità e disponibilità. In questa integrazione, configurerai AWS Aurora per inoltrare i log a Google SecOps per l'analisi, il monitoraggio e il rilevamento delle minacce.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google SecOps
- Accesso privilegiato ad AWS
- Cluster di database AWS Aurora configurato e in esecuzione
Configura il bucket Amazon S3
- Crea un bucket Amazon S3 seguendo questa guida utente: Creazione di un bucket
- Salva il Nome e la Regione del bucket per utilizzarli in un secondo momento.
- Crea un utente seguendo questa guida: Creazione di un utente IAM.
- Seleziona l'utente creato.
- Seleziona la scheda Credenziali di sicurezza.
- Fai clic su Crea chiave di accesso nella sezione Chiavi di accesso.
- Seleziona Servizio di terze parti come Caso d'uso.
- Fai clic su Avanti.
- (Facoltativo) Aggiungi un tag di descrizione.
- Fai clic su Crea chiave di accesso.
- Fai clic su Scarica file CSV per salvare la chiave di accesso e la chiave di accesso segreta per un utilizzo successivo.
- Fai clic su Fine.
- Seleziona la scheda Autorizzazioni.
- Fai clic su Aggiungi autorizzazioni nella sezione Norme relative alle autorizzazioni.
- Seleziona Aggiungi autorizzazioni.
- Seleziona Allega direttamente le norme.
- Cerca e seleziona i criteri AmazonS3FullAccess e CloudWatchLogsFullAccess.
- Fai clic su Avanti.
- Fai clic su Aggiungi autorizzazioni.
Configura il monitoraggio avanzato
- Accedi alla console di gestione AWS.
- Nella barra di ricerca, digita RDS e seleziona RDS dall'elenco dei servizi.
- Nella dashboard RDS, seleziona Database dal riquadro di navigazione.
- Seleziona il cluster Aurora che vuoi monitorare.
- Nella sezione Log e monitoraggio, fai clic su Modifica.
- Vai alla sezione Monitoraggio e attiva Monitoraggio avanzato.
- Imposta il ruolo Monitoring sul ruolo IAM appropriato con le autorizzazioni per la pubblicazione su CloudWatch Logs o S3.
- Salva le modifiche e applicale al cluster Aurora.
Come configurare gli audit log di AWS Aurora
- Nella dashboard RDS, seleziona Database e fai clic sul tuo cluster Aurora.
- Nella sezione Log e monitoraggio, fai clic su Modifica.
- Nella sezione Opzioni database, assicurati che sia selezionata l'opzione Abilita log di controllo.
- In Destinazione, scegli S3 e specifica il bucket S3 in cui verranno archiviati i log.
- Fai clic su Salva modifiche per applicare le impostazioni.
(Facoltativo) Configurazione dei log di AWS Aurora utilizzando CloudWatch
Per ulteriori funzionalità di monitoraggio, puoi configurare CloudWatch Logs per acquisire i log di Aurora.
- Nella dashboard RDS, seleziona il tuo cluster Aurora.
- Nella sezione Log e monitoraggio, assicurati che l'integrazione di CloudWatch Logs sia abilitata.
- Vai a CloudWatch Logs e crea un nuovo gruppo di log per archiviare i log di Aurora.
- Nella schermata Gruppi di log, scegli il nome del nuovo Gruppo di log.
- Seleziona Azioni > Esporta dati in Amazon S3.
Nella schermata Esporta dati in Amazon S3, nella sezione Definisci esportazione dati, imposta l'intervallo di tempo per i dati da esportare utilizzando Da e A.
Scegli bucket S3, seleziona l'account associato al bucket Amazon S3.
Nome bucket S3, seleziona un bucket Amazon S3.
In Prefisso bucket S3, inserisci la stringa generata in modo casuale che hai specificato nella policy del bucket.
Scegli Esporta per esportare i dati dei log in Amazon S3.
Per visualizzare lo stato dei dati di log che hai esportato in Amazon S3, seleziona Azioni > Visualizza tutte le esportazioni in Amazon S3.
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
Configurare i feed da Impostazioni SIEM > Feed
Per configurare più feed per diversi tipi di log all'interno di questa famiglia di prodotti, consulta Configurare i feed per prodotto.
Per configurare un singolo 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 AWS Aurora Logs).
- Seleziona Amazon S3 come Tipo di origine.
- Seleziona AWS Aurora come Tipo di log.
- Fai clic su Avanti.
Specifica i valori per i seguenti parametri di input:
- Region (Regione): la regione in cui si trova il bucket Amazon S3.
- URI S3: l'URI del bucket.
s3://your-log-bucket-name/
- Sostituisci
your-log-bucket-name
con il nome effettivo del tuo bucket S3.
- Sostituisci
- L'URI è un: seleziona Directory o Directory che include sottodirectory, a seconda della struttura del bucket.
Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze di importazione.
- Sostituisci
your-log-bucket-name
con il nome effettivo del tuo bucket S3.
- Sostituisci
ID chiave di accesso: la chiave di accesso dell'utente con autorizzazioni di lettura dal bucket S3.
Chiave di accesso segreta: la chiave segreta dell'utente con le autorizzazioni per leggere dal bucket S3.
Fai clic su Avanti.
Controlla la nuova 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:
- Region (Regione): la regione in cui si trova il bucket Amazon S3.
- URI S3: l'URI del bucket.
s3://your-log-bucket-name/
- Sostituisci
your-log-bucket-name
con il nome effettivo del tuo bucket S3.
- Sostituisci
- L'URI è un: seleziona Directory o Directory che include sottodirectory, a seconda della struttura del bucket.
- Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze di importazione.
- ID chiave di accesso: la chiave di accesso dell'utente con autorizzazioni di lettura dal bucket S3.
- Chiave di accesso segreta: la chiave segreta dell'utente con le autorizzazioni per leggere dal bucket S3.
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: 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 |
---|---|---|
account |
principal.group.product_object_id |
Mappato direttamente dal campo account nel log non elaborato. |
column1 |
timestamp_epoch |
Mappato direttamente dal campo column1 nel log non elaborato. Utilizzato per derivare metadata.event_timestamp . |
column10 |
Variabile | Può essere principal.process.command_line , object o number a seconda del formato del log. |
column11 |
ddl , response o command_line2 |
Può essere principal.resource.resource_subtype (ddl), security_result.outcomes.value (response) o parte di principal.process.command_line (command_line2) a seconda del formato del log. |
column12 |
operation , response o command_line3 |
Può essere sr.summary (operazione), security_result.outcomes.value (risposta) o parte di principal.process.command_line (command_line3) a seconda del formato del log. |
column13 |
database o response |
Può essere target.resource.name (database) o security_result.outcomes.value (risposta) a seconda del formato del log. |
column14 |
object |
Mappato direttamente su principal.resource.product_object_id o target_data.resource.name a seconda del formato del log. |
column15 |
command_line |
Mappato direttamente a principal.process.command_line . |
column16 |
response |
Mappato direttamente a security_result.outcomes.value . |
column2 |
timestamp o timestamp_ms |
Mappato direttamente dal campo column2 nel log non elaborato. |
column3 |
ip o hostname |
Può essere principal.ip o principal.resource.name a seconda del formato del log. |
column4 |
port o userid |
Può essere principal.port o principal.user.userid a seconda del formato del log. |
column5 |
userid o ip |
Può essere principal.user.userid o principal.ip a seconda del formato del log. |
column6 |
hostname o connection_id |
Può essere principal.resource.name o network.session_id a seconda del formato del log. |
column7 |
connection_id o query_id |
Può essere network.session_id o principal.process.pid a seconda del formato del log. |
column8 |
operation |
Mappato direttamente su sr.summary o metadata.product_event_type . |
column9 |
query_id o database |
Può essere principal.process.pid o target_data.resource.name a seconda del formato del log. |
command_line |
principal.process.command_line |
Mappato direttamente dal campo command_line estratto. |
connection_id |
network.session_id |
Mappato direttamente dal campo connection_id estratto. |
database |
target.resource.name |
Mappato direttamente dal campo database estratto. Derivato da diversi campi come operation , command_line , has_principal_user e has_principal_machine tramite la logica condizionale nell'analizzatore sintattico. Può essere RESOURCE_DELETION , RESOURCE_CREATION , RESOURCE_READ , RESOURCE_WRITTEN , USER_RESOURCE_ACCESS , USER_UNCATEGORIZED o GENERIC_EVENT . Codificato in modo permanente su "AWS_AURORA". Mappato da column8 o derivato dalla logica dell'analizzatore. Codificato in modo permanente su "AURORA". Codificato in modo permanente su "AMAZON". |
has_principal_machine |
has_principal_machine |
Impostato su "true" se principal.ip è presente, altrimenti inizializzato su "false". |
has_principal_user |
has_principal_user |
Impostato su "true" se principal.user.userid è presente, altrimenti inizializzato su "false". |
hostname |
principal.resource.name |
Mappato direttamente dal campo hostname estratto. |
ip |
principal.ip |
Mappato direttamente dal campo ip estratto. |
logevent.id |
security_result.detection_fields.value |
Nidificato all'interno di target.logEvents.logEvents , mappato con la chiave "id". |
logevent.message |
security_result.detection_fields.value |
Nidificato all'interno di target.logEvents.logEvents , mappato con la chiave "message". Utilizzato per estrarre principal.ip , time_unix , operation e user . |
logevent.timestamp |
security_result.detection_fields.value |
Nidificato in target.logEvents.logEvents , mappato con la chiave "timestamp". |
object |
target_data.resource.name o principal.resource.product_object_id |
Mappato direttamente dal campo object estratto. |
operation |
sr.summary |
Mappato direttamente dal campo operation estratto. |
port |
principal.port |
Mappato direttamente dal campo port estratto. |
query_id |
principal.process.pid |
Mappato direttamente dal campo query_id estratto. |
response |
security_result.outcomes.value |
Mappato direttamente dal campo response estratto. |
service |
principal.application |
Mappato direttamente dal campo service nel log non elaborato. |
src_ip |
principal.ip |
Estratto da logevent.message all'interno della struttura target.logEvents.logEvents nidificata. |
target.logEvents.logGroup |
target.resource.attribute.labels.value |
Mappato con la chiave "logGroup". |
target.logEvents.logStream |
target.resource.attribute.labels.value |
Mappato con la chiave "logStream". |
target.logEvents.messageType |
target.resource.attribute.labels.value |
Mappato con la chiave "messageType". |
target.logEvents.owner |
target.resource.attribute.labels.value |
Mappato con la chiave "owner". |
timestamp_epoch |
metadata.event_timestamp |
Convertito in metadata.event_timestamp utilizzando il filtro date . |
user |
principal.user.userid |
Estratto da logevent.message all'interno della struttura target.logEvents.logEvents nidificata. |
userid |
principal.user.userid |
Mappato direttamente dal campo userid estratto. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.