Erstellen von benutzerdefinierten Sicherheitsstandards und Empfehlungen in Microsoft Defender for Cloud

Sicherheitsempfehlungen in Microsoft Defender for Cloud helfen Ihnen, Ihren Sicherheitsstatus zu verbessern und zu härten. Empfehlungen basieren auf Bewertungen von Sicherheitsstandards, die für Azure-Abonnements, AWS-Konten und GCP-Projekte definiert sind, die Defender for Cloud aktiviert haben.

Dieser Artikel beschreibt, wie Sie:

  • Erstellen Sie benutzerdefinierte Empfehlungen für alle Clouds (Azure, AWS und GCP) mit einer KQL-Abfrage.
  • Weisen Sie benutzerdefinierte Empfehlungen einem benutzerdefinierten Sicherheitsstandard zu.

Vorbereitung

  • Sie benötigen Berechtigungen als Besitzer für das Abonnement, um einen neuen Sicherheitsstandard zu erstellen.
  • Sie benötigen Berechtigungen als Sicherheitsadministrator, um benutzerdefinierte Empfehlungen zu erstellen.
  • Um benutzerdefinierte Empfehlungen auf Basis von KQL zu erstellen, müssen Sie den Defender CSPM-Plan aktiviert haben. Alle Kunden können benutzerdefinierte Empfehlungen basierend auf Azure Policy erstellen.
  • Überprüfen Sie den Support in Azure-Clouds auf benutzerdefinierte Empfehlungen.

Wir empfehlen, diese Episode von Defender for Cloud in der Praxis anzuschauen, um mehr über das Feature zu erfahren und sich mit der Erstellung von KQL-Abfragen vertraut zu machen.

Erstellen einer benutzerdefinierten Empfehlung

Erstellen Sie benutzerdefinierte Empfehlungen, einschließlich der Schritte zur Wartung, zum Schweregrad und zu den Standards, denen die Empfehlung zugewiesen werden soll. Sie fügen Empfehlungslogik mit KQL hinzu. Sie können einen einfachen Abfrageeditor mit integrierter Abfragevorlage verwenden, die Sie nach Bedarf optimieren können, oder Sie können Ihre KQL-Abfrage von Grund auf neu schreiben.

  1. Wählen Sie im Defender for Cloud-Portal unter Umgebungseinstellungen den relevanten Bereich aus.

  2. Wählen Sie Sicherheitsrichtlinien>+ Erstellen>Benutzerdefinierte Empfehlung aus.

  3. Geben Sie in Empfehlungsdetails die Empfehlungsdetails ein (z. B. Name, Schweregrad), und wählen Sie die Standards aus, auf die Sie die Empfehlung anwenden möchten.

    Screenshot, der zeigt, wo die Beschreibungsdetails der Empfehlung ausgefüllt werden.

  4. Wählen Sie Weiter aus.

  5. Schreiben Sie in Empfehlungsabfrage eine KQL-Abfrage, oder wählen Sie Abfrageeditor öffnen aus, um Ihre Abfrage zu strukturieren. Wenn Sie den Abfrageeditor verwenden möchten, folgen Sie den nachstehenden Anweisungen.

  6. Nachdem die Abfrage bereit ist, wählen Sie Weiter aus.

  7. Wählen Sie in Standards die benutzerdefinierten Standards aus, denen Sie die benutzerdefinierte Empfehlung hinzufügen möchten.

  8. und in überprüfen und erstellen überprüfen Sie die Empfehlungsdetails.

    Screenshot, der zeigt, wo die Details der Empfehlung überprüft werden.

Verwenden des Abfrage-Editors

Wir empfehlen die Verwendung des Abfrageeditors zum Erstellen einer Empfehlungsabfrage.

  • Mithilfe des Editors können Sie Ihre Abfrage erstellen und testen, bevor Sie diese verwenden.
  • Wählen Sie So geht‘s aus, um Hilfe zur Strukturierung der Abfrage und zusätzliche Anweisungen und Links zu erhalten.
  • Der Editor enthält Beispiele für integrierte Empfehlungsabfragen, mit denen Sie Ihre eigene Abfrage erstellen können. Die Daten werden mit derselben Struktur wie in der API angezeigt.
  1. wählen Sie im Abfrage-Editor Neue Abfrage aus, um eine Abfrage zu erstellen

  2. Verwenden Sie die Beispielabfragevorlage mit ihren Anweisungen, oder wählen Sie eine integrierte Beispielempfehlungsabfrage aus, um zu beginnen.

    Screenshot, der die Verwendung des Abfrage-Editors zeigt.

  3. Wählen Sie Abfrage ausführen aus, um die von Ihnen erstellte Abfrage zu testen.

  4. Wenn die Abfrage bereit ist, schneiden Sie diese aus und fügen sie aus dem Editor in den Bereich Abfrage für Empfehlungen ein.

Erstellen eines benutzerdefinierten Standards

Benutzerdefinierte Empfehlungen können einem oder mehreren benutzerdefinierten Standards zugewiesen werden.

  1. Melden Sie sich beim Azure-Portal an.

  2. Navigieren Sie zu Microsoft Defender für Cloud>Umgebungseinstellungen.

  3. Wählen Sie den entsprechenden Gültigkeitsbereich aus.

  4. Wählen Sie Sicherheitsrichtlinien>+ Erstellen>Standard aus.

  5. Wählen Sie in Empfehlungen und anschließend die Empfehlungen aus, die Sie dem benutzerdefinierten Standard hinzufügen möchten. Bei Azure-Abonnements können Sie auch die Quelle anzeigen.

    Screenshot: Liste aller Empfehlungen, die für den benutzerdefinierten Standard ausgewählt werden können

  6. Klicken Sie auf Erstellen.

Erstellen und Verbessern von benutzerdefinierten Empfehlungen mit Azure Policy (Legacy)

Für Azure-Abonnements können Sie benutzerdefinierte Empfehlungen und Standards erstellen und diese mithilfe von Azure Policy verbessern. Dies ist ein Legacyfeature, und wir empfehlen die Verwendung des neuen Features für benutzerdefinierte Empfehlungen.

Erstellen benutzerdefinierter Empfehlungen/Standards (Legacy)

Sie können benutzerdefinierte Empfehlungen und Standards in Defender for Cloud erstellen, indem Sie Richtliniendefinitionen und Initiativen in Azure Policy erstellen und in Defender for Cloud integrieren.

Gehen Sie hierzu wie folgt vor:

  1. Erstellen Sie im Azure Policy-Portal oder programmgesteuert mindestens eine Richtliniendefinition.
  2. Erstellen Sie eine Richtlinieninitiative, die die benutzerdefinierten Richtliniendefinitionen enthält.

Onboarding der Initiative als benutzerdefinierter Standard (Legacy)

Richtlinienzuweisungen werden von Azure Policy verwendet, um Azure-Ressourcen einer Richtlinie oder Initiative zuzuweisen.

Um eine Initiative in Defender in einen benutzerdefinierten Sicherheitsstandard zu integrieren, müssen Sie wie hier gezeigt "ASC":"true" in den Anforderungstext einschließen. Mit dem Feld ASC wird das Onboarding der Initiative bei Microsoft Defender für Cloud durchgeführt.

Hier finden Sie ein Beispiel für die Vorgehensweise.

Beispiel für das Onboarding einer benutzerdefinierten Initiative

  PUT  
  PUT https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Authorization/policySetDefinitions/{policySetDefinitionName}?api-version=2021-06-01

  Request Body (JSON) 

  {
    "properties": {
      "displayName": "Cost Management",
      "description": "Policies to enforce low cost storage SKUs",
      "metadata": {
        "category": "Cost Management"
        "ASC":"true"
      },
      "parameters": {
        "namePrefix": {
          "type": "String",
          "defaultValue": "myPrefix",
          "metadata": {
            "displayName": "Prefix to enforce on resource names"
          }
        }
      },
      "policyDefinitions": [
        {
          "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
          "policyDefinitionReferenceId": "Limit_Skus",
          "parameters": {
            "listOfAllowedSKUs": {
              "value": [
                "Standard_GRS",
                "Standard_LRS"
              ]
            }
          }
        },
        {
          "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
          "policyDefinitionReferenceId": "Resource_Naming",
          "parameters": {
            "prefix": {
              "value": "[parameters('namePrefix')]"
            },
            "suffix": {
              "value": "-LC"
            }
          }
        }
      ]
    }
  }

Beispiel für das Entfernen einer Zuweisung

In diesem Beispiel wird gezeigt, wie Sie eine Zuweisung entfernt wird:

  DELETE   
  https://management.azure.com/{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}?api-version=2018-05-01 

::: zone-end

Verbessern benutzerdefinierter Empfehlungen (Legacy)

Die integrierten Empfehlungen, die mit Microsoft Defender für Cloud bereitgestellt werden, enthalten Details wie Schweregrade und Korrekturanweisungen. Wenn Sie benutzerdefinierten Empfehlungen für Azure diesen Informationstyp hinzufügen möchten, verwenden Sie die REST-API.

Folgende zwei Arten von Informationen können Sie hinzufügen:

  • RemediationDescription: Zeichenfolge
  • Severity: Enumeration [Niedrig, Mittel, Hoch]

Die Metadaten sollten der Richtliniendefinition für eine Richtlinie hinzugefügt werden, die Teil der benutzerdefinierten Initiative ist. Sie sollten in der Eigenschaft „securityCenter“ vorliegen, wie hier gezeigt:

 "metadata": {
  "securityCenter": {
    "RemediationDescription": "Custom description goes here",
    "Severity": "High"
    },

Hier finden Sie ein weiteres Beispiel für eine benutzerdefinierte Richtlinie mit der Eigenschaft „metadata/securityCenter“:

{
"properties": {
"displayName": "Security - ERvNet - AuditRGLock",
"policyType": "Custom",
"mode": "All",
"description": "Audit required resource groups lock",
"metadata": {
  "securityCenter": {
    "RemediationDescription": "Resource Group locks can be set via Azure Portal -> Resource Group -> Locks",
    "Severity": "High"
 }
},
"parameters": {
  "expressRouteLockLevel": {
    "type": "String",
    "metadata": {
      "displayName": "Lock level",
      "description": "Required lock level for ExpressRoute resource groups."
    },
    "allowedValues": [
      "CanNotDelete",
      "ReadOnly"
    ]
  }
},
"policyRule": {
  "if": {
    "field": "type",
    "equals": "Microsoft.Resources/subscriptions/resourceGroups"
  },
  "then": {
    "effect": "auditIfNotExists",
    "details": {
      "type": "Microsoft.Authorization/locks",
      "existenceCondition": {
        "field": "Microsoft.Authorization/locks/level",
        "equals": "[parameters('expressRouteLockLevel')]"
      }
    }
  }
}
}
}

Ein weiteres Beispiel für die Verwendung der securityCenter-Eigenschaft finden Sie in diesem Abschnitt der REST-API-Dokumentation.

Unter den folgenden Links erfahren Sie mehr über Kusto-Abfragen: