Raccogli i log IOC di ThreatConnect utilizzando l'API v3
Il feed ThreatConnect in Google Security Operations consente di recuperare automaticamente indicatori di compromissione (IOC) come indirizzi IP, domini, URL e hash di file, insieme al loro contesto (ad esempio, tipo di minaccia, punteggio di confidenza, tag) dal tuo account ThreatConnect. L'importazione di questi indicatori di compromissione arricchisce i tuoi dati di sicurezza in Google Security Operations, migliorando le funzionalità di rilevamento e analisi delle minacce.
Questo documento descrive come configurare Google SecOps per l'importazione di indicatori di compromissione (IOC) dall'istanza ThreatConnect utilizzando il connettore API ThreatConnect v3. Questa versione del connettore utilizza l'API REST v3 di ThreatConnect ed è una versione aggiornata del connettore esistente che utilizza l'API REST v2 di ThreatConnect.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Un'istanza e un account utente ThreatConnect attivi con autorizzazioni sufficienti per accedere agli indicatori richiesti utilizzando l'API v3. In genere, ciò comporta le autorizzazioni per leggere gli indicatori e i relativi attributi
- Un'istanza Google Security Operations
- Autorizzazioni Identity and Access Management sufficienti nel progetto Google Cloud per gestire i feed Google SecOps
Passaggi di configurazione
Per configurare il feed IOC ThreatConnect:
Ottenere le credenziali API ThreatConnect v3
- Accedi all'istanza di ThreatConnect.
- Vai alla sezione Gestione utenti API per creare un nuovo utente API o utilizzarne uno esistente designato per l'integrazione di Google SecOps.
Per creare un nuovo utente API:
- Vai a Impostazioni > Impostazioni dell'organizzazione.
- Vai alla scheda Abbonamento nella pagina Impostazioni dell'organizzazione.
- Fai clic su Create API User (Crea utente API).
Compila i campi nella finestra Amministrazione utenti API:
- Nome: inserisci il nome dell'utente API.
- Cognome: inserisci il cognome dell'utente API.
Ruolo di sistema: seleziona il ruolo di sistema Utente API o Amministratore Exchange.
Ruolo dell'organizzazione: seleziona il ruolo dell'organizzazione dell'utente API.
Includi in Osservazioni e falsi positivi: seleziona la casella di controllo per consentire l'inclusione dei dati forniti dall'utente dell'API nei conteggi.
Disattivato: fai clic sulla casella di controllo per disattivare l'account di un utente API nel caso in cui l'amministratore voglia mantenere l'integrità dei log.
Copia e memorizza in modo sicuro l'ID accesso e la chiave segreta.
Fai clic su Salva.
Recupera l'ID accesso e la chiave segreta per l'utente API pertinente e procedi al passaggio successivo.
Configura il feed ThreatConnect in Google Security Operations
- 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,
ThreatConnect Logs). - Per Tipo di origine, seleziona API di terze parti.
- Per Tipo di log, seleziona ThreatConnect IOC V3.
- Fai clic su Avanti.
- Inserisci i seguenti dettagli per l'API ThreatConnect v3:
- Access ID (ID accesso): inserisci l'ID accesso ThreatConnect ottenuto nel passaggio 1.
- Secret Key (Chiave segreta): inserisci la chiave segreta di ThreatConnect ottenuta nel passaggio 1.
- Nome host API: il nome di dominio completo (FQDN) dell'istanza ThreatConnect (ad esempio:
<myinstance>.threatconnect.com). - Proprietari: specifica l'organizzazione, la community o l'origine ThreatConnect da cui estrarre gli indicatori. Inserisci un proprietario per riga. Per ulteriori informazioni, consulta la panoramica dei proprietari.
- TQL: la query TQL richiesta per recuperare gli indicatori di compromissione in base ai requisiti di importazione (vedi Come scrivere query TQL).
- Campi: nomi dei campi aggiuntivi da recuperare, che non vengono recuperati per impostazione predefinita. Inserisci un campo per riga (vedi Elenco dei campi predefiniti e aggiuntivi).
- Fai clic su Avanti.
- Rivedi la configurazione del feed nella schermata Finalizza e poi fai clic su Invia.
Convalida l'importazione
- Dopo aver inviato la configurazione, attendi un po' di tempo per il recupero iniziale dei dati.
- Controlla lo stato del feed nell'elenco Feed. Lo stato dovrebbe alla fine essere Completato o Attivo.
- Verifica che i dati vengano inseriti eseguendo una query sui log nella
pagina di ricerca di Google Security Operations:
- Utilizza la query:
log_type = "THREATCONNECT_IOC_V3"
- Utilizza la query:
- Esamina i log inseriti per assicurarti che i campi vengano analizzati come previsto.
Come scrivere query TQL
In ThreatConnect, puoi creare query strutturate con un linguaggio di query simile a SQL chiamato ThreatConnect Query Language (TQL) per eseguire ricerche altamente mirate nei tuoi dati. Una query TQL include un nome di parametro, un operatore e un valore o un elenco di valori. Puoi combinare più query con parentesi e logica AND/OR.
La seguente query TQL di esempio cerca indicatori di rete ad alta confidenza (IP, host, URL) aggiunti negli ultimi 30 giorni associati a Cobalt Strike, APT o phishing. Inoltre, filtra esplicitamente i falsi positivi noti e i dati di test interni.
typeName IN ("Address", "Host", "URL") AND confidence > 75 AND dateAdded > "NOW() - 30 DAYS" AND (summary CONTAINS "cobalt" OR tag STARTSWITH "APT" OR tag ENDSWITH "Phish") AND NOT tag = "False_Positive" AND source != "Internal_Testing"
Per saperne di più su TQL, consulta la documentazione di ThreatConnect TQL.
Elenco dei campi predefiniti e aggiuntivi
Questa sezione descrive in dettaglio i punti dati specifici recuperati dall'API ThreatConnect, suddivisi in base all'inclusione predefinita o alla necessità di una configurazione manuale.
Campi predefiniti
I seguenti campi predefiniti vengono recuperati dall'API per impostazione predefinita e non richiedono alcuna configurazione aggiuntiva:
| # | Campo | Descrizione | Tipo | Valore/i di esempio |
|---|---|---|---|---|
| 1 | active |
Indica se l'indicatore è attivo | Booleano | true, false |
| 2 | activeLocked |
Indica se lo stato dell'indicatore attivo è bloccato | Booleano | true, false |
| 3 | confidence |
Il livello di confidenza dell'indicatore | Numero intero | 1, 2, 3, ... 100 |
| 4 | dateAdded |
La data e l'ora in cui l'indicatore è stato creato esternamente | DateTime | "2023-10-04T12:34:56Z" |
| 5 | id |
L'ID dell'indicatore | Numero intero | 1, 2, 3, ... 100 |
| 6 | ip |
L'indirizzo IP associato all'indicatore di indirizzo | Stringa | "107.180.48.66" |
| 7 | lastModified |
La data e l'ora dell'ultima modifica esterna dell'indicatore | DateTime | "2023-10-04T12:34:56Z" |
| 8 | legacyLink |
URL legacy (protetto) per accedere ai dettagli dell'indicatore nell'app ThreatConnect | URL | "https://app.threatconnect.com/auth/indicators/..." |
| 9 | ownerId |
L'ID del proprietario a cui appartiene l'indicatore | Numero intero | 1, 2, 3, ... 100 |
| 10 | ownerName |
Il nome del proprietario a cui appartiene l'indicatore | Stringa | "Demo Community" |
| 11 | privateFlag |
Indica se l'indicatore è privato | Booleano | true, false |
| 12 | rating |
Valutazione della minaccia dell'indicatore | Big Decimal | 1.0, 2.0, 3.0, 4.0, 5.0 |
| 13 | summary |
Il valore dell'indicatore | in base al tipo di indicatore | "type": "Host","summary": "zayla.co" ; "type": "Address","summary": "107.180.48.66" |
| 14 | type |
Il tipo di indicatore in fase di creazione | Stringa | "Address", "Host", "Registry Key" (elenco dei valori accettati) |
| 15 | webLink |
URL (protetto) per accedere ai dettagli dell'indicatore nell'app ThreatConnect | URL | "https://app.threatconnect.com/#/details/indicators/10/overview" |
Campi aggiuntivi
Quando recuperi i dati, puoi utilizzare il campo di input Campi per includere campi aggiuntivi non inclusi nell'elenco dei campi predefiniti.
Per includere uno o più campi aggiuntivi nella risposta dell'API, compila il valore del campo
in righe separate nella casella di input Campo durante la configurazione del feed.
Ad esempio, per includere i dati per i gruppi e i tag associati in una risposta API,
digita associatedGroups nella riga 1, premi Enter e poi inserisci tags nella
riga 2.
Per saperne di più sugli attributi degli indicatori, consulta Panoramica degli indicatori. Per ulteriori informazioni sui campi aggiuntivi, consulta Includere campi aggiuntivi nelle risposte dell'API.
Risolvere i problemi comuni
- Autenticazione non riuscita: controlla l'host API, l'ID accesso e la chiave segreta. Assicurati che l'utente API disponga delle autorizzazioni corrette per l'API v3 e non sia bloccato. Verifica che non ci siano firewall di rete che bloccano l'accesso di Google SecOps all'host API ThreatConnect.
- Nessun dato inserito:
- Verifica che i filtri impostati (ad es. confidenza, tag, tipi) corrispondano agli indicatori disponibili nell'istanza ThreatConnect.
- Controlla le autorizzazioni dell'utente API ThreatConnect.
- Controlla lo stato più recente del feed nell'interfaccia utente di Google SecOps per i messaggi di errore.
- Limiti di frequenza API: ThreatConnect potrebbe applicare limiti di frequenza API. Il connettore deve gestire i limiti di frequenza standard, ma un recupero eccessivo potrebbe causare ritardi. Consulta la documentazione dell'API ThreatConnect per i dettagli sui limiti.
- Problemi di analisi dei dati: se i log vengono importati ma non analizzati correttamente, confronta il log non elaborato di Google SecOps con l'output JSON previsto dell'API ThreatConnect v3 per gli indicatori. Contatta l' Google Cloud assistenza se sospetti un problema con il parser.
Esegui la migrazione da v2 Connector
Se utilizzavi il feed ThreatConnect precedente basato sull'API v2, tieni presente quanto segue:
- Differenze principali: l'API v3 potrebbe avere una struttura dei dati diversa, parametri di filtro diversi o nuove funzionalità. Consulta la documentazione dell'API ThreatConnect v3 per comprendere le modifiche pertinenti agli indicatori che stai importando.
- Configura feed v3: configura il nuovo feed (come descritto sopra) utilizzando le credenziali dell'API v3. Puoi eseguire contemporaneamente i feed v2 e v3 per un periodo di transizione.
- Convalida i dati: confronta i dati importati dal feed v3 con quelli del vecchio feed v2 per assicurarti che siano completi e corretti. Prendi nota di eventuali modifiche o miglioramenti dei campi.
- Disabilita il vecchio feed: una volta verificato che il feed v3 funziona come previsto, puoi disabilitare o eliminare la vecchia configurazione del feed che utilizza l'API v2 per evitare dati duplicati e ridurre le chiamate API.
Scopri di più
Per saperne di più sull'API REST ThreatConnect v3, consulta la documentazione di ThreatConnect.
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.