Zscaler
Questo documento fornisce indicazioni su come integrare Zscaler con Google SecOps.
Casi d'uso
L'integrazione di Zscaler utilizza le funzionalità di Google SecOps per supportare i seguenti casi d'uso:
Gestisci il filtro degli URL: aggiorna automaticamente le categorie di URL e le regole di filtro per bloccare i domini dannosi identificati durante le indagini.
Automatizza la gestione del ciclo di vita degli utenti: gestisci dinamicamente l'accesso degli utenti e l'appartenenza ai gruppi in Zscaler in base ai livelli di rischio per la sicurezza.
Arricchisci gli avvisi di rete: recupera informazioni dettagliate su utenti, reparti e sedi associati al traffico bloccato.
Sincronizza le policy di sicurezza: implementa immediatamente le modifiche alla sicurezza nel tuo ambiente Zscaler per rispondere alle minacce attive.
Prima di iniziare
Prima di configurare l'integrazione in Google SecOps, verifica che il tuo ambiente Zscaler soddisfi i seguenti requisiti:
Metodo di autenticazione: determina se la tua organizzazione utilizza OAuth 2.0 o l'autenticazione legacy basata su credenziali. L'integrazione utilizza queste credenziali per stabilire una sessione e recuperare un token temporaneo per le richieste API:
OAuth 2.0 (consigliato): questo metodo utilizza il servizio ZSLogin per la gestione centralizzata delle identità. Devi registrare un client OAuth 2.0 nel tuo provider di identità e aggiungere il server di autorizzazione al portale di amministrazione ZIA. Per i dettagli, vedi Proteggere le API ZIA con OAuth 2.0.
Credenziali legacy: questo metodo utilizza una chiave API e le credenziali di amministratore ZIA. Per maggiori dettagli, vedi Gestione della chiave API Cloud Service.
Autorizzazioni account: assicurati che all'account cliente o amministratore siano assegnati i ruoli corretti:
OAuth 2.0: richiede un ruolo API. Per maggiori dettagli, vedi Aggiunta di ruoli API.
Credenziale legacy: richiede un ruolo di amministratore con le autorizzazioni di accesso API abilitate. Per maggiori dettagli, vedi Aggiungere ruoli amministrativi.
Accesso alla rete: assicurati che la configurazione di rete consenta connessioni HTTPS in uscita dal tuo ambiente Google SecOps agli endpoint API Zscaler, ad esempio
zsapi.{your_cloud_name}.
Parametri di integrazione
L'integrazione Zscaler richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
Api Root |
Obbligatorio. L'URL di base dell'istanza Zscaler, ad esempio,
|
Login ID |
Facoltativo. Il nome utente o l'indirizzo email associato all'account amministratore Zscaler utilizzato per l'autenticazione. Questo parametro è obbligatorio per l'autenticazione legacy. Se vengono fornite sia le credenziali legacy sia quelle OAuth 2.0, queste ultime hanno la precedenza. |
Api Key |
Facoltativo. La chiave API univoca generata nel portale Zscaler per autorizzare le richieste API. Questo parametro è obbligatorio per l'autenticazione legacy. Se vengono fornite sia le credenziali legacy sia quelle OAuth 2.0, queste ultime hanno la precedenza. |
Password |
Facoltativo. La password associata all'account amministratore Zscaler utilizzato per l'autenticazione. Questo parametro è obbligatorio per l'autenticazione legacy. Se vengono fornite sia le credenziali legacy sia quelle OAuth 2.0, queste ultime hanno la precedenza. |
Verify SSL |
Facoltativo. Se selezionata, l'integrazione convalida il certificato SSL quando si connette al server Zscaler. Abilitato per impostazione predefinita. |
Client ID |
Facoltativo. L'identificatore univoco del client OAuth 2.0 utilizzato per l'autenticazione tramite il servizio ZSLogin. Questo parametro è obbligatorio per la configurazione di OAuth 2.0 e ha la precedenza sull'autenticazione legacy. |
Client Secret |
Facoltativo. La chiave segreta associata all'ID client utilizzato per autenticare il client OAuth 2.0. Questo parametro è obbligatorio per la configurazione di OAuth 2.0 e ha la precedenza sull'autenticazione legacy. |
Login API Root |
Facoltativo. L'URL di base per il servizio ZSLogin utilizzato per la gestione centralizzata di identità e accessi. Questo parametro è obbligatorio per la configurazione di OAuth 2.0 e ha la precedenza sull'autenticazione legacy. Il valore predefinito è |
Per istruzioni su come configurare un'integrazione in Google SecOps, consulta Configurare le integrazioni.
Se necessario, puoi apportare modifiche in un secondo momento. Dopo aver configurato un'istanza di integrazione, puoi utilizzarla nei playbook. Per saperne di più su come configurare e supportare più istanze, consulta Supportare più istanze.
Azioni
Per ulteriori informazioni sulle azioni, vedi Rispondere alle azioni in attesa dalla tua scrivania e Eseguire un'azione manuale.
Aggiungi alla blacklist
Aggiunge un URL/dominio/IP alla blocklist.
Input azione
Questa azione richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
IOCs |
Facoltativo. Un elenco separato da virgole di indicatori di compromissione (indirizzi IP, URL o domini) da aggiungere
alla lista bloccata, ad esempio |
Run On
Questa azione viene eseguita sulle seguenti entità:
- URL
- Nome host
- Indirizzo IP
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Aggiungi alla lista consentita
Aggiunge un URL/dominio/IP alla lista consentita.
Input azione
Questa azione richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
IOCs |
Facoltativo. Un elenco di indicatori di compromissione (IOC) (indirizzi IP, URL o domini) separato da virgole da aggiungere alla lista consentita, ad esempio |
Run On
Questa azione viene eseguita sulle seguenti entità:
- URL
- Nome host
- Dominio
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Ottieni lista nera
Recupera un elenco di URL nella lista nera.
Parametri
N/D
Run On
Questa azione viene eseguita su tutte le entità.
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Ottenere il report della sandbox
Ricevi un report completo per un hash MD5 di un file analizzato da Sandbox.
Parametri
N/D
Run On
Questa azione viene eseguita sull'entità Filehash.
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
[
{
"EntityResult":
{
"Full Details":
{
"SystemSummary": [
{
"SignatureSources": [
"",
"76CD0000 page execute and read and write",
"76DD0000 page execute and read and write"
],
"Risk": "LOW",
"Signature": "Allocates memory within range which is reserved for system DLLs"
},{
"SignatureSources": [
"",
"wow64.pdb source: loaddll32.exe",
"wow64.pdbH source: loaddll32.exe",
"wow64cpu.pdb source: loaddll32.exe",
"wow64win.pdb source: loaddll32.exe",
"wow64win.pdbH source: loaddll32.exe"
],
"Risk": "LOW",
"Signature": "Binary contains paths to debug symbols"
},{
"SignatureSources": [
"",
"clean0.winDLL@1/1@0/0"
],
"Risk": "LOW",
"Signature": "Classification label"
}, {
"SignatureSources":[
"",
"More than 502 > 100 exports found"
],
"Risk": "LOW",
"Signature": "PE file exports many functions"
}, {
"SignatureSources": [
"",
"Virtual size of .text is bigger than: 0x100000"
],
"Risk": "LOW",
"Signature": "PE file has a big code size"
},{
"SignatureSources": [
"",
"Raw size of .text is bigger than: 0x100000 < 0x176000"
],
"Risk": "LOW",
"Signature": "PE file has a big raw section"
}, {
"SignatureSources": [
"",
"Image base 0x704c0000 > 0x60000000"
],
"Risk": "LOW",
"Signature": "PE file has a high image base. often used for DLLs"
}, {
"SignatureSources": [
"",
"Section: .text IMAGE_SCN_ALIGN_MASK, IMAGE_SCN_ALIGN_256BYTES, IMAGE_SCN_ALIGN_16BYTES, IMAGE_SCN_ALIGN_64BYTES, IMAGE_SCN_ALIGN_1BYTES, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_ALIGN_2048BYTES, IMAGE_SCN_ALIGN_1024BYTES, IMAGE_SCN"
],
"Risk": "LOW",
"Signature": "PE file has an executable .text section and no other executable section"
}, {
"SignatureSources": [
"", "HKEY_USERS\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Safer\\\\CodeIdentifiers"
],
"Risk": "LOW",
"Signature": "Reads software policies"
},{
"SignatureSources": [
"",
"File size 1710606 > 1048576"
],
"Risk": "LOW",
"Signature": "Submission file is bigger than most known malware samples"
},{
"SignatureSources": [
"",
"no activity detected"
],
"Risk": "MODERATE",
"Signature": "Program does not show much activity"
}
],
"Summary":
{
"Status": "COMPLETED",
"Category": "EXECS",
"FileType": "DLL",
"Duration": 499618,
"StartTime": 1553130306
},
"Classification":
{
"Category": "BENIGN",
"Type": "BENIGN",
"Score": 0,
"DetectedMalware": ""
},
"Persistence":[
{
"SignatureSources": [
"",
"section name: /4"
],
"Risk": "LOW",
"Signature": "PE file contains sections with non-standard names"
}
],
"FileProperties":
{
"SHA1": "b0aa7eecfa6c0066504bf79efe1bc057ac61e9b8",
"FileSize": 1710606,
"RootCA": "",
"Issuer": "",
"FileType": "DLL",
"Sha256": "a39180232ae6a689650f5df566bb4e81b94d9d19a53363ce17d7a12fd21f78cf",
"DigitalCerificate": "",
"SSDeep": "24576:3LnYQhDtnNgQe42lcCZNj4I/MmaOdb+Y+mmY5Gc3nGkh2sQginrgGGQCTQIMGNdd:zYQlEpIE/p3nFhckZF7oU",
"MD5": "1803c2c0f0ec61c98b3630d7e4b1cd5d"
}
}
},
"Entity": "1803C2C0F0EC61C98B3630D7E4B1CD5D"
}
]
Arricchimento delle entità
| Nome campo di arricchimento | Logica - Quando applicarla |
|---|---|
| Dettagli completi | Restituisce se esiste nel risultato JSON |
Approfondimenti
N/D
Ottenere le categorie di URL
Recupera informazioni su tutte le categorie di URL.
Parametri
N/D
Run On
Questa azione viene eseguita su tutte le entità.
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
[
{
"description": "OTHER_ADULT_MATERIAL_DESC",
"val": 1,
"dbCategorizedUrls": [],
"editable": true,
"urls": [],
"customCategory": false,
"id": "OTHER_ADULT_MATERIAL"
}, {
"description": "ADULT_THEMES_DESC",
"val": 2,
"dbCategorizedUrls": [],
"editable": true,
"urls": [],
"customCategory": false,
"id": "ADULT_THEMES"
}
]
Arricchimento delle entità
N/D
Approfondimenti
N/D
Ottieni la lista consentita
Recupera un elenco di URL inclusi nella lista consentita.
Parametri
N/D
Run On
Questa azione viene eseguita su tutte le entità.
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Cerca entità
Cerca la classificazione di un URL/dominio/IP.
Parametri
N/D
Run On
Questa azione viene eseguita sulle seguenti entità:
- URL
- Nome host
- Dominio
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
[
{
"EntityResult": {
"url": "markossolomon.com/f1q7qx.php",
"urlClassificationsWithSecurityAlert": ["MALWARE_SITE"],
"urlClassifications": []
},
"Entity": "HTTP://MARKOSSOLOMON.COM/F1Q7QX.PHP"
}
]
Arricchimento delle entità
| Nome campo di arricchimento | Logica - Quando applicarla |
|---|---|
| url | Restituisce se esiste nel risultato JSON |
| urlClassificationsWithSecurityAlert | Restituisce se esiste nel risultato JSON |
| urlClassifications | Restituisce se esiste nel risultato JSON |
Approfondimenti
N/D
Dindin
Controlla la connettività.
Parametri
N/D
Run On
Questa azione viene eseguita su tutte le entità.
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Rimuovi dalla blacklist
Rimuove un URL/dominio/IP dalla lista bloccata.
Input azione
Questa azione richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
IOCs |
Facoltativo. Un elenco separato da virgole di indicatori di compromissione (indirizzi IP, URL o domini) da rimuovere
dalla lista bloccata, ad esempio |
Run On
Questa azione viene eseguita sulle seguenti entità:
- URL
- Nome host
- Indirizzo IP
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Rimuovi dalla lista consentita
Rimuove un URL/dominio/IP dalla lista consentita.
Input azione
Questa azione richiede i seguenti parametri:
| Parametro | Descrizione |
|---|---|
IOCs |
Facoltativo. Un elenco separato da virgole di indicatori di compromissione (indirizzi IP, URL o domini) da rimuovere
dalla lista consentita, ad esempio |
Run On
Questa azione viene eseguita sulle seguenti entità:
- URL
- Nome host
- Indirizzo IP
Risultato script
| Nome risultato script | Opzioni di valore | Esempio |
|---|---|---|
| is_success | Vero/Falso | is_success:False |
Risultato JSON
N/A
Arricchimento delle entità
N/D
Approfondimenti
N/D
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.