Zscaler
Ce document explique comment intégrer Zscaler à Google SecOps.
Cas d'utilisation
L'intégration de Zscaler utilise les fonctionnalités de Google SecOps pour prendre en charge les cas d'utilisation suivants :
Gérer le filtrage des URL : mettez à jour automatiquement les catégories d'URL et les règles de filtrage pour bloquer les domaines malveillants identifiés lors des investigations.
Automatiser la gestion du cycle de vie des utilisateurs : gérez de manière dynamique l'accès des utilisateurs et les appartenances aux groupes dans Zscaler en fonction des niveaux de risque de sécurité.
Enrichir les alertes réseau : récupérez des informations détaillées sur les utilisateurs, les services et les emplacements associés au trafic bloqué.
Synchroniser les règles de sécurité : déployez instantanément les modifications de sécurité dans votre environnement Zscaler pour répondre aux menaces actives.
Avant de commencer
Avant de configurer l'intégration dans Google SecOps, vérifiez que votre environnement Zscaler répond aux exigences suivantes :
Méthode d'authentification : déterminez si votre organisation utilise OAuth 2.0 ou l'ancienne authentification basée sur les identifiants. L'intégration utilise ces identifiants pour établir une session et récupérer un jeton temporaire pour les requêtes API :
OAuth 2.0 (recommandé) : cette méthode utilise le service ZSLogin pour la gestion centralisée des identités. Vous devez enregistrer un client OAuth 2.0 auprès de votre fournisseur d'identité et ajouter le serveur d'autorisation au portail d'administration ZIA. Pour en savoir plus, consultez Sécuriser les API ZIA avec OAuth 2.0.
Ancien identifiant : cette méthode utilise une clé API et des identifiants d'administrateur ZIA. Pour en savoir plus, consultez Gérer la clé API Cloud Service.
Autorisations du compte : assurez-vous que les rôles appropriés sont attribués au compte client ou compte administrateur :
OAuth 2.0 : nécessite un rôle d'API. Pour en savoir plus, consultez Ajouter des rôles d'API.
Ancien identifiant : nécessite un rôle d'administrateur avec les autorisations d'accès à l'API activées. Pour en savoir plus, consultez Ajouter des rôles d'administrateur.
Accès au réseau : assurez-vous que votre configuration réseau autorise les connexions HTTPS sortantes de votre environnement Google SecOps vers les points de terminaison de l'API Zscaler, par exemple
zsapi.{your_cloud_name}.
Paramètres d'intégration
L'intégration de Zscaler nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
Api Root |
Obligatoire. URL de base de l'instance Zscaler, par exemple |
Login ID |
Facultatif. Nom d'utilisateur ou adresse e-mail associés au compte administrateur Zscaler utilisé pour l'authentification. Ce paramètre est obligatoire pour l'authentification ancienne. Si des identifiants anciens et OAuth 2.0 sont fournis, OAuth 2.0 est prioritaire. |
Api Key |
Facultatif. Clé API unique générée dans le portail Zscaler pour autoriser les requêtes API. Ce paramètre est obligatoire pour l'authentification ancienne. Si des identifiants anciens et OAuth 2.0 sont fournis, OAuth 2.0 est prioritaire. |
Password |
Facultatif. Mot de passe associé au compte administrateur Zscaler utilisé pour l'authentification. Ce paramètre est obligatoire pour l'authentification ancienne. Si des identifiants anciens et OAuth 2.0 sont fournis, OAuth 2.0 est prioritaire. |
Verify SSL |
Facultatif. Si cette option est sélectionnée, l'intégration valide le certificat SSL lors de la connexion au serveur Zscaler. Cette option est activée par défaut. |
Client ID |
Facultatif. Identifiant unique du client OAuth 2.0 utilisé pour l'authentification à l'aide du service ZSLogin. Ce paramètre est obligatoire pour la configuration OAuth 2.0 et prévaut sur l'ancienne authentification. |
Client Secret |
Facultatif. La clé secrète associée à l'ID client utilisé pour authentifier le client OAuth 2.0. Ce paramètre est obligatoire pour la configuration OAuth 2.0 et prévaut sur l'ancienne authentification. |
Login API Root |
Facultatif. URL de base du service ZSLogin utilisé pour la gestion centralisée des identités et des accès. Ce paramètre est obligatoire pour la configuration OAuth 2.0 et prévaut sur l'ancienne authentification. La valeur par défaut est |
Pour savoir comment configurer une intégration dans Google SecOps, consultez Configurer des intégrations.
Vous pourrez apporter des modifications ultérieurement si nécessaire. Après avoir configuré une instance d'intégration, vous pouvez l'utiliser dans des playbooks. Pour en savoir plus sur la configuration et la prise en charge de plusieurs instances, consultez Prendre en charge plusieurs instances.
Actions
Pour en savoir plus sur les actions, consultez Répondre aux actions en attente depuis votre bureau et Exécuter une action manuelle dans votre demande.
Ajouter à la liste noire
Ajoute une URL, un domaine ou une adresse IP à la liste de blocage.
Entrées de l'action
Cette action nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
IOCs |
Facultatif. Liste d'IOC (adresses IP, URL ou domaines) séparés par une virgule à ajouter à la liste de blocage, par exemple |
Exécuter sur
Cette action s'exécute sur les entités suivantes :
- URL
- Nom d'hôte
- Adresse IP
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Ajouter à la liste d'autorisation
Ajoute une URL, un domaine ou une adresse IP à la liste d'autorisation.
Entrées de l'action
Cette action nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
IOCs |
Facultatif. Liste d'IOC (adresses IP, URL ou domaines) séparés par une virgule à ajouter à la liste d'autorisation, par exemple |
Exécuter sur
Cette action s'exécute sur les entités suivantes :
- URL
- Nom d'hôte
- Domaine
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Obtenir la liste d'exclusion
Récupère une liste d'URL placées sur liste de blocage.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Obtenir un rapport Sandbox
Obtenez un rapport complet pour un hachage MD5 d'un fichier analysé par Sandbox.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur l'entité Filehash.
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat 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"
}
]
Enrichissement d'entités
| Nom du champ d'enrichissement | Logique : quand les utiliser ? |
|---|---|
| Détails complets | Renvoie s'il existe dans le résultat JSON |
Insights
N/A
Obtenir les catégories d'URL
Obtient des informations sur toutes les catégories d'URL.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat 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"
}
]
Enrichissement d'entités
N/A
Insights
N/A
Obtenir la liste d'autorisation
Récupère une liste d'URL ajoutées à la liste d'autorisation.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Rechercher une entité
Recherchez la catégorie d'une URL, d'un domaine ou d'une adresse IP.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur les entités suivantes :
- URL
- Nom d'hôte
- Domaine
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
[
{
"EntityResult": {
"url": "markossolomon.com/f1q7qx.php",
"urlClassificationsWithSecurityAlert": ["MALWARE_SITE"],
"urlClassifications": []
},
"Entity": "HTTP://MARKOSSOLOMON.COM/F1Q7QX.PHP"
}
]
Enrichissement d'entités
| Nom du champ d'enrichissement | Logique : quand les utiliser ? |
|---|---|
| url | Renvoie s'il existe dans le résultat JSON |
| urlClassificationsWithSecurityAlert | Renvoie s'il existe dans le résultat JSON |
| urlClassifications | Renvoie s'il existe dans le résultat JSON |
Insights
N/A
Ping
Vérifiez la connectivité.
Paramètres
N/A
Exécuter sur
Cette action s'exécute sur toutes les entités.
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Supprimer de la liste de blocage
Supprime une URL, un domaine ou une adresse IP de la liste de blocage.
Entrées de l'action
Cette action nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
IOCs |
Facultatif. Liste d'IOC (adresses IP, URL ou domaines) séparés par une virgule à supprimer de la liste de blocage, par exemple |
Exécuter sur
Cette action s'exécute sur les entités suivantes :
- URL
- Nom d'hôte
- Adresse IP
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Supprimer de la liste d'autorisation
Supprime une URL, un domaine ou une adresse IP de la liste d'autorisation.
Entrées de l'action
Cette action nécessite les paramètres suivants :
| Paramètre | Description |
|---|---|
IOCs |
Facultatif. Liste d'IOC (adresses IP, URL ou domaines) séparés par une virgule à supprimer de la liste d'autorisation, par exemple |
Exécuter sur
Cette action s'exécute sur les entités suivantes :
- URL
- Nom d'hôte
- Adresse IP
Résultat du script
| Nom du résultat du script | Options de valeur | Exemple |
|---|---|---|
| is_success | Vrai/Faux | is_success:False |
Résultat JSON
N/A
Enrichissement d'entités
N/A
Insights
N/A
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.