Mappare e modellare le entità
Le entità sono oggetti che rappresentano punti di interesse estratti dagli avvisi, come indicatori di compromissione e artefatti. Aiutano gli analisti della sicurezza:
- Monitoraggio automatico della cronologia.
- Raggruppamento degli avvisi senza intervento umano.
- Ricerca di attività dannose in base alle relazioni tra le entità.
- Semplificando la lettura dei casi e consentendo la creazione di playbook senza interruzioni.
Google Security Operations utilizza un sistema automatizzato (ontologia) per estrarre gli oggetti principali di interesse dagli avvisi non elaborati per creare entità. Ogni entità è rappresentata da un oggetto che può tenere traccia della propria cronologia per riferimento futuro.
Configurare l'ontologia delle entità
Per configurare l'ontologia, devi mappare e modellare i dati. Ciò comporta la selezione di una rappresentazione visiva per gli avvisi e la definizione delle entità da estrarre. Google SecOps fornisce regole di ontologia preconfigurate per i prodotti SIEM più diffusi.
Il momento migliore per personalizzare l'ontologia è dopo aver configurato un connettore che estrae i dati in Google SecOps. La procedura prevede due passaggi principali:
- Modellazione: scegli la rappresentazione visiva (modello/famiglia di visualizzazioni) per i tuoi dati.
- Mappatura: mappa i campi per supportare il modello selezionato ed estrarre le entità.
Entità supportate
Sono supportate le seguenti entità:
| Tipo di entità | Descrizione | Formato previsto | Esempi |
|---|---|---|---|
| Indirizzo | Un indirizzo IPv4. | Dipende dal tipo specifico di indirizzo memorizzato. | Indirizzi IP, ad esempio 192.168.1.1 |
| Applicazione | Un'applicazione software. | Stringa di testo. | nmap, Microsoft Word. |
| Cluster | Un gruppo di risorse di computing. | Stringa di testo. | Nome del cluster Kubernetes, nome del cluster o ID cluster. |
| Container | Un'istanza di container. | Stringa di testo. | ID o nome del container Docker. |
| Carta di credito | Un numero carta. | Stringa mascherata o tokenizzata. | I dati devono essere mascherati o tokenizzati per evitare di archiviare dati PCI sensibili. |
| CVE | Identificatore di vulnerabilità ed esposizioni comuni. | CVE-YYYY-NNNNN |
CVE-2023-12345 |
| Database | Un'istanza o un sistema di database. | Stringa di testo. | Nome del database o identificatore della connessione. |
| Deployment | Un deployment software. | Stringa di testo. | Identificatore del deployment. |
| URL di destinazione | Un Uniform Resource Locator. | Stringa URL standard. | https://example.com/path |
| Dominio | Un nome di dominio di rete. | Stringa di dominio standard. | example.com |
| Oggetto email | La riga dell'oggetto di un messaggio email. | Stringa di testo. | Oggetto di un'email. |
| Hash file | Un hash crittografico di un file. | Stringa esadecimale. | Hash MD5, SHA-1 o SHA256. |
| Nome del file | Il nome di un file. | Stringa di testo. | malware.exe |
| Entità generica | Un tipo di entità flessibile per i dati che non rientrano in altre categorie. | Dipende dai dati archiviati. | N/D |
| Nome host | Un'etichetta assegnata a un dispositivo su una rete. | Stringa del nome host standard. | workstation-01, server.example.com |
| Set di IP | Una raccolta o un gruppo di indirizzi IP. | Non definito in modo esplicito (ad esempio, stringa separata da virgole, array JSON, riferimento a un elenco). | Intervalli, notazioni CIDR o elenchi. Ad esempio, vedi Creare un elenco di indirizzi IP attendibili. |
| Indirizzo MAC | Un indirizzo Media Access Control. | Sei gruppi di due cifre esadecimali, separati da trattini o due punti. | 00-1B-44-11-3A-B7, 00:1B:44:11:3A:B7 |
| Numero di telefono | Un numero di telefono. | Varia (E.164 è lo standard). | +18005550100 |
| POD | Un gruppo di uno o più container in Kubernetes, spesso con spazio di archiviazione/rete condivisi. | Stringa del nome. | Nome del pod Kubernetes. |
| Processo | Un'istanza di un programma informatico in esecuzione. | ID processo (PID) o nome. | 1234, chrome.exe |
| Servizio | Un servizio software in esecuzione su un sistema. | Stringa del nome del servizio. | sshd, apache2 |
| Aggressore | Un individuo o un gruppo che rappresenta una minaccia. | Stringa di nome o codice. | APT28, FIN7 |
| Campagna per le minacce | Una serie di attività di minaccia correlate. | Nome o stringa di codice della campagna. | Nome o codice della campagna. |
| Firma della minaccia | Un pattern o un indicatore di una minaccia nota. | ID regola o nome della firma. | ID regola breve, nome regola YARA-L. |
| USB | Un dispositivo Universal Serial Bus. | Nome, numero di serie o altri attributi del dispositivo. | Identificatore del dispositivo USB. |
| Nome utente | Un identificatore per un account utente. | Nomi utente o indirizzi email semplici. | jdoe, jdoe@example.com |
Caso d'uso: mappare e modellare i nuovi dati delle email acquisite
Questo caso d'uso mostra come mappare e modellare i nuovi dati di un'email importata:
- Vai a Hub dei contenuti > Casi d'uso.
- Esegui lo scenario di test Zero to Hero. Per informazioni dettagliate su come farlo, vedi Eseguire casi d'uso.
- Nella scheda Richieste, seleziona la richiesta Mail dalla coda di richieste e seleziona la scheda Eventi.
- Accanto all'avviso, fai clic su Impostazioni Configurazione evento per aprire la pagina Configurazione evento.
-
Nell'elenco della gerarchia, fai clic su Posta. In questo modo, la configurazione funzionerà automaticamente per ogni dato proveniente da questo prodotto (casella di posta).
-
Assegna la famiglia di visualizzazioni che rappresenta meglio i dati. In questo caso d'uso, poiché
MailRelayOrTAPè stato selezionato in precedenza, puoi saltare questo passaggio. - Passa a Mappatura e mappa i seguenti campi dell'entità. Fai doppio clic su ogni entità e seleziona il campo dei dati non elaborati per quell'entità nel campo estratto. Puoi fornire campi alternativi da cui estrarre le informazioni:
SourceUserNameDestinationUserNameDestinationURLEmailSubject- Fai clic su Proprietà evento non elaborate per visualizzare i campi email originali.
Estrai espressioni regolari
Google SecOps non supporta i gruppi di espressioni regolari. Per estrarre
il testo dal campo evento utilizzando pattern di espressioni regolari, utilizza lookahead
e lookbehind nella logica della funzione di estrazione.
Nell'esempio seguente, il campo evento mostra una grande porzione di testo:
Suspicious activity on A16_WWJ - Potential Account Takeover (33120)
Per estrarre solo il testo Suspicious activity on A16_WWJ, segui
questi passaggi:
- Inserisci la seguente espressione regolare nel campo valore Funzione di estrazione:
Suspicious activity on A16_WWJ(?=.*) - Nel campo Funzione di trasformazione, seleziona To_String.
Per estrarre solo il testo dopo Suspicious activity on A16_WWJ,
procedi nel seguente modo:
- Inserisci la seguente espressione regolare nel campo valore Funzione di estrazione:
(?<=Suspicious activity on A16_WWJ).* - Nel campo Funzione di trasformazione, seleziona To_String.
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.