Qualys Vulnerability Management-Connector (über Azure Functions) für Microsoft Sentinel

Der Qualys Vulnerability Management (VM)-Datenconnector bietet die Möglichkeit, Hosterkennungsdaten zu Sicherheitsrisiken über die Qualys-API in Microsoft Sentinel zu erfassen. Der Connector bietet Einblick in Hosterkennungsdaten aus Sicherheitsrisikoscans. Dieser Connector bietet Microsoft Sentinel die Möglichkeit, Dashboards anzuzeigen, benutzerdefinierte Warnungen zu erstellen und die Untersuchung zu verbessern.

Connector-Attribute

Connectorattribut BESCHREIBUNG
Anwendungseinstellungen apiUsername
apiPassword
workspaceID
workspaceKey
uri
filterParameters
timeInterval
logAnalyticsUri (optional)
Azure-Funktions-App-Code https://aka.ms/sentinel-QualysVM-functioncodeV2
Log Analytics-Tabellen QualysHostDetectionV2_CL
QualysHostDetection_CL
Unterstützung für Datensammlungsregeln Derzeit nicht unterstützt
Unterstützt von Microsoft Corporation

Abfragebeispiele

Top 10 der erkannten Qualys V2-Sicherheitsrisiken

QualysHostDetectionV2_CL

| extend Vulnerability = tostring(QID_s)

| summarize count() by Vulnerability

| top 10 by count_

Top 10 der erkannten Sicherheitsrisiken

QualysHostDetection_CL

| mv-expand todynamic(Detections_s)

| extend Vulnerability = tostring(Detections_s.Results)

| summarize count() by Vulnerability

| top 10 by count_

Voraussetzungen

Stellen Sie für die Integration in Qualys Vulnerability Management (über Azure Functions) sicher, dass Sie über Folgendes verfügen:

Installationsanweisungen des Anbieters

Hinweis

Dieser Connector verbindet sich über Azure Functions mit der Qualys-VM, um deren Protokolle in Microsoft Sentinel zu pullen. Dies kann zusätzliche Datenerfassungskosten verursachen. Ausführliche Informationen finden Sie auf der Seite mit der Preisübersicht von Azure Functions.

Optionaler Schritt Speichern Sie Arbeitsbereichs- und API-Autorisierungsschlüssel oder -token sicher in Azure Key Vault. Azure Key Vault bietet einen sicheren Mechanismus zum Speichern und Abrufen von Schlüsselwerten. Befolgen Sie diese Anweisungen, um Azure Key Vault mit einer Azure-Funktions-App zu verwenden.

SCHRITT 1: Konfigurationsschritte für die Qualys-VM-API

  1. Melden Sie sich mit einem Administratorkonto an der Qualys Vulnerability Management-Konsole an, und wählen Sie die Registerkarte Users (Benutzer) und die Unterregisterkarte Users (Benutzer) aus.
  2. Klicken Sie auf das Dropdownmenü Neu, und wählen Sie dann Benutzer aus.
  3. Erstellen Sie einen Benutzernamen und ein Kennwort für das API-Konto.
  4. Stellen Sie auf der Registerkarte Benutzerrollen sicher, dass die Kontorolle auf Manager festgelegt ist und dass der Zugriff auf GUI und API zulässig ist.
  5. Melden Sie sich beim Administratorkonto ab, und melden Sie sich zur Überprüfung mit den neuen API-Anmeldeinformationen an der Konsole an. Melden Sie sich nach der Überprüfung beim API-Konto ab.
  6. Melden Sie sich wieder mit einem Administratorkonto an der Konsole an, und ändern Sie die Benutzerrollen der API-Konten, indem Sie den Zugriff auf die GUI (grafische Benutzeroberfläche) entfernen.
  7. Speichern Sie alle Änderungen.

SCHRITT 2: Wählen Sie EINE der folgenden beiden Bereitstellungsoptionen aus, um den Connector und die zugehörige Azure-Funktion bereitzustellen

WICHTIG: Für die Bereitstellung des Qualys-VM-Connectors müssen Sie die Arbeitsbereichs-ID und den Primärschlüssel des Arbeitsbereichs (können im Folgenden kopiert werden) sowie die Autorisierungsschlüssel der Qualys-VM-API bereithalten.

Hinweis

Dieser Connector wurde aktualisiert. Wenn Sie bisher eine Vorgängerversion bereitgestellt haben und die Version aktualisieren möchten, löschen Sie die vorhandene Qualys-VM-Azure-Funktion, bevor Sie diese Version erneut bereitstellen. Verwenden Sie die V2-Version des Qualys-Workbook (Erkennungen).

Option 1: Azure Resource Manager-Vorlage (ARM)

Verwenden Sie diese Methode für die automatisierte Bereitstellung des Qualys-VM-Connectors mithilfe einer ARM-Vorlage.

  1. Klicken Sie unten auf die Schaltfläche In Azure bereitstellen.

    Deploy To Azure

  2. Wählen Sie die bevorzugten Werte für Abonnement, Ressourcengruppe und Speicherort aus.

  3. Geben Sie die Arbeitsbereichs-ID, den Arbeitsbereichsschlüssel, den API-Benutzernamen, das API-Kennwort ein, aktualisieren Sie den URI und alle zusätzlichen URI-Filterparameter(jeder Filter sollte durch ein "&"-Symbol getrennt werden, keine Leerzeichen.)

  • Geben Sie den URI für Ihre Region ein. Die vollständige Liste der API-Server-URLs finden Sie hier -- Es ist nicht erforderlich, dem URI ein Zeitsuffix hinzuzufügen. Die Funktions-App fügt den Zeitwert dynamisch im richtigen Format an den URI an.
  • Das standardmäßige Zeitintervall ist so festgelegt, dass immer die Daten der letzten fünf (5) Minuten abgerufen werden. Wenn das Zeitintervall geändert werden muss, empfiehlt es sich, den Timertrigger der Funktions-App entsprechend zu ändern (in der Datei „function.json“ nach der Bereitstellung), um eine überlappende Datenerfassung zu verhindern.
  • Hinweis: Wenn Sie Azure Key Vault-Geheimnisse für einen der oben genannten Werte verwenden, verwenden Sie das @Microsoft.KeyVault(SecretUri={Security Identifier})-Schema anstelle der Zeichenfolgenwerte. Weitere Informationen finden Sie in der Referenzdokumentation zu Azure Key Vault. 4. Aktivieren Sie das Kontrollkästchen Ich stimme den oben genannten Geschäftsbedingungen zu. 5. Klicken Sie zum Bereitstellen auf Kaufen.

Option 2: Manuelle Bereitstellung von Azure Functions

Verwenden Sie die folgenden Schrittanleitungen, um den Qualys VM-Connector manuell mit Azure Functions bereitzustellen.

1. Erstellen einer Funktions-App

  1. Navigieren Sie im Azure-Portal zu Funktions-App, und wählen Sie + Hinzufügen aus.
  2. Stellen Sie auf der Registerkarte Grundlagen sicher, dass der Runtimestapel auf PowerShell Core festgelegt ist.
  3. Stellen Sie auf der Registerkarte Hosting sicher, dass der Plantyp Verbrauch (serverlos) ausgewählt ist.
  4. Nehmen Sie bei Bedarf weitere Konfigurationsänderungen vor, und klicken Sie dann auf Erstellen.

2. Importieren von Funktions-App-Code

  1. Wählen Sie in der neu erstellten Funktions-App im linken Bereich Funktionen aus, und klicken Sie auf + Neue Funktion.
  2. Wählen Sie Zeitgebertrigger.
  3. Geben Sie einen eindeutigen Namen für die Funktion ein, übernehmen Sie den standardmäßigen Cron-Zeitplan von alle 5 Minuten, und klicken Sie dann auf Erstellen.
  4. Klicken Sie im linken Bereich auf Programmieren und testen.
  5. Kopieren Sie den Funktions-App-Code, und fügen Sie ihn in den Funktions-App-Editor run.ps1 ein.
  6. Klicken Sie auf Speichern.

3. Konfigurieren der Funktions-App

  1. Wählen Sie im Bereich „Funktions-App“ den Namen der Funktions-App und dann Konfiguration aus.
  2. Wählen Sie auf der Registerkarte Anwendungseinstellungen die Option + Neue Anwendungseinstellung aus.
  3. Fügen Sie jede der folgenden acht (8) Anwendungseinstellungen einzeln mit ihren jeweiligen Zeichenfolgenwerten hinzu (Groß-/Kleinschreibung beachten): „apiUsername“, „apiPassword“, „workspaceID“, „workspaceKey“, „uri“, „filterParameters“, „timeInterval“, „logAnalyticsUri“ (optional)
  • Geben Sie den URI für Ihre Region ein. Die vollständige Liste der API-Server-URLs finden Sie hier. Der uri-Wert muss dem folgenden Schema folgen: https://<API Server>/api/2.0/fo/asset/host/vm/detection/?action=list&vm_processed_after= -- Es ist nicht erforderlich, dem URI ein Zeitsuffix hinzuzufügen. Die Funktions-App fügt den Zeitwert dynamisch im richtigen Format an den URI an.
  • Fügen Sie alle weitere Filterparameter für die Variable filterParameters hinzu, die an den URI angefügt werden müssen. Jeder Parameter sollte durch ein "&"-Symbol getrennt werden und darf keine Leerzeichen enthalten.
  • Legen Sie timeInterval (in Minuten) auf den Wert 5 fest, entsprechend dem Timertrigger von „Alle 5 Minuten“. Wenn das Zeitintervall geändert werden muss, empfiehlt es sich, den Timertrigger der Funktions-App entsprechend zu ändern, um eine überlappende Datenerfassung zu verhindern.
  • Hinweis: Wenn Sie Azure Key Vault-Geheimnisse verwenden, verwenden Sie das @Microsoft.KeyVault(SecretUri={Security Identifier})-Schema anstelle der Zeichenfolgenwerte. Weitere Informationen finden Sie in der Referenzdokumentation zu Azure Key Vault.
  • Verwenden Sie logAnalyticsUri, um den Log Analytics-API-Endpunkt für die dedizierte Cloud zu überschreiben. Lassen Sie beispielsweise den Wert für die öffentliche Cloud leer. Geben Sie für die Azure-Cloudumgebung „GovUS“ den Wert im folgenden Format an: https://<CustomerId>.ods.opinsights.azure.us. 4. Nachdem alle Anwendungseinstellungen eingegeben wurden, klicken Sie auf Speichern.

4. Konfigurieren der Datei „host.json“.

Aufgrund der potenziell großen Menge an erfassten Qualys-Hosterkennungsdaten kann dies dazu führen, dass die Ausführungszeit das Standardtimeout für Funktions-Apps von fünf (5) Minuten überschreitet. Erhöhen Sie das Standardtimeout unter dem Verbrauchstarif auf maximal zehn (10) Minuten, um mehr Zeit für die Ausführung der Funktions-App zuzulassen.

  1. Wählen Sie in der Funktions-App den Namen der Funktions-App und dann das Blatt App Service-Editor aus.
  2. Klicken Sie auf Los, um den Editor zu öffnen, und wählen Sie dann die Datei host.json unter dem Verzeichnis wwwroot aus.
  3. Fügen Sie die Zeile "functionTimeout": "00:10:00", über der Zeile managedDependancy hinzu.
  4. Stellen Sie sicher, dass in der rechten oberen Ecke des Editors GESPEICHERT angezeigt wird, und beenden Sie dann den Editor.

HINWEIS: Wenn eine noch längere Timeoutdauer erforderlich ist, sollten Sie ein Upgrade auf einen App Service-Plan in Betracht ziehen.

Nächste Schritte

Weitere Informationen finden Sie in der entsprechenden Lösung im Azure Marketplace.