Collecter les journaux Cohesity
Présentation
Cet analyseur extrait les champs des messages syslog du logiciel de sauvegarde Cohesity à l'aide de modèles Grok. Il gère à la fois les messages syslog standards et les journaux au format JSON, en mappant les champs extraits à l'UDM et en attribuant dynamiquement un event_type en fonction de la présence d'identifiants principaux et cibles.
Avant de commencer
Assurez-vous de remplir les conditions préalables suivantes :
- Instance Google SecOps.
- Accès privilégié à la gestion Cohesity.
Configurer des flux
Pour configurer un flux, procédez comme suit :
- Accédez à Paramètres SIEM > Flux.
- Cliquez sur Add New Feed (Ajouter un flux).
- Sur la page suivante, cliquez sur Configurer un seul flux.
- Dans le champ Nom du flux, saisissez le nom du flux (par exemple, Journaux Cohesity).
- Sélectionnez Webhook comme type de source.
- Sélectionnez Cohesity comme Type de journal.
- Cliquez sur Suivant.
- Facultatif : Spécifiez les valeurs des paramètres d'entrée suivants :
- Délimiteur de fractionnement : délimiteur utilisé pour séparer les lignes de journaux, tel que
\n
.
- Délimiteur de fractionnement : délimiteur utilisé pour séparer les lignes de journaux, tel que
- Cliquez sur Suivant.
- Vérifiez la configuration du flux sur l'écran Finaliser, puis cliquez sur Envoyer.
- Cliquez sur Générer une clé secrète pour générer une clé secrète permettant d'authentifier ce flux.
- Copiez et stockez la clé secrète. Vous ne pourrez plus afficher cette clé secrète. Si nécessaire, vous pouvez générer une nouvelle clé secrète, mais l'ancienne deviendra obsolète.
- Dans l'onglet Détails, copiez l'URL du point de terminaison du flux à partir du champ Informations sur le point de terminaison. Vous devez spécifier cette URL de point de terminaison dans votre application cliente.
- Cliquez sur OK.
Créer une clé API pour le flux de webhook
Accédez à la consoleGoogle Cloud > Identifiants.
Cliquez sur Créer des identifiants, puis sélectionnez Clé API.
Restreignez l'accès à la clé API à l'API Chronicle.
Spécifier l'URL du point de terminaison
- Dans votre application cliente, spécifiez l'URL du point de terminaison HTTPS fournie dans le flux de webhook.
Activez l'authentification en spécifiant la clé API et la clé secrète dans l'en-tête personnalisé au format suivant :
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
Recommandation : Spécifiez la clé API en tant qu'en-tête au lieu de la spécifier dans l'URL.
Si votre client de webhook n'accepte pas les en-têtes personnalisés, vous pouvez spécifier la clé API et la clé secrète à l'aide de paramètres de requête au format suivant :
ENDPOINT_URL?key=API_KEY&secret=SECRET
Remplacez les éléments suivants :
ENDPOINT_URL
: URL du point de terminaison du flux.API_KEY
: clé API pour s'authentifier auprès de Google SecOps.SECRET
: clé secrète que vous avez générée pour authentifier le flux.
Configurer un webhook dans Cohesity pour Google SecOps
- Connectez-vous à la gestion du cluster Cohesity.
- Accédez à la section Jobs de protection.
- Sélectionnez le job de protection pour lequel vous souhaitez configurer le webhook.
- Cliquez sur le menu Actions (trois points verticaux) à côté du job de protection > Modifier.
- Sélectionnez l'onglet Alertes.
- Cliquez sur + Ajouter un Webhook.
- Spécifiez les valeurs des paramètres suivants :
- Nom : indiquez un nom descriptif pour le webhook (par exemple, Google SecOps).
- URL : saisissez l'URL Google SecOps
<ENDPOINT_URL>
. - Méthode : sélectionnez POST.
- Type de contenu : sélectionnez application/json.
- Charge utile : ce champ dépend des données spécifiques que vous souhaitez envoyer.
- Activer le webhook : cochez la case pour activer le webhook.
- Enregistrez la configuration : cliquez sur Enregistrer pour appliquer la configuration du webhook au job de protection.
Table de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
ClientIP |
principal.asset.ip |
Mappé directement à partir du champ ClientIP . |
ClientIP |
principal.ip |
Mappé directement à partir du champ ClientIP . |
description |
security_result.description |
Mappé directement à partir du champ description . |
DomainName |
target.asset.hostname |
Mappé directement à partir du champ DomainName . |
DomainName |
target.hostname |
Mappé directement à partir du champ DomainName . |
EntityPath |
target.url |
Mappé directement à partir du champ EntityPath . |
host |
principal.asset.hostname |
Mappé directement à partir du champ host . |
host |
principal.hostname |
Mappé directement à partir du champ host . Copié à partir du champ ts après avoir été analysé en tant qu'horodatage. Déterminé par la logique de l'analyseur en fonction de la présence de principal_mid_present , target_mid_present et principal_user_present . Valeurs possibles : NETWORK_CONNECTION , USER_UNCATEGORIZED , STATUS_UPDATE , GENERIC_EVENT . Codé en dur sur "Cohesity". |
product_event_type |
metadata.product_event_type |
Mappé directement à partir du champ product_event_type . Codé en dur sur "COHESITY". |
pid |
principal.process.pid |
Mappé directement à partir du champ pid . |
Protocol |
network.application_protocol |
Directement mappé à partir du champ Protocol , converti en majuscules. |
RecordID |
additional.fields (key: "RecordID", value: RecordID ) |
Mappé directement à partir du champ RecordID , imbriqué sous additional.fields . |
RequestType |
security_result.detection_fields (key: "RequestType", value: RequestType ) |
Mappé directement à partir du champ RequestType , imbriqué sous security_result.detection_fields . |
Result |
security_result.summary |
Mappé directement à partir du champ Result . |
sha_value |
additional.fields (clé : "SHA256", valeur : sha_value ) |
Mappé directement à partir du champ sha_value , imbriqué sous additional.fields . |
target_ip |
target.asset.ip |
Mappé directement à partir du champ target_ip . |
target_ip |
target.ip |
Mappé directement à partir du champ target_ip . |
target_port |
target.port |
Mappé directement à partir du champ target_port , converti en entier. |
Timestamp |
metadata.collected_timestamp |
Mappé directement à partir du champ Timestamp après son analyse en code temporel. |
ts |
events.timestamp |
Mappé directement à partir du champ ts après son analyse en code temporel. |
UserID |
principal.user.userid |
Mappé directement à partir du champ UserID , converti en chaîne. |
UserName |
principal.user.user_display_name |
Mappé directement à partir du champ UserName . |
UserSID |
principal.user.windows_sid |
Mappé directement à partir du champ UserSID . |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.