Tworzenie niestandardowych standardów zabezpieczeń i zaleceń w Microsoft Defender dla Chmury

Zalecenia dotyczące zabezpieczeń w Microsoft Defender dla Chmury pomagają poprawić i wzmocnić poziom zabezpieczeń. Rekomendacje są oparte na ocenach standardów zabezpieczeń zdefiniowanych dla subskrypcji platformy Azure, kont platformy AWS i projektów GCP, które Defender dla Chmury włączone.

W tym artykule opisano sposób wykonywania następujących czynności:

  • Tworzenie niestandardowych zaleceń dla wszystkich chmur (Azure, AWS i GCP) przy użyciu zapytania KQL.
  • Przypisywanie niestandardowych zaleceń do niestandardowego standardu zabezpieczeń.

Przed rozpoczęciem

  • Aby utworzyć nowy standard zabezpieczeń, musisz mieć uprawnienia właściciela subskrypcji.
  • Do tworzenia niestandardowych zaleceń potrzebne są uprawnienia Administracja zabezpieczeń.
  • Aby utworzyć niestandardowe rekomendacje na podstawie języka KQL, musisz mieć włączony plan CSPM w usłudze Defender. Wszyscy klienci mogą tworzyć niestandardowe rekomendacje na podstawie usługi Azure Policy.
  • Zapoznaj się z pomocą techniczną w chmurach platformy Azure, aby uzyskać zalecenia niestandardowe.

Zalecamy oglądanie tego odcinka Defender dla Chmury w terenie, aby dowiedzieć się więcej o funkcji i zapoznać się z tworzeniem zapytań KQL.

Tworzenie rekomendacji niestandardowej

Utwórz zalecenia niestandardowe, w tym kroki korygowania, ważności i standardów, do których należy przypisać zalecenie. Dodasz logikę rekomendacji za pomocą języka KQL. Możesz użyć prostego edytora zapytań z wbudowanym szablonem zapytania, które można dostosować zgodnie z potrzebami, lub napisać zapytanie KQL od podstaw.

  1. W ustawieniach środowiska portalu >Defender dla Chmury wybierz odpowiedni zakres.

  2. Wybierz pozycję Zasady> zabezpieczeń+ Utwórz>rekomendację niestandardową.

  3. W obszarze Szczegóły rekomendacji wypełnij szczegóły rekomendacji (na przykład: nazwa, ważność) i wybierz standardy, do których chcesz zastosować zalecenie.

    Zrzut ekranu przedstawiający miejsce wypełniania szczegółów opisu zalecenia.

  4. Wybierz Dalej.

  5. W zapytaniu rekomendacji napisz zapytanie KQL lub wybierz pozycję Otwórz edytor zapytań, aby utworzyć strukturę zapytania. Jeśli chcesz użyć edytora zapytań, postępuj zgodnie z poniższymi instrukcjami.

  6. Gdy zapytanie będzie gotowe, wybierz pozycję Dalej.

  7. W obszarze Standardy wybierz standardy niestandardowe, do których chcesz dodać rekomendację niestandardową.

  8. i w obszarze Przeglądanie i tworzenie przejrzyj szczegóły zaleceń.

    Zrzut ekranu przedstawiający miejsce przeglądania szczegółów rekomendacji.

Korzystanie z edytora zapytań

Zalecamy użycie edytora zapytań w celu utworzenia zapytania rekomendacji.

  • Użycie edytora ułatwia kompilowanie i testowanie zapytania przed rozpoczęciem korzystania z niego.
  • Wybierz pozycję Jak uzyskać pomoc dotyczącą struktury zapytania oraz dodatkowych instrukcji i linków.
  • Edytor zawiera przykłady wbudowanych zapytań rekomendacji, których można użyć do tworzenia własnych zapytań. Dane są wyświetlane w tej samej strukturze co w interfejsie API.
  1. w edytorze zapytań wybierz pozycję Nowe zapytanie , aby utworzyć zapytanie

  2. Użyj przykładowego szablonu zapytania z instrukcjami lub wybierz przykładowe wbudowane zapytanie rekomendacji, aby rozpocząć pracę.

    Zrzut ekranu przedstawiający sposób używania edytora zapytań.

  3. Wybierz pozycję Uruchom zapytanie , aby przetestować utworzone zapytanie.

  4. Gdy zapytanie jest gotowe, wyciąć je i wkleić z edytora do okienka zapytania Rekomendacje.

Tworzenie niestandardowego standardu

Zalecenia niestandardowe można przypisać do co najmniej jednego standardu niestandardowego.

  1. Zaloguj się w witrynie Azure Portal.

  2. Przejdź do Microsoft Defender dla Chmury> Ustawienia środowiska.

  3. Wybierz odpowiedni zakres.

  4. Wybierz pozycję Zasady> zabezpieczeń+ Utwórz>standard.

  5. W Rekomendacje wybierz zalecenia, które chcesz dodać do niestandardowego standardu. W przypadku subskrypcji platformy Azure można również zobaczyć źródło.

    Zrzut ekranu przedstawiający listę wszystkich zaleceń, które są dostępne do wybrania dla standardu niestandardowego.

  6. Wybierz pozycję Utwórz.

Tworzenie i ulepszanie niestandardowych zaleceń za pomocą usługi Azure Policy (starsza wersja)

W przypadku subskrypcji platformy Azure można tworzyć niestandardowe rekomendacje i standardy oraz ulepszać je przy użyciu usługi Azure Policy. Jest to starsza funkcja i zalecamy użycie nowej funkcji rekomendacji niestandardowych.

Tworzenie niestandardowego zalecenia/standardu (starsza wersja)

Niestandardowe zalecenia i standardy można tworzyć w usłudze Defender dla chmury, tworząc definicje zasad i inicjatywy w usłudze Azure Policy oraz dołączając je w Defender dla Chmury.

Oto jak to zrobić:

  1. Utwórz co najmniej jedną definicję zasad w witrynie Azure Policy Portal lub programowo.
  2. Utwórz inicjatywę zasad zawierającą niestandardowe definicje zasad.

Dołączanie inicjatywy jako niestandardowego standardu (starsza wersja)

Przypisania zasad są używane przez usługę Azure Policy do przypisywania zasobów platformy Azure do zasad lub inicjatywy.

Aby dołączyć inicjatywę do niestandardowego standardu zabezpieczeń w usłudze Defender, należy uwzględnić "ASC":"true" w treści żądania, jak pokazano tutaj. Pole ASC dołącza inicjatywę do Microsoft Defender dla Chmury.

Oto przykład tego, jak to zrobić.

Przykład dołączania inicjatywy niestandardowej

  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"
            }
          }
        }
      ]
    }
  }

Przykład usuwania przypisania

W tym przykładzie pokazano, jak usunąć przypisanie:

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

::: zone-end

Ulepszanie niestandardowych zaleceń (starsza wersja)

Wbudowane zalecenia dostarczane z Microsoft Defender dla Chmury zawierają szczegółowe informacje, takie jak poziomy ważności i instrukcje korygowania. Jeśli chcesz dodać informacje tego typu do niestandardowych zaleceń dotyczących platformy Azure, użyj interfejsu API REST.

Dwa typy informacji, które można dodać, to:

  • RemediationDescription — ciąg
  • Ważność — wyliczenie [niskie, średnie, wysokie]

Metadane należy dodać do definicji zasad dla zasad będącej częścią inicjatywy niestandardowej. Powinna ona znajdować się we właściwości "securityCenter", jak pokazano poniżej:

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

Oto kolejny przykład zasad niestandardowych, w tym właściwości 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')]"
      }
    }
  }
}
}
}

Inny przykład użycia właściwości securityCenter można znaleźć w tej sekcji dokumentacji interfejsu API REST.

Skorzystaj z poniższych linków, aby dowiedzieć się więcej na temat zapytań Kusto: