Análise de trajetória de ataque e caça de risco aprimorada para contêineres
A análise de trajetória de ataque é um algoritmo baseado em gráficos que verifica o gráfico de segurança na nuvem. As verificações expõem caminhos exploráveis que os invasores podem usar para invadir seu ambiente e alcançar seus ativos de alto impacto. A análise do caminho de ataque expõe os caminhos de ataque e sugere recomendações sobre a melhor forma de corrigir problemas que interrompem o caminho de ataque e evitam uma violação bem-sucedida.
Explore e investigue caminhos de ataque classificando-os com base no nível de risco, nome, ambiente e fatores de risco, ponto de entrada, alvo, recursos afetados e recomendações ativas. Explore o gráfico de segurança na nuvem Informações sobre o recurso. Exemplos de tipos de Insight são:
- Pod exposto à internet
- Contentor privilegiado
- Pod usa rede host
- A imagem de contêiner é vulnerável à execução remota de código
Azure: Testando o caminho de ataque e o explorador de segurança usando uma imagem de contêiner vulnerável simulada
Se não houver entradas na lista de caminhos de ataque, você ainda poderá testar esse recurso usando uma imagem de contêiner fictícia. Use as seguintes etapas para configurar o teste:
Requisito: Uma instância do Azure Container Registry (ACR) no escopo testado.
Importe uma imagem fictícia vulnerável para o seu Registro de Contêiner do Azure:
Primeiro, puxe uma imagem base (por exemplo, alpina) para o ambiente local executando:
docker pull alpine
Marque a imagem com o seguinte rótulo e envie-a para o seu ACR. Substitua
<MYACR>
pelo nome do Registro de Contêiner do Azure:docker tag alpine <MYACR>.azurecr.io/mdc-mock-0001 docker push <MYACR>.azurecr.io/mdc-mock-0001
Se você não tiver um cluster AKS (Serviço Kubernetes do Azure), use o seguinte comando para criar um novo cluster AKS:
az aks create -n myAKSCluster -g myResourceGroup --generate-ssh-keys --attach-acr $MYACR
Se o AKS não estiver conectado ao ACR, use a seguinte linha de comando do Cloud Shell para apontar sua instância do AKS para extrair imagens do ACR selecionado:
az aks update -n myAKSCluster -g myResourceGroup --attach-acr <acr-name>
Autentique sua sessão do Cloud Shell para trabalhar com o cluster:
az aks get-credentials --subscription <cluster-suid> --resource-group <your-rg> --name <your-cluster-name>
Instale o ngnix ingress Controller :
helm install ingress-controller oci://ghcr.io/nginxinc/charts/nginx-ingress --version 1.0.1
Implante a imagem vulnerável simulada para expor o contêiner vulnerável à Internet executando o seguinte comando:
helm install dcspmcharts oci://mcr.microsoft.com/mdc/stable/dcspmcharts --version 1.0.0 --namespace mdc-dcspm-demo --create-namespace --set image=<your-image-uri> --set distribution=AZURE
Verifique o sucesso executando as seguintes etapas:
- Procure uma entrada com mdc-dcspm-demo como namespace
- Na guia Cargas de trabalho -> Implantações, verifique se "pod1" e "pod2" são criados 3/3 e ingress-controller-nginx-ingress-controller é criado 1/1.
- Em serviços e ingressos procure por-> service service1 e ingress-controller-nginx-ingress-controller. Na guia ingress, verifique se uma entrada foi criada com um endereço IP e uma classe nginx.
Nota
Depois de concluir o fluxo acima, pode levar até 24 horas para ver os resultados no explorador de segurança na nuvem e no caminho de ataque.
Depois de concluir o teste do caminho de ataque, investigue o caminho de ataque criado indo para Análise de caminho de ataque e procure o caminho de ataque que você criou. Para obter mais informações, consulte Identificar e corrigir caminhos de ataque.
AWS: testando o caminho de ataque e o explorador de segurança usando uma imagem de contêiner vulnerável simulada
Criar um repositório ECR chamado mdc-mock-0001
Acesse sua conta da AWS e escolha Linha de comando ou acesso programático.
Abra uma linha de comando e escolha Opção 1: definir variáveis de ambiente da AWS (credenciais de curto prazo). Copie as credenciais das variáveis de ambiente AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY e AWS_SESSION_TOKEN.
Execute o comando a seguir para obter o token de autenticação para seu registro do Amazon ECR. Substitua
<REGION>
pela região do seu registo. Substitua<ACCOUNT>
pelo ID da sua conta da AWS.aws ecr get-login-password --region <REGION> | docker login --username AWS --password-stdin <ACCOUNT>.dkr.ecr.<REGION>.amazonaws.com
Crie uma imagem do Docker marcada como vulnerável pelo nome. O nome da imagem deve conter a cadeia de caracteres mdc-mock-0001. Depois de criar a imagem, envie-a por push para o registro ECR, com o seguinte comando (substitua
<ACCOUNT>
e<REGION>
pelo ID e região da conta da AWS):docker pull alpine docker tag alpine <ACCOUNT>.dkr.ecr.<REGION>.amazonaws.com/mdc-mock-0001 docker push <ACCOUNT>.dkr.ecr.<REGION>.amazonaws.com/mdc-mock-0001
Conecte-se ao cluster EKS e instale o gráfico Helm fornecido. Configure
kubectl
para trabalhar com seu cluster EKS. Execute este comando (substitua<your-region>
e<your-cluster-name>
pelo nome e região do cluster EKS):aws eks --region <your-region> update-kubeconfig --name <your-cluster-name>
Verifique a configuração. Você pode verificar se
kubectl
está configurado corretamente executando:kubectl get nodes
Instale o ngnix ingress Controller :
helm install ingress-controller oci://ghcr.io/nginxinc/charts/nginx-ingress --version 1.0.1
Instale o seguinte gráfico de leme:
helm install dcspmcharts oci://mcr.microsoft.com/mdc/stable/dcspmcharts --version 1.0.0 --namespace mdc-dcspm-demo --create-namespace --set image=<ACCOUNT>.dkr.ecr.<REGION>.amazonaws.com/mdc-mock-0001 --set distribution=AWS
O gráfico Helm implanta recursos em seu cluster que podem ser usados para inferir caminhos de ataque. Inclui também a imagem vulnerável.
Nota
Depois de concluir o fluxo acima, pode levar até 24 horas para ver os resultados no explorador de segurança na nuvem e no caminho de ataque.
Depois de concluir o teste do caminho de ataque, investigue o caminho de ataque criado indo para Análise de caminho de ataque e procure o caminho de ataque que você criou. Para obter mais informações, consulte Identificar e corrigir caminhos de ataque.
GCP: Testando o caminho de ataque e o explorador de segurança usando uma imagem de contêiner vulnerável simulada
No portal GCP, procure Registro de Artefato e crie um repositório GCP chamado mdc-mock-0001
Siga estas instruções para enviar a imagem para o repositório. Execute estes comandos:
docker pull alpine docker tag alpine <LOCATION>-docker.pkg.dev/<PROJECT_ID>/<REGISTRY>/<REPOSITORY>/mdc-mock-0001 docker push <LOCATION>-docker.pkg.dev/<PROJECT_ID>/<REGISTRY>/<REPOSITORY>/mdc-mock-0001
Vá para o portal do GCP. Em seguida, vá para Clusters do mecanismo>Kubernetes. Selecione o botão Ligar.
Uma vez conectado, execute o comando no Cloud Shell ou copie o comando de conexão e execute-o em sua máquina:
gcloud container clusters get-credentials contra-bugbash-gcp --zone us-central1-c --project onboardingc-demo-gcp-1
Verifique a configuração. Você pode verificar se
kubectl
está configurado corretamente executando:kubectl get nodes
Para instalar o gráfico Helm, siga estes passos:
Em Registro de artefato no portal, vá para o repositório e localize o URI da imagem em Pull by digest.
Use o seguinte comando para instalar o gráfico Helm:
helm install dcspmcharts oci:/mcr.microsoft.com/mdc/stable/dcspmcharts --version 1.0.0 --namespace mdc-dcspm-demo --create-namespace --set image=<IMAGE_URI> --set distribution=GCP
O gráfico Helm implanta recursos em seu cluster que podem ser usados para inferir caminhos de ataque. Inclui também a imagem vulnerável.
Nota
Depois de concluir o fluxo acima, pode levar até 24 horas para ver os resultados no explorador de segurança na nuvem e no caminho de ataque.
Depois de concluir o teste do caminho de ataque, investigue o caminho de ataque criado indo para Análise de caminho de ataque e procure o caminho de ataque que você criou. Para obter mais informações, consulte Identificar e corrigir caminhos de ataque.
Encontre problemas de postura de contêiner com o explorador de segurança na nuvem
Você pode criar consultas de uma das seguintes maneiras:
- Explore os riscos com modelos integrados do explorador de segurança na nuvem
- Crie consultas personalizadas com o explorador de segurança na nuvem
Nas seções a seguir, apresentamos exemplos de consultas que você pode selecionar ou criar.
Explore os riscos com os modelos do explorador de segurança na nuvem
Na página de visão geral do Defender for Cloud, abra o explorador de segurança na nuvem.
Alguns modelos prontos para Kubernetes aparecem. Selecione um dos modelos:
- Pods do Kubernetes do Azure executando imagens com vulnerabilidades de alta gravidade
- Os namespaces do Kubernetes contêm pods vulneráveis
Selecione Abrir consulta, o modelo cria a consulta na parte superior da tela. Selecione Pesquisar para visualizar os resultados.
Crie consultas personalizadas com o explorador de segurança na nuvem
Você também pode criar suas próprias consultas personalizadas. O exemplo a seguir mostra uma pesquisa por pods executando imagens de contêiner que são vulneráveis à execução remota de código.
Os resultados estão listados abaixo da consulta.
Próximos passos
- Saiba mais sobre os planos do Defender for Cloud Defender.