Compartilhar via


Criar padrões e recomendações de segurança personalizados no Microsoft Defender para Nuvem

Recomendações de segurança no Microsoft Defender para Nuvem ajudam a melhorar e proteger sua postura de segurança. As recomendações são baseadas em avaliações em relação aospadrões de segurança definidos para assinaturas do Azure, contas da AWS e projetos do GCP que têm o Defender para Nuvem habilitado.

Este artigo descreve como:

  • Crie recomendações personalizadas para todas as nuvens (Azure, AWS e GCP) com uma consulta KQL.
  • Atribua recomendações personalizadas a um padrão de segurança personalizado.

Antes de começar

  • Você precisa de permissões de Proprietário na assinatura para criar um novo padrão de segurança.
  • Você precisa de permissões de administrador de segurança para criar recomendações personalizadas.
  • Para criar recomendações personalizadas com base no KQL, você deve ter o plano do GPSN do Defender habilitado. Todos os clientes podem criar recomendações personalizadas com base no Azure Policy.
  • Examine o suporte em nuvens do Azure para recomendações personalizadas.

É recomendável assistir a este episódio do Defender para Nuvem no campo para saber mais sobre o recurso e investigar a criação de consultas KQL.

Criar uma recomendação personalizada

Crie recomendações personalizadas, incluindo etapas para correção, gravidade e os padrões aos quais a recomendação deve ser atribuída. Adicione lógica de recomendação com KQL. Você pode usar um editor de consultas simples com consulta interna com modelos que podem ser ajustados conforme necessário ou você pode escrever sua consulta KQL do zero.

  1. Nas >configurações do Ambiente do portal do Defender para Nuvem, selecione o escopo relevante.

  2. Selecione políticas de segurança>+ Criar>Recomendação personalizada.

  3. Em Detalhes de recomendação, preencha os dados da recomendação (por exemplo, nome, gravidade) e selecione os padrões que você deseja aplicar essa recomendação.

    Captura de tela mostrando onde preencher os dados descrevendo a recomendação.

  4. Selecione Avançar.

  5. Em Consulta de recomendação, escreva uma consulta KQL ou selecione Abrir editor de consultas para estruturar sua consulta. Se você quiser usar o editor de consultas, siga as instruções abaixo.

  6. Depois que a consulta estiver pronta, selecione Próximo.

  7. Em Standards, selecione os padrões personalizados aos quais você deseja adicionar a recomendação personalizada.

  8. e, em Examinar e criar, examine os detalhes das recomendações.

    Captura de tela mostrando onde rever os dados a recomendação.

Use o editor de consulta

É recomendável usar o editor de consultas para criar uma consulta de recomendação.

  • O uso do editor ajuda você a criar e testar sua consulta antes de começar a usá-la.
  • Selecione Como para obter ajuda na estruturação da consulta e instruções e links adicionais.
  • O editor contém exemplos de consultas de recomendações internas, que você pode usar para ajudar a criar sua própria consulta. Os dados aparecem na mesma estrutura em que aparecem na API.
  1. no editor de consultas, selecione Nova consulta para criar uma consulta

  2. Use o modelo de consulta de exemplo com suas instruções ou selecione um exemplo de consulta de recomendação interna para começar.

    Captura de tela mostrando onde usar o editor de consultas.

  3. Selecione Executar consulta para testar a consulta que você criou.

  4. Quando a consulta estiver pronta, corte-a e cole-a do editor no painel Consulta de recomendações.

Usar recomendações personalizadas em escala

Criar recomendações personalizadas por meio da interface do usuário do portal do Azure é melhor para a maioria dos usuários. A interface fornece um editor de KQL (Linguagem de Consulta Kusto) conveniente e ferramentas de validação internas. No entanto, automatizar a criação de recomendações com uma abordagem programática pode ser útil. Esse método é especialmente útil quando você precisa implantar recomendações em muitos ambientes ou assinaturas.

Automatizar por meio da API

Se você pré-validou consultas KQL e deseja automatizar a criação de recomendações personalizadas, pode usar a interface de programação de aplicativo (API) do Azure Defender para Nuvem. Esse método permite implantar recomendações rapidamente, garantindo que elas sejam consistentes e escalonáveis em seus ambientes de nuvem.

  • Vantagens: você pode automatizar e dimensionar a implantação de recomendações personalizadas.
  • Quando usar: esse método é ideal para implementações em larga escala em que você precisa aplicar recomendações consistentemente em vários ambientes.

Para obter mais informações sobre como usar a API para gerenciar recomendações personalizadas, confira a documentação da API.

Criar um padrão personalizado

Recomendações personalizadas podem ser atribuídas a um ou mais padrões personalizados.

  1. Entre no portal do Azure.

  2. Navegue até as configurações do Microsoft Defender para Nuvem>Configurações de ambiente.

  3. Selecione o escopo relevante.

  4. Selecione Políticas de segurança>+ Criar>Standard.

  5. Em Recomendações, selecione as recomendações que você deseja adicionar ao padrão personalizado. Para assinaturas do Azure, também é possível ver a origem.

    Captura de tela que mostra a lista de todas as recomendações disponíveis para selecionar para o padrão personalizado.

  6. Selecione Criar.

Criar e aprimorar recomendações personalizadas com o Azure Policy (herdado)

Para assinaturas do Azure, você pode criar recomendações e padrões personalizados e aprimorá-los usando o Azure Policy. Este é um recurso herdado e é recomendável usar o novo recurso de recomendações personalizadas.

Criar uma recomendação/padrão personalizado (herdado)

Você pode criar recomendações e padrões personalizados no Defender para nuvem criando definições de política e iniciativas no Azure Policy e integrando-os no Defender para Nuvem.

Veja como fazer isso:

  1. Crie uma ou mais definições de política no portal do Azure Policyou programaticamente.
  2. Crie uma iniciativa de política que contenha as definições de política personalizadas.

Integrar a iniciativa como um padrão personalizado (herdado)

Atribuições de política são usadas pelo Azure Policy para atribuir recursos do Azure a uma política ou iniciativa.

Para integrar uma iniciativa a um padrão de segurança personalizado no Defender para você, você precisa incluir "ASC":"true" no corpo da solicitação, conforme mostrado aqui. O campo ASC integra a iniciativa para Microsoft Defender para Nuvem.

Aqui está um exemplo de como fazer isso.

Exemplo para integrar uma iniciativa personalizada

  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/<Subscription ID>/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
          "policyDefinitionReferenceId": "Limit_Skus",
          "parameters": {
            "listOfAllowedSKUs": {
              "value": [
                "Standard_GRS",
                "Standard_LRS"
              ]
            }
          }
        },
        {
          "policyDefinitionId": "/subscriptions/<Subscription ID>/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
          "policyDefinitionReferenceId": "Resource_Naming",
          "parameters": {
            "prefix": {
              "value": "[parameters('namePrefix')]"
            },
            "suffix": {
              "value": "-LC"
            }
          }
        }
      ]
    }
  }

Exemplo para remover uma atribuição

Este exemplo mostra como remover uma atribuição:

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

Aprimorar recomendações personalizadas (herdado)

As recomendações internas fornecidas com o Microsoft Defender para Nuvem incluem detalhes como níveis de severidade e instruções de correção. Se você quiser adicionar esse tipo de informação às recomendações personalizadas do Azure, use a API REST.

Os dois tipos de informações que você pode adicionar são:

  • RemediationDescription – cadeia de caracteres
  • Severidade – enumeração [baixa, média, alta]

Os metadados devem ser adicionados à definição de política para uma política que faz parte da iniciativa personalizada. Ela deve estar na propriedade "securityCenter", conforme mostrado:

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

Este é outro exemplo de política personalizada, incluindo a propriedade 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')]"
      }
    }
  }
}
}
}

Para obter outro exemplo de como usar a propriedade securityCenter, confira esta seção da documentação da API REST.

Use os seguintes links para saber mais sobre as consultas Kusto: