Intégrations

Il est possible d’envoyer les données de Cyberwatch vers un système externe via les Intégrations.

Création d’une Intégration

  1. Cliquer sur Administration
  2. Cliquer sur Intégrations
  3. Cliquer sur Ajouter
  4. Compléter les champs du formulaire de création d’intégration :

    • Modèle d’intégration :
      • Microsoft Teams - Informations d’actifs est un modèle de configuration vous permettant d’envoyer sur votre canal Teams, les informations relatives aux vulnérabilités présentes sur vos actifs.
      • Microsoft Teams - Informations de vulnérabilités est un modèle de configuration vous permettant d’envoyer les différentes informations relatives à des CVE.
      • Microsoft Teams - Gestion des correctifs est un modèle de configuration vous permettant d’envoyer les informations relatives aux correctifs à déployer sur vos actifs.
    • Protocole de l’intégration :
      • HTTP hook pour envoyer des requêtes HTTP rest
      • SMTP hook pour envoyer des e-mail avec la configuration SMTP paramétrée dans Administration > SMTP
    • Nom de l’intégration : Nom de l’intégration qui sera affiché dans les listes de choix d’intégration
    • Emplacement du déclencheur : Emplacement où il sera possible de retrouver l’intégration. Les emplacements disponibles sont :
      • Inventaire : correspond à la page Inventaire du module Vulnérabilités.
      • Détails d’un serveur - Détection : correspond à la page d’un serveur sur l’onglet « Vulnérabilités ».
      • Détails d’un serveur - Correction : correspond à la page d’un serveur sur l’onglet « Gestion des correctifs ».
      • Détails d’une vulnérabilité : correspond à la page d’une vulnérabilité de l’Encyclopédie des vulnérabilités.
  5. Pour les intégrations HTTP

    • URL de la requête : URL vers laquelle seront envoyées les données.
    • En-têtes de la requête : En-têtes de la requête sous la forme d’un dictionnaire, exemple :

      {
          "Accept-Charset": "utf-8",
          "Accept-Encoding": "gzip",
          "Authorization": "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==",
          "Content-Type": "application/json",
          "User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/12.0"
      }
      
    • Corps de la requête : Corps de la requête contenant les données à envoyer. Compatible avec les Patrons.
    • Méthode HTTP de la requête : Choix de la méthode HTTP avec laquelle sera envoyée la requête.
    • Utiliser un certificat auto-signé pour la requête : Permet de se connecter à un serveur auto-signé. Attention : Se connecter à un serveur auto-signé expose à un risque qu’un tiers puisse intercepter le trafic vers le serveur via ce certificat.
    • Utiliser la configuration proxy pour la requête : Permet d’utiliser le proxy configuré dans Cyberwatch.
  6. Pour les intégrations SMTP

    • Adresse e-mail du destinataire.
    • Sujet de l’e-mail. Compatible avec les Patrons.
    • Contenu de l’e-mail : Le message contenant les données à envoyer. Compatible avec les Patrons.
  7. Sauvegarder

Si les champs ont correctement été renseignés, l’intégration apparaîtra dans la liste des intégrations.

Afin de configurer des intégrations en utilisant Teams, cliquez ici.

Patrons

Cyberwatch utilise le moteur de template Liquid pour formater le corps des requêtes HTTP et des e-mails. Sa documentation est disponible en anglais à l’adresse https://shopify.dev/docs/api/liquid.

Les variables Cyberwatch de données suivantes sont disponibles :

VariableDescriptionExemple
assetActif concerné, pour les contextes où il n’y en a qu’un seul. Attributs :
- name : nom de l’actif.
- description : description de l’actif.
- cve_announcements_count : nombre de vulnérabilités de l’actif.
- critical_cve_announcements_count : nombre de vulnérabilités prioritaire de l’actif.
- compliance_rules_count : nombre de règles de conformité de l’actif.
- compliance_rules_failed_count : nombre de règles de conformité échouées de l’actif.
- compliance_rules_succeed_count : nombre de règles de conformité réussies de l’actif.
- compliance_rules_anomalies_count : nombre de règles de conformité en anomalie de l’actif.
- security_issues_count : nombre de défauts de sécurité de l’actif.
{{ asset.name }}MY-PC.DOMAIN
assetsListe des actifs concernés. Les attributs sont les mêmes que asset.{{ assets | map: 'name' | join: ', ' }}example-1.local, example-2.local
cveCVE concernée, pour les contextes où il n’y en a qu’une seule. Attributs :
- code : référence de la CVE.
- description : description de la CVE.
- score : score CVSS de la CVE.
- epss : score EPSS de la CVE.
{{ cve.code }}CVE-2023-1234
cvesListe des CVE concernées. Les attributs sont les mêmes que cve.{{ cves | map: 'code' | join: ', ' }}CVE-2023-0001, CVE-2023-0002
technologyTechnologie concernée, pour les contextes où il n’y en a qu’une seule. Attributs :
- product : nom de produit de la technologie.
- target_title : titre de la technologie.
- target_version_string : version cible de la technologie.
- cve_announcements_count : nombre de vulnérabilités de la technologie.
- critical_cve_announcements_count : nombre de vulnérabilités prioritaires de la technologie.
{{ technology.product }}Google Chrome
technologiesTechnologies concernées. Les attributs sont les mêmes que technology.{{ technologies | map: 'product' | join: ', ' }}linux, linux-firmware
compliance_ruleRègle de conformité concernée, pour les contextes où il n’y en a qu’une seule. Attributs :
- name : nom de la règle de conformité.
- description : description de la règle de conformité.
-code : référence de la règle de conformité.
-rationale : objectif de la règle de conformité.
-audit : audit de la règle de conformité.
-remediation : remédiation de la règle de conformité.
-require_sudo : nécessité des droits administrateur de la règle de conformité.
-reference : référence dans le benchmark de la règle de conformité.
{{ compliance_rule.name }}Ensure rsyslog service is enabled
compliance_rulesRègles de conformité concernées. Les attributs sont les mêmes que compliance_rule.{{ compliance_rules | map: 'code' | join: ', ' }}CIS-AWS-1.4, CIS-AWS-1.20
security_issueDéfaut de sécurité concerné, pour les contextes où il n’y en a qu’un seul. Attributs :
- sid : référence du défaut de sécurité.
- title : nom du défaut de sécurité.
- description : description du défaut de sécurité.
{{ security_issue.title }}TAA - TSX Asynchronous Abort
security_issuesDéfauts de sécurité concernés. Les attributs sont les mêmes que security_issue.{{ security_issues | map: 'sid' | join: ', ' }}WSTG-INPV-17, WSTG-ATHN-10
hostActif découvert concerné, pour les contextes où il n’y en a qu’un seul. Attributs :
- hostname : nom de l’hôte de l’actif découvert.
{{ host.hostname }}bar.example.com
hostsActifs découverts concernés. Les attributs sont les mêmes que host.{{ hosts | map: 'hostname' | join: ', ' }}bar.example.com, foo.example.com

En plus des filtres par défaut, le filtre json permet de formater une donnée en JSON. Il est par conséquent possible d’envoyer une liste de CVE à une API avec le corps : { "cves": {{ cves | json }} }. La liste des CVE apparaitra alors comme un tableau JSON, par exemple { "cves": [{ "code": "CVE-2023-0001" }, { "code": "CVE-2023-0002" }] }.

Les variables Cyberwatch d’alerte suivantes sont disponibles :

VariableDescription
alert_nameNom de l’alerte ayant déclenché l’intégration
manage_linkLien vers la page d’édition de l’alerte
node_nameNom de l’instance sur laquelle l’alerte a été déclenchée
node_urlLien vers l’instance sur laquelle l’alerte a été déclenchée

