Mapování imagí kontejnerů z kódu do cloudu
Pokud se v imagi kontejneru uložené v registru kontejneru nebo v clusteru Kubernetes identifikuje ohrožení zabezpečení, může být obtížné trasovat ho zpět do kanálu CI/CD, který nejprve sestavil image kontejneru a identifikoval vlastníka nápravy vývojáře. Díky možnostem zabezpečení DevOps v Správa stavu cloudového zabezpečení v programu Microsoft Defender (CSPM) můžete mapovat aplikace nativní pro cloud z kódu do cloudu, abyste mohli snadno spustit pracovní postupy nápravy vývojářů a zkrátit dobu nápravy ohrožení zabezpečení v imagích kontejnerů.
Požadavky
Účet Azure s onboardedem Defenderu pro Cloud. Pokud ještě nemáte účet Azure, vytvořte si ho zdarma.
Prostředí Azure DevOps nebo GitHubu nasazené do Microsoft Defenderu pro cloud
- Když je prostředí Azure DevOps připojené ke službě Microsoft Defender for Cloud, mapování kontejnerů Microsoft Defenderu for DevOps se automaticky sdílí a nainstaluje ve všech připojených organizacích Azure DevOps. Tím se automaticky vloží úkoly do všech azure Pipelines, aby se shromažďují data pro mapování kontejnerů.
V případě Azure DevOps nainstaluje rozšíření Microsoft Security DevOps (MSDO) v organizaci Azure DevOps.
U GitHubu je akce Microsoft Security DevOps (MSDO) nakonfigurovaná v úložištích GitHubu. Kromě toho musí mít pracovní postup GitHubu oprávnění id-token: zápis pro federaci pomocí defenderu pro cloud. Příklad: Podívejte se na tento YAML.
Služba CSPM v programu Defender je povolená.
Image kontejnerů musí být sestaveny pomocí Dockeru a klient Dockeru musí mít během sestavování přístup k serveru Dockeru.
Mapování image kontejneru z kanálů Azure DevOps na registr kontejnerů
Po vytvoření image kontejneru v kanálu CI/CD Azure DevOps a jeho nasdílením do registru se podívejte na mapování pomocí Průzkumníka zabezpečení cloudu:
Přihlaste se k portálu Azure.
Přejděte do Průzkumníka cloudových>zabezpečení v programu Microsoft Defender. Zobrazení mapování imagí kontejneru v Průzkumníku zabezpečení cloudu může trvat maximálně 4 hodiny.
Pokud chcete zobrazit základní mapování, vyberte image>>+kontejnerů nabízené úložištěm kódu.
(Volitelné) Vyberte + podle imagí kontejneru a přidejte do dotazu další filtry, jako je například ohrožení zabezpečení pro filtrování pouze imagí kontejnerů pomocí cvEs.
Po spuštění dotazu se zobrazí mapování mezi registrem kontejneru a kanálem Azure DevOps. Výběrem ... vedle hraničního zařízení zobrazíte další podrobnosti o tom, kde byl kanál Azure DevOps spuštěný.
Následuje příklad rozšířeného dotazu, který využívá mapování imagí kontejneru. Počínaje úlohou Kubernetes, která je vystavená internetu, můžete trasovat všechny image kontejnerů s vysokou závažností CVE zpět do kanálu Azure DevOps, kde byla image kontejneru vytvořená, a umožnit tak pracovníkovi zabezpečení zahájit pracovní postup nápravy pro vývojáře.
Poznámka:
Pokud vaše organizace Azure DevOps měla vytvořený konektor Azure DevOps před 15. listopadem 2023, přejděte do části Rozšíření nastavení>> organizace Sdílená a nainstalujte dekorátor mapování imagí kontejneru. Pokud se rozšíření sdílené s vaší organizací nezobrazuje, vyplňte následující formulář.
Mapování image kontejneru z pracovních postupů GitHubu do registru kontejneru
- Přidejte do pracovního postupu MSDO nástroj pro mapování imagí kontejneru:
name: Build and Map Container Image
on: [push, workflow_dispatch]
jobs:
build:
runs-on: ubuntu-latest
# Set Permissions
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.8'
# Set Authentication to Container Registry of Choice
- name: Azure Container Registry Login
uses: Azure/docker-login@v1
with:
login-server: <containerRegistryLoginServer>
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
# Build and Push Image
- name: Build and Push the Docker image
uses: docker/build-push-action@v2
with:
push: true
tags: ${{ secrets.IMAGE_TAG }}
file: Dockerfile
# Run Mapping Tool in MSDO
- name: Run Microsoft Security DevOps Analysis
uses: microsoft/security-devops-action@latest
id: msdo
with:
include-tools: container-mapping
Po vytvoření image kontejneru v pracovním postupu GitHubu a jeho nasdílením do registru se podívejte na mapování pomocí Průzkumníka zabezpečení cloudu:
Přihlaste se k portálu Azure.
Přejděte do Průzkumníka cloudových>zabezpečení v programu Microsoft Defender. Zobrazení mapování imagí kontejneru v Průzkumníku zabezpečení cloudu může trvat maximálně 4 hodiny.
Pokud chcete zobrazit základní mapování, vyberte image>>+kontejnerů nabízené úložištěm kódu.
(Volitelné) Vyberte + podle imagí kontejneru a přidejte do dotazu další filtry, jako je například ohrožení zabezpečení pro filtrování pouze imagí kontejnerů pomocí cvEs.
Po spuštění dotazu se zobrazí mapování mezi registrem kontejneru a pracovním postupem GitHubu. Výběrem ... vedle hraničních zařízení zobrazíte další podrobnosti o tom, kde se spustil pracovní postup GitHubu.
Následuje příklad rozšířeného dotazu, který využívá mapování imagí kontejneru. Počínaje úlohou Kubernetes, která je vystavená internetu, můžete sledovat všechny image kontejnerů s vysokou závažností CVE zpět do úložiště GitHub, kde byla image kontejneru vytvořena, a umožnit tak pracovníkovi zabezpečení zahájit pracovní postup nápravy pro vývojáře.
Další kroky
- Přečtěte si další informace o zabezpečení DevOps v defenderu pro cloud.