Collecter les journaux IONIX Attack Surface Management

Compatible avec :

Ce document explique comment configurer IONIX Attack Surface Management pour envoyer des journaux à Google Security Operations à l'aide de webhooks.

IONIX est une plate-forme de gestion de la surface d'attaque externe (EASM, External Attack Surface Management) qui détecte, évalue et valide les expositions de sécurité dans les ressources Internet et la chaîne d'approvisionnement numérique de votre organisation. IONIX fournit des tâches à effectuer pour les résultats DNS, les problèmes d'infrastructure à clé publique, les expositions cloud et les failles, et propose des workflows de correction hiérarchisés.

Avant de commencer

Assurez-vous de remplir les conditions préalables suivantes :

  • Une instance Google SecOps
  • IONIX Attack Surface Management est compatible avec le push HTTP POST pour la diffusion des journaux.
  • Accès à la Google Cloud Console (pour créer une clé API)
  • Un compte actif sur le portail IONIX avec accès administrateur à Settings > Integrations

Créer un flux de webhook dans Google SecOps

Créer le flux

  1. Accédez à Paramètres SIEM> Flux.
  2. Cliquez sur Ajouter un flux.
  3. Sur la page suivante, cliquez sur Configurer un seul flux.
  4. Dans le champ Nom du flux, saisissez un nom pour le flux (par exemple, IONIX ASM Logs).
  5. Sélectionnez Webhook comme Type de source.
  6. Sélectionnez IONIX comme type de journal.
  7. Cliquez sur Suivant.
  8. Spécifiez les valeurs des paramètres d'entrée suivants :
    • Délimiteur de fractionnement (facultatif) : saisissez un délimiteur pour fractionner les événements multilignes. Valeurs courantes :
      • \n : délimiteur de saut de ligne (le plus courant pour NDJSON)
      • Laissez ce champ vide si chaque requête contient un seul événement.
    • Espace de noms de l'élément : espace de noms de l'élément
    • Libellés d'ingestion : libellé à appliquer aux événements de ce flux
  9. Cliquez sur Suivant.
  10. Vérifiez la configuration de votre nouveau flux sur l'écran Finaliser, puis cliquez sur Envoyer.

Générer et enregistrer une clé secrète

Après avoir créé le flux, vous devez générer une clé secrète pour l'authentification :

  1. Sur la page d'informations sur le flux, cliquez sur Générer une clé secrète.
  2. Une boîte de dialogue affiche la clé secrète.
  3. Copiez et enregistrez la clé secrète de manière sécurisée.

Obtenir l'URL du point de terminaison du flux

  1. Accédez à l'onglet Détails du flux.
  2. Dans la section Endpoint Information (Informations sur le point de terminaison), copiez l'URL du point de terminaison du flux.
  3. Le format d'URL est le suivant :

    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    

    ou

    https://<REGION>-malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    
  4. Enregistrez cette URL pour les étapes suivantes.

  5. Cliquez sur OK.

Créer une clé API Google Cloud

Google SecOps nécessite une clé API pour l'authentification. Créez une clé API restreinte dans la Google Cloud Console.

Créer la clé API

  1. Accédez à la page "Identifiants" de la console Google Cloud.
  2. Sélectionnez votre projet (celui associé à votre instance Google SecOps).
  3. Cliquez sur Créer des identifiants> Clé API.
  4. Une clé API est créée et affichée dans une boîte de dialogue.
  5. Cliquez sur Modifier la clé API pour restreindre la clé.

Restreindre la clé API

  1. Sur la page des paramètres de la clé API :
    • Nom : saisissez un nom descriptif (par exemple, Google SecOps Webhook API Key).
  2. Sous Restrictions relatives aux API :
    1. Sélectionnez Restreindre la clé.
    2. Dans le menu déroulant Sélectionner des API, recherchez et sélectionnez API Google SecOps (ou API Chronicle).
  3. Cliquez sur Enregistrer.
  4. Copiez la valeur de la clé API dans le champ Clé API en haut de la page.
  5. Enregistrez la clé API de manière sécurisée.

Configurer le webhook IONIX Attack Surface Management

IONIX permet d'envoyer des données d'événements de sécurité à des points de terminaison externes via HTTP POST à l'aide de son framework d'intégration. L'intégration est configurée dans le portail IONIX et utilise le même mécanisme que l'intégration Splunk HEC, adapté pour envoyer des données au point de terminaison du webhook Google SecOps.

Créer l'URL de webhook

  • Combinez l'URL du point de terminaison Google SecOps et la clé API en une seule URL :

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
    • Exemple :

      https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...&secret=abcd1234...
      

Configurer l'intégration sur le portail IONIX

  1. Connectez-vous à votre portail IONIX (par exemple, https://<your-portal-name>.ionix.com).
  2. Accédez à Paramètres > Intégrations.
  3. Cliquez sur Intégration Splunk > Paramètres.
  4. Fournissez les informations de configuration suivantes :

    • Jeton HEC : saisissez la clé secrète générée à partir du flux de webhook Google SecOps.
    • Serveur Splunk : saisissez l'URL complète du point de terminaison du webhook Google SecOps, avec la clé API ajoutée en tant que paramètre de requête. Utilisez le format suivant :

      https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=<API_KEY>
      
  5. Configurez l'intervalle d'envoi pour définir la fréquence à laquelle IONIX envoie des données au point de terminaison (par exemple, toutes les 60 minutes).

  6. Renseignez tous les champs de données supplémentaires pertinents pour votre environnement.

  7. Cliquez sur Enregistrer.

  8. Activez l'intégration en basculant le bouton sur Activé.

  9. Les données commenceront à s'afficher dans Google SecOps au cours d'un cycle d'intervalle de transmission. La première livraison de données peut prendre jusqu'à une heure.

Alternative : utiliser l'API REST IONIX avec un script personnalisé

Si l'intégration HEC Splunk native ne répond pas à vos besoins, vous pouvez utiliser l'API REST IONIX pour extraire les données et les transférer vers Google SecOps.

Générer une clé API IONIX

  1. Connectez-vous au portail IONIX.
  2. Cliquez sur Paramètres de l'API.
  3. Attribuez un nom au jeton.
  4. Sélectionnez le type de jeton :
    • Lecture seule (recommandé pour la collecte de données)
    • Lecture/écriture
  5. Définissez une date d'expiration pour le jeton.
  6. Cliquez sur Créer un jeton.
  7. Copiez le jeton généré et enregistrez-le dans un emplacement sécurisé.

Points de terminaison de l'API IONIX

Utilisez les points de terminaison d'API suivants pour récupérer les données de sécurité d'IONIX :

Point de terminaison Description
/api/v1/remediation/action-items/open/ Éléments à traiter (domaines, point de terminaison racine)
/api/v1/remediation/action-items/all/detailed Tous les éléments d'action avec des informations détaillées
/api/v1/discovery/org-assets/export-discovery-evidence Preuves de risque et de découverte des composants
/api/v1/discovery/org-assets Composants de l'organisation (y compris la date de première apparition)
/api/v1/tests Résultats des tests de sécurité
  • Exemple de requête API

    curl -X GET "https://api.portal.ionix.io/api/v1/remediation/action-items/all/detailed" \
        -H "Authorization: Token <IONIX_API_KEY>" \
        -H "Content-Type: application/json"
    

Transférer des données vers Google SecOps

  • Après avoir récupéré les données de l'API IONIX, transférez-les au point de terminaison du webhook Google SecOps :

    curl -X POST "<ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>" \
        -H "Content-Type: application/json" \
        -d @ionix_events.json
    

Référence des méthodes d'authentification

Les flux de webhook Google SecOps sont compatibles avec plusieurs méthodes d'authentification. Choisissez la méthode acceptée par votre fournisseur.

Si votre fournisseur accepte les en-têtes HTTP personnalisés, utilisez cette méthode pour renforcer la sécurité.

  • Format de la demande :

    POST <ENDPOINT_URL> HTTP/1.1
    Content-Type: application/json
    x-goog-chronicle-auth: <API_KEY>
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Avantages :

  • Clé API et code secret non visibles dans l'URL
  • Plus sécurisé (les en-têtes ne sont pas enregistrés dans les journaux d'accès au serveur Web)
  • Méthode privilégiée lorsque le fournisseur la prend en charge

Méthode 2 : Paramètres de requête

Si votre fournisseur n'accepte pas les en-têtes personnalisés, ajoutez les identifiants à l'URL.

  • Format de l'URL :

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
    • Exemple :
    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...&secret=abcd1234...
    
  • Format de la demande :

    POST <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY> HTTP/1.1
    Content-Type: application/json
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Inconvénients :

  • Identifiants visibles dans l'URL
  • Peut être consigné dans les journaux d'accès au serveur Web
  • Moins sécurisé que les en-têtes

Méthode 3 : Hybride (URL + en-tête)

Certaines configurations utilisent une clé API dans l'URL et une clé secrète dans l'en-tête.

  • Format de la demande :

    POST <ENDPOINT_URL>?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Noms des en-têtes d'authentification

Google SecOps accepte les noms d'en-tête suivants pour l'authentification :

  • Pour la clé API :

    • x-goog-chronicle-auth (recommandé)
    • X-Goog-Chronicle-Auth (non sensible à la casse)
  • Pour la clé secrète :

    • x-chronicle-auth (recommandé)
    • X-Chronicle-Auth (non sensible à la casse)

Table de mappage UDM

Pour savoir comment les champs de journaux IONIX sont mappés aux champs du modèle de données unifié (UDM) de Google Security Operations, recherchez le type de journal IONIX dans la documentation de référence sur les analyseurs par défaut compatibles.

Journal des modifications

Afficher le journal des modifications pour ce parseur

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.