Édition d’une Intégration

  1. Cliquer sur Administration
  2. Cliquer sur Intégrations
  3. Cliquer sur le bouton d’édition (icône de crayon) correspondant à l’intégration à éditer
  4. Modifier les champs souhaités dans le formulaire. Les champs sont complétés avec les valeurs de l’intégration éditée
  5. Sauvegarder

Suppression d’une Intégration

  1. Cliquer sur Administration
  2. Cliquer sur Intégrations
  3. Cliquer sur le bouton de suppression (icône de corbeille) correspondant à l’intégration à supprimer
  4. Valider en cliquant sur le bouton « OK » de l’alerte de confirmation

Tester une intégration

  1. Cliquer sur Administration
  2. Cliquer sur Intégrations
  3. Cliquer sur le bouton de test (icône de flèche) correspondant à l’intégration à tester
  4. Vérifier qu’une modale contenant l’état de la réponse apparaît, attestant de la connexion avec le serveur.

Utilisation d’une intégration

Les intégrations sont utilisables à différents emplacements selon le choix qui est fait dans le formulaire de création/édition :

Inventaire

  1. Cliquer sur Vulnérabilités
  2. Cliquer sur Inventaire
  3. Sélectionner les actifs à envoyer
  4. Cliquer sur le bouton Actions groupées
  5. Cliquer sur le nom de l’intégration dans le menu déroulant
  6. Vérifier l’état de la réponse dans la modale en haut à droite

Détails d’un serveur - Détection

  1. Cliquer sur Vulnérabilités
  2. Cliquer sur Inventaire
  3. Cliquer sur le nom de l’actif pour lequel envoyer les données
  4. Cliquer sur le bouton Détection
  5. Sélectionner les vulnérabilités à envoyer
  6. Cliquer sur la flèche à droite du bouton Ignorer et commenter
  7. Cliquer sur le nom de l’intégration dans le menu déroulant
  8. Vérifier l’état de la réponse dans la modale en haut à droite

Détails d’un serveur - Correction

  1. Cliquer sur Vulnérabilités
  2. Cliquer sur Inventaire
  3. Cliquer sur le nom de l’actif pour lequel envoyer les données
  4. Cliquer sur le bouton Correction
  5. Sélectionner les packages/vulnérabilités à envoyer
  6. Cliquer sur la flèche à droite du bouton Planifier les correctifs sélectionnés (ou sur le bouton Envoyer la sélection dans le cas d’un actif en mode « scan uniquement »)
  7. Cliquer sur le nom de l’intégration dans le menu déroulant
  8. Vérifier l’état de la réponse dans la modale en haut à droite

Détails d’une vulnérabilité

  1. Cliquer sur Vulnérabilités
  2. Cliquer sur Encyclopédie des vulnérabilités
  3. Cliquer sur une référence CVE dans l’encyclopédie pour se rendre dans la fiche de la CVE
  4. Sélectionner les actifs à envoyer
  5. Cliquer sur la flèche à droite du bouton Ignorer et commenter
  6. Cliquer sur le nom de l’intégration dans le menu déroulant
  7. Vérifier l’état de la réponse dans la modale en haut à droite

Détails d’une règle de conformité

  1. Cliquer sur Règles de conformité
  2. Cliquer sur une référence de règle de conformité pour se rendre dans la fiche de la règle de conformité
  3. Sélectionner les actifs à envoyer
  4. Cliquer sur la flèche à droite du bouton Contrôler les actifs
  5. Cliquer sur le nom de l’intégration dans le menu déroulant
  6. Vérifier l’état de la réponse dans la modale en haut à droite

Détails d’un défaut de sécurité

  1. Cliquer sur Défauts de sécurité
  2. Cliquer sur une référence de défaut de sécurité pour se rendre dans la fiche du défaut de sécurité
  3. Sélectionner les actifs à envoyer
  4. Cliquer sur la flèche à droite du bouton Ignorer
  5. Cliquer sur le nom de l’intégration dans le menu déroulant
  6. Vérifier l’état de la réponse dans la modale en haut à droite

Retour en haut