Connecteur Qualys Vulnerability Management (avec Azure Functions) pour Microsoft Sentinel

Le connecteur de données Qualys Vulnerability Management (VM) permet d’ingérer des données de détection d’hôte de vulnérabilité dans Microsoft Sentinel via l’API Qualys. Le connecteur offre une visibilité sur les données de détection d’hôte à partir d’analyses de vulnérabilité. Ce connecteur offre à Microsoft Sentinel la possibilité d’afficher des tableaux de bord, de créer des alertes personnalisées et d’améliorer l’investigation

Ce contenu est généré automatiquement. Pour toute modification, contactez le fournisseur de la solution.

Attributs du connecteur

Attribut du connecteur Description
Paramètres d’application apiUsername
apiPassword
workspaceID
workspaceKey
URI
filterParameters
timeInterval
logAnalyticsUri (facultatif)
Code d’application de fonction Azure https://aka.ms/sentinel-QualysVM-functioncodeV2
Table(s) Log Analytics QualysHostDetectionV2_CL
QualysHostDetection_CL
Support des Règles de collecte de données Non prise en charge pour le moment
Pris en charge par Microsoft Corporation

Exemples de requête

10 principales vulnérabilités Qualys V2 détectées

QualysHostDetectionV2_CL

| extend Vulnerability = tostring(QID_s)

| summarize count() by Vulnerability

| top 10 by count_

10 principales vulnérabilités détectées

QualysHostDetection_CL

| mv-expand todynamic(Detections_s)

| extend Vulnerability = tostring(Detections_s.Results)

| summarize count() by Vulnerability

| top 10 by count_

Prérequis

Pour intégrer Qualys Vulnerability Management (avec Azure Functions), assurez-vous de disposer des éléments suivants :

Instructions d’installation du fournisseur

Notes

Ce connecteur utilise Azure Functions pour se connecter à Qualys VM et ainsi extraire les journaux dans Microsoft Sentinel. Il peut en résulter des coûts supplémentaires d’ingestion des données. Si vous souhaitez en savoir plus, veuillez consulter la page des tarifs d’Azure Functions.

(Étape facultative) Stockez en toute sécurité les clés ou les jetons d’autorisation de l’espace de travail et de l’API dans Azure Key Vault. Azure Key Vault fournit un mécanisme sécurisé pour stocker et récupérer des valeurs de clés. Suivez ces instructions pour utiliser Azure Key Vault avec une application Azure Function.

ÉTAPE 1 - Étapes de configuration pour l’API Qualys VM

  1. Connectez-vous à la console Qualys Vulnerability Management avec un compte administrateur, sélectionnez l’onglet Utilisateurs, puis le sous-onglet Utilisateurs.
  2. Cliquez sur le menu déroulant Nouveau, puis sélectionnez Utilisateurs.
  3. Créez un nom d’utilisateur et un mot de passe pour le compte d’API.
  4. Dans l’onglet Rôles d'utilisateur, assurez-vous que le rôle de compte est défini sur Manager et que l’accès à la GUI et à l’API est autorisé
  5. Déconnectez-vous du compte administrateur et connectez-vous à la console avec les nouvelles informations d’identification de l’API pour validation, puis déconnectez-vous du compte d’API.
  6. Reconnectez-vous à la console à l’aide d’un compte administrateur et modifiez les rôles d’utilisateur de comptes d’API, en supprimant l’accès à GUI.
  7. Enregistrez toutes les modifications.

ÉTAPE 2 - Choisissez UNE des deux options de déploiement suivantes pour déployer le connecteur et la fonction Azure associée

IMPORTANT : Avant de déployer le connecteur de données Qualys VM, disposez de l’ID d’espace de travail et de la clé primaire de l’espace de travail (qui peuvent être copiés à partir de ce qui suit), ainsi que de la ou des clés d’autorisation d’API Qualys VM, déjà disponibles.

Notes

Ce connecteur a été mis à jour, si vous avez précédemment déployé une version antérieure et que vous voulez effectuer une mise à jour, supprimez la fonction Azure Qualys VM existante avant de redéployer cette version. Utilisez le classeur et les détections Qualys V2.

Option 1 – Modèle Azure Resource Manager (ARM)

Utilisez cette méthode pour le déploiement automatisé du connecteur de données Qualys VM à l’aide d’un modèle ARM.

  1. Cliquez sur le bouton Déployer sur Azure ci-dessous.

    Déployer sur Azure Déployer sur Azure Gov

  2. Sélectionnez votre abonnement, votre groupe de ressources, puis votre emplacement préférés.

  3. Entrez l’ID d’espace de travail, la Clé d’espace de travail, le Nom d’utilisateur de l’API, le Mot de passe de l’API, mettez à jour l’URI et tous les Paramètres de filtre d’URI supplémentaires (chaque filtre doit être séparé par un symbole « & », sans espace).

  • Entrez l’URI qui correspond à votre région. La liste complète des URL du serveur d’API se trouve ici : il n’est pas nécessaire d’ajouter un suffixe de temps à l’URI. L’application de fonction ajoute dynamiquement la valeur d’heure à l’URI dans le format approprié.
  • L’Intervalle de temps par défaut est défini pour extraire les cinq (5) dernières minutes de données. Si l’intervalle de temps doit être modifié, il est recommandé de modifier le déclencheur du minuteur d’application de fonction en conséquence (dans le fichier function.json, post-déploiement) pour éviter le chevauchement de l’ingestion des données.
  • Remarque : Si vous utilisez des secrets Azure Key Vault pour l’une des valeurs ci-dessus, utilisez le schéma @Microsoft.KeyVault(SecretUri={Security Identifier}) à la place des valeurs de chaîne. Pour plus d’informations, reportez-vous à la documentation relative aux références de Key Vault. 4. Cochez la case J’accepte les conditions générales mentionnées ci-dessus. 5. Cliquez sur Acheter pour effectuer le déploiement.

Option 2 – Déploiement manuel d’Azure Functions

Suivez les instructions pas à pas ci-dessous pour déployer manuellement le connecteur Qualys VM avec Azure Functions.

1. Créer une application de fonction

  1. Dans le portail Azure, accédez à Application de fonction, puis sélectionnez + Ajouter.
  2. Sous l’onglet Informations de base, vérifiez que la pile d’exécution est définie sur PowerShell Core.
  3. Sous l’onglet Hébergement, vérifiez que le type de plan Consommation (serverless) est sélectionné.
  4. Apportez d’autres modifications de configuration si nécessaire, puis cliquez sur Créer.

2. Importer le code Function App

  1. Dans l’application de fonction nouvellement créée, sélectionnez Fonctions dans le volet gauche, puis cliquez sur Nouvelle fonction.
  2. Sélectionnez Déclencheur de minuteur.
  3. Entrez un Nom de fonction unique et laissez la planification cron par défaut sur toutes les 5 minutes, puis cliquez sur Créer.
  4. Cliquez sur Code + Test dans le volet gauche.
  5. Copiez le Code de l’application de fonction et collez-le dans l’éditeur d’application de fonction run.ps1.
  6. Cliquez sur Enregistrer.

3. Configurer l’application de fonction

  1. Dans l’application de fonction, sélectionnez le nom de l’application de fonction, puis sélectionnez Configuration.
  2. Sous l’onglet Paramètres d’application, sélectionnez + Nouveau paramètre d’application.
  3. Ajoutez chacun des huit (8) paramètres d’application suivants individuellement, avec leurs valeurs de chaîne respectives (en respectant la casse) : apiUsername apiPassword workspaceID workspaceKey uri filterParameters timeInterval logAnalyticsUri (facultatif)
  • Entrez l’URI qui correspond à votre région. La liste complète des URL du serveur d’API est disponible ici. La valeur uri doit suivre le schéma suivant : https://<API Server>/api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after= -- Il n’est pas nécessaire d’ajouter un suffixe d’heure à l’URI ; l’application de fonction ajoute dynamiquement la valeur d’heure à l’URI dans le format approprié.
  • Ajoutez tous les paramètres de filtre supplémentaires, pour la variable filterParameters, qui doivent être ajoutés à l’URI. Chaque paramètre doit être délimité par un symbole « & » et ne doit pas inclure d’espaces.
  • Définissez timeInterval (en minutes) sur la valeur de 5 pour correspondre au déclencheur du minuteur de toutes les 5 minutes. Si l’intervalle de temps doit être modifié, il est recommandé de modifier le déclencheur du minuteur d’application de fonction en conséquence pour éviter le chevauchement de l’ingestion des données.
  • Remarque : Si vous utilisez des secrets Azure Key Vault, utilisez le schéma @Microsoft.KeyVault(SecretUri={Security Identifier}) à la place des valeurs de chaîne. Pour plus d’informations, reportez-vous à la documentation relative aux références de Key Vault.
  • Utilisez logAnalyticsUri pour remplacer le point de terminaison de l’API Log Analytics pour le cloud dédié. Par exemple, pour le cloud public, laissez la valeur vide. Pour l’environnement cloud Azure GovUS, spécifiez la valeur au format suivant : https://<CustomerId>.ods.opinsights.azure.us. 4. Une fois tous les paramètres d’application entrés, cliquez sur Enregistrer.

4. Configurez host.json.

En raison de la quantité potentiellement importante des données de détection de l’hôte Qualys ingérée, le temps d’exécution peut dépasser la valeur de délai d’expiration d’application de fonction par défaut de cinq (5) minutes. Augmentez la durée du délai d’expiration par défaut à un maximum de dix (10) minutes, sous le plan de consommation, afin de laisser plus de temps à l’exécution de l’application de fonction.

  1. Dans l’application de fonction, sélectionnez le nom de l’application de fonction, puis le volet Éditeur App Service.
  2. Cliquez sur Go pour ouvrir l’éditeur, puis sélectionnez le fichier host.json sous le répertoire wwwroot.
  3. Ajoutez la ligne "functionTimeout": "00:10:00", au-dessus de la ligne managedDependancy
  4. Vérifiez que ENREGISTRÉ apparaît en haut à droite de l’éditeur, puis quittez l’éditeur.

REMARQUE : Si une durée de délai d’expiration plus longue est requise, envisagez une mise à niveau vers un Plan App service

Étapes suivantes

Pour plus d’informations, accédez à la solution associée dans la Place de marché Azure.