Creare standard di sicurezza personalizzati e raccomandazioni in Microsoft Defender per il cloud

Le raccomandazioni sulla sicurezza in Microsoft Defender per il cloud consentono di migliorare e rafforzare il comportamento di sicurezza. Consigli si basano sulle valutazioni rispetto agli standard di sicurezza definiti per le sottoscrizioni di Azure, gli account AWS e i progetti GCP che hanno Defender per il cloud abilitato.

In questo articolo viene descritto come:

  • Creare raccomandazioni personalizzate per tutti i cloud (Azure, AWS e GCP) con una query KQL.
  • Assegnare raccomandazioni personalizzate a uno standard di sicurezza personalizzato.

Prima di iniziare

  • Per creare un nuovo standard di sicurezza, sono necessarie le autorizzazioni di proprietario per la sottoscrizione.
  • Per creare raccomandazioni personalizzate, sono necessarie autorizzazioni di sicurezza Amministrazione.
  • Per creare raccomandazioni personalizzate basate su KQL, è necessario che il piano CSPM di Defender sia abilitato. Tutti i clienti possono creare raccomandazioni personalizzate basate su Criteri di Azure.
  • Esaminare il supporto nei cloud di Azure per consigli personalizzati.

È consigliabile guardare questo episodio di Defender per il cloud nel campo per altre informazioni sulla funzionalità e approfondire la creazione di query KQL.

Creare una raccomandazione personalizzata

Creare raccomandazioni personalizzate, inclusi i passaggi per la correzione, la gravità e gli standard a cui deve essere assegnata la raccomandazione. Si aggiunge la logica di raccomandazione con KQL. È possibile usare un semplice editor di query con modelli di query predefiniti che è possibile modificare in base alle esigenze oppure scrivere la query KQL da zero.

  1. Nelle impostazioni dell'ambiente del portale >di Defender per il cloud selezionare l'ambito pertinente.

  2. Selezionare Criteri> di sicurezza+ Crea>raccomandazione personalizzata.

  3. In Dettagli raccomandazione immettere i dettagli della raccomandazione (ad esempio: nome, gravità) e selezionare gli standard a cui si vuole applicare la raccomandazione.

    Screenshot che mostra dove compilare i dettagli della descrizione della raccomandazione.

  4. Selezionare Avanti.

  5. In Query di raccomandazione scrivere una query KQL o selezionare Apri editor di query per strutturare la query. Se si vuole usare l'editor di query, seguire le istruzioni riportate di seguito.

  6. Dopo aver pronto la query, selezionare Avanti.

  7. In Standard selezionare gli standard personalizzati a cui si vuole aggiungere la raccomandazione personalizzata.

  8. e in Rivedi e crea, esaminare i dettagli delle raccomandazioni.

    Screenshot che mostra dove esaminare i dettagli della raccomandazione.

Usare l'editor di query

È consigliabile usare l'editor di query per creare una query di raccomandazione.

  • L'uso dell'editor consente di compilare e testare la query prima di iniziare a usarla.
  • Selezionare How to get help on structing the query (Come ottenere assistenza sulla strutturazione della query) e istruzioni e collegamenti aggiuntivi.
  • L'editor contiene esempi di query di raccomandazioni predefinite, che è possibile usare per creare una query personalizzata. I dati sono visualizzati nella stessa struttura dell'API.
  1. nell'editor di query selezionare Nuova query per creare una query

  2. Usare il modello di query di esempio con le istruzioni o selezionare una query di raccomandazione predefinita di esempio per iniziare.

    Screenshot che mostra come usare l'editor di query.

  3. Selezionare Esegui query per testare la query creata.

  4. Quando la query è pronta, tagliarla e incollarla dall'editor nel riquadro di query Consigli.

Creare uno standard personalizzato

È possibile assegnare raccomandazioni personalizzate a uno o più standard personalizzati.

  1. Accedere al portale di Azure.

  2. Passare alle impostazioni di Microsoft Defender per il cloud> Environment.

  3. Selezionare l'ambito pertinente.

  4. Selezionare Criteri> di sicurezza+ Crea>standard.

  5. In Consigli selezionare le raccomandazioni da aggiungere allo standard personalizzato. Per le sottoscrizioni di Azure, è anche possibile visualizzare l'origine.

    Screenshot che mostra l'elenco di tutte le raccomandazioni disponibili per la selezione per lo standard personalizzato.

  6. Seleziona Crea.

Creare e migliorare le raccomandazioni personalizzate con Criteri di Azure (legacy)

Per le sottoscrizioni di Azure, è possibile creare raccomandazioni e standard personalizzati e migliorarli usando Criteri di Azure. Si tratta di una funzionalità legacy e si consiglia di usare la nuova funzionalità di raccomandazioni personalizzate.

Creare una raccomandazione/standard personalizzata (legacy)

È possibile creare raccomandazioni e standard personalizzati in Defender per il cloud creando definizioni e iniziative di criteri in Criteri di Azure e caricandoli in Defender per il cloud.

Di seguito viene indicato come procedere:

  1. Creare una o più definizioni di criteri nel portale di Criteri di Azure o a livello di codice.
  2. Creare un'iniziativa di criteri contenente le definizioni di criteri personalizzate.

Eseguire l'onboarding dell'iniziativa come standard personalizzato (legacy)

Le assegnazioni di criteri vengono usate da Criteri di Azure per assegnare risorse di Azure a un criterio o a un'iniziativa.

Per eseguire l'onboarding di un'iniziativa in uno standard di sicurezza personalizzato in Defender, è necessario includere "ASC":"true" nel corpo della richiesta, come illustrato di seguito. Il ASC campo esegue l'onboarding dell'iniziativa per Microsoft Defender per il cloud.

Ecco un esempio di come eseguire questa operazione.

Esempio di onboarding di un'iniziativa personalizzata

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

Esempio per rimuovere un'assegnazione

Questo esempio illustra come rimuovere un'assegnazione:

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

::: zone-end

Migliorare le raccomandazioni personalizzate (legacy)

Le raccomandazioni predefinite fornite con Microsoft Defender per il cloud includono dettagli come i livelli di gravità e le istruzioni di correzione. Se si vuole aggiungere questo tipo di informazioni alle raccomandazioni personalizzate per Azure, usare l'API REST.

I due tipi di informazioni che è possibile aggiungere sono:

  • RemediationDescription - Stringa
  • Severity - Enumerazione [Low, Medium, High]

Per i criteri associati a un'iniziativa personalizzata è necessario aggiungere anche i metadati, Deve trovarsi nella proprietà 'securityCenter', come illustrato di seguito:

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

Ecco un altro esempio di criteri personalizzati, tra cui la proprietà 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')]"
      }
    }
  }
}
}
}

Per un altro esempio per l'uso della proprietà securityCenter, vedere questa sezione della documentazione dell'API REST.

Per altre informazioni sulle query Kusto, è possibile usare i collegamenti seguenti: