Analyse du chemin d’attaque et repérage amélioré des risques pour les conteneurs
Attack Path Analysis est un algorithme graphique qui analyse le Cloud Security Graph. Les analyses révèlent des chemins exploitables par les attaquants pour pénétrer dans votre environnement et atteindre vos ressources à fort impact. L’analyse du chemin d’attaque révèle les chemins d’attaque et fournit les meilleures recommandations pour remédier aux problèmes en bloquant le chemin d’attaque et en empêchant toute violation.
Explorez et examinez les chemins d’attaque en les triant en fonction du niveau de risque, du nom, de l’environnement et des facteurs de risque, du point d’entrée, de la cible, des ressources affectées et des recommandations actives. Explorez le graphique de sécurité du cloud Insights sur la ressource. Voici quelques exemples de types d’insight :
- Pod exposé à Internet
- Conteneur privilégié
- Le pod utilise le réseau hôte
- L’image conteneur est vulnérable à l’exécution de code à distance
Azure : test du chemin d’attaque et de l’explorateur de sécurité à l’aide d’une image conteneur vulnérable fictive
S’il n’y a aucune entrée dans la liste des chemins d’attaque, vous pouvez toujours tester cette fonctionnalité en utilisant une image conteneur fictive. Pour configurer le test, procédez comme suit :
Exigence : instance d’Azure Container Registry (ACR) dans l’étendue testée.
Importez une image vulnérable fictive dans votre Azure Container Registry :
Tout d’abord, tirez une image de base (par exemple, alpine) dans votre environnement local en exécutant :
docker pull alpine
Étiquetez l’image avec l’étiquette suivante et poussez-la vers votre ACR. Remplacez
<MYACR>
par le nom de votre Azure Container Registry :docker tag alpine <MYACR>.azurecr.io/mdc-mock-0001 docker push <MYACR>.azurecr.io/mdc-mock-0001
Si vous n’avez pas de cluster AKS (Azure Kubernetes Service), utilisez la commande suivante pour créer un nouveau cluster AKS :
az aks create -n myAKSCluster -g myResourceGroup --generate-ssh-keys --attach-acr $MYACR
Si votre AKS n’est pas attaché à votre ACR, utilisez la ligne de commande Cloud Shell suivante pour pointer votre instance AKS pour extraire des images de l’ACR sélectionné :
az aks update -n myAKSCluster -g myResourceGroup --attach-acr <acr-name>
Authentifier votre session Cloud Shell pour travailler avec le cluster :
az aks get-credentials --subscription <cluster-suid> --resource-group <your-rg> --name <your-cluster-name>
Installez le contrôleur d’entrée ngnix :
helm install ingress-controller oci://ghcr.io/nginxinc/charts/nginx-ingress --version 1.0.1
Déployez l’image vulnérable fictive pour exposer le conteneur vulnérable à Internet en exécutant la commande suivante :
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
Vérifiez la réussite en procédant comme suit :
- Rechercher une entrée avec mdc-dcspm-demo comme espace de noms
- Sous l’onglet Charges de travail -> Déploiements , vérifiez « pod » créé 3/3 et dcspmcharts-ingress-nginx-controller 1/1.
- Dans services et entrées, recherchez-> services service, dcspmcharts-ingress-nginx-controller et dcspmcharts-ingress-nginx-controller-admission. Sous l’onglet Entrée, vérifiez qu’une entrée est créée avec une adresse IP et une classe nginx.
Remarque
Une fois le flux ci-dessus terminé, jusqu’à 24 heures peuvent être nécessaires avant de voir les résultats dans l’explorateur de sécurité du cloud et le chemin d’attaque.
Une fois le chemin d’attaque testé, investiguez le chemin d’attaque créé en accédant à Analyse du chemin d’attaque, puis recherchez le chemin d’attaque que vous avez créé. Pour plus d’informations, consultez Identifier et corriger les chemins d’attaque.
AWS : test du chemin d’attaque et de l’explorateur de sécurité à l’aide d’une image conteneur vulnérable fictive
Créez un référentiel ERC nommé mdc-mock-0001
Accédez à votre compte AWS et choisissez Ligne de commande ou accès programmatique.
Ouvrez une ligne de commande et choisissez Option 1 : Définir des variables d’environnement AWS (informations d’identification à court terme). Copiez les informations d’identification des variables d’environnement AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY et AWS_SESSION_TOKEN.
Exécutez la commande suivante pour obtenir le jeton d’authentification de votre registre Amazon ERC. Remplacez
<REGION>
par la région de votre registre. Remplacez<ACCOUNT>
par votre ID de compte AWS.aws ecr get-login-password --region <REGION> | docker login --username AWS --password-stdin <ACCOUNT>.dkr.ecr.<REGION>.amazonaws.com
Créez une image Docker marquée comme vulnérable par nom. Le nom de l’image doit contenir la chaîne mdc-mock-0001. Une fois l’image créée, envoyez-la (push) à votre registre ERC avec la commande suivante (remplacez
<ACCOUNT>
et<REGION>
par l’ID et la région de votre compte 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
Connectez-vous à votre cluster EKS et installez le chart Helm fourni. Configurez
kubectl
pour qu’il fonctionne avec votre cluster EKS. Exécutez cette commande (remplacez<your-region>
et<your-cluster-name>
par la région et le nom de votre cluster EKS) :aws eks --region <your-region> update-kubeconfig --name <your-cluster-name>
Vérifiez la configuration Vous pouvez vérifier si
kubectl
est correctement configuré en exécutant la commande suivante :kubectl get nodes
Installez le contrôleur d’entrée ngnix :
helm install ingress-controller oci://ghcr.io/nginxinc/charts/nginx-ingress --version 1.0.1
Installez le chart Helm suivant :
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
Le chart Helm déploie sur votre cluster des ressources qui peuvent être utilisées pour déduire les chemins d’attaque. Il inclut également l’image vulnérable.
Remarque
Une fois le flux ci-dessus terminé, jusqu’à 24 heures peuvent être nécessaires avant de voir les résultats dans l’explorateur de sécurité du cloud et le chemin d’attaque.
Une fois le chemin d’attaque testé, investiguez le chemin d’attaque créé en accédant à Analyse du chemin d’attaque, puis recherchez le chemin d’attaque que vous avez créé. Pour plus d’informations, consultez Identifier et corriger les chemins d’attaque.
GCP : test du chemin d’attaque et de l’explorateur de sécurité à l’aide d’une image conteneur vulnérable fictive
Dans le portail GCP, recherchez Artifact Registry, puis créez un référentiel GCP nommé mdc-mock-0001
Suivez ces instructions pour envoyer (push) l’image vers votre référentiel. Exécutez ces commandes :
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
Accédez au portail GCP. Accédez ensuite à Kubernetes Engine>Clusters. Cliquez sur le bouton Connecter.
Une fois connecté, exécutez la commande dans Cloud Shell ou copiez la commande de connexion et exécutez-la sur votre ordinateur :
gcloud container clusters get-credentials contra-bugbash-gcp --zone us-central1-c --project onboardingc-demo-gcp-1
Vérifiez la configuration Vous pouvez vérifier si
kubectl
est correctement configuré en exécutant la commande suivante :kubectl get nodes
Pour installer le graphique Helm, procédez comme suit :
Sous Artifact registry dans le portail, accédez au référentiel et recherchez l’URI d’image sous Artifact registry.
Utilisez la commande suivante pour installer le graphique 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
Le chart Helm déploie sur votre cluster des ressources qui peuvent être utilisées pour déduire les chemins d’attaque. Il inclut également l’image vulnérable.
Remarque
Une fois le flux ci-dessus terminé, jusqu’à 24 heures peuvent être nécessaires avant de voir les résultats dans l’explorateur de sécurité du cloud et le chemin d’attaque.
Une fois le chemin d’attaque testé, investiguez le chemin d’attaque créé en accédant à Analyse du chemin d’attaque, puis recherchez le chemin d’attaque que vous avez créé. Pour plus d’informations, consultez Identifier et corriger les chemins d’attaque.
Rechercher les problèmes de posture de conteneurs avec Cloud Security Explorer
Vous pouvez générer des requêtes de l’une des manières suivantes :
- Explorer les risques avec les modèles intégrés de l’explorateur de sécurité du cloud
- Créer des requêtes avec l’explorateur de sécurité du cloud
Dans les sections suivantes, nous présentons des exemples de requêtes que vous pouvez sélectionner ou créer.
Explorer les risques avec les modèles de l’explorateur de sécurité du cloud
Dans la page vue d’ensemble de Defender pour le cloud, ouvrez l’explorateur de sécurité du cloud.
Certains modèles prêts à l’emploi pour Kubernetes s’affichent. Sélectionnez un des modèles :
- Les pods Azure Kubernetes exécutant des images présentant des vulnérabilités de gravité élevée
- Les espaces de noms Kubernetes contiennent des pods vulnérables
Sélectionnez Ouvrir la requête ; le modèle génère la requête dans la partie supérieure de l’écran. Sélectionnez Rechercher pour afficher les résultats.
Créer des requêtes personnalisées avec l’explorateur de sécurité du cloud
Vous pouvez également créer vos propres requêtes personnalisées. L’exemple suivant montre une recherche de pods exécutant des images conteneur vulnérables à l’exécution de code à distance.
Les résultats sont listés sous la requête.
Étapes suivantes
- En savoir plus sur les plans Defender pour le cloud.