Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze handleiding begeleidt u bij het instellen van stappen en andere acties om u te helpen bij het integreren van GitHub Advanced Security (GHAS) en Microsoft Defender for Cloud. Met deze integratie kunt u de cloudeigen toepassingsbeveiliging van Microsoft maximaliseren.
Door deze handleiding te volgen, gaat u als volgt te werk:
- Stel uw GitHub-opslagplaats in voor Defender for Cloud-dekking.
- Maak een runtime-risicofactor.
- Test echte gebruiksscenario's in Defender for Cloud.
- Koppel code aan cloudresources.
- Start een beveiligingscampagne op GitHub. Deze campagne maakt gebruik van runtimecontext om prioriteit te geven aan beveiligingswaarschuwingen van GHAS op basis van runtimecontext.
- Maak GitHub-problemen van Defender voor Cloud om herstel te starten.
- Sluit de lus tussen technische en beveiligingsteams.
Vereiste voorwaarden
| Kenmerk | Bijzonderheden |
|---|---|
| Milieuvereisten | - GitHub-account met een connector die is gemaakt in Defender for Cloud - GHAS-licentie - Defender Cloud Security Posture Management (CSPM) ingeschakeld voor het abonnement - Microsoft Security Copilot (optioneel voor geautomatiseerd herstel) |
| Rollen en machtigingen | - Machtigingen voor beveiligingsbeheerders - Beveiligingslezer voor het Azure-abonnement (om bevindingen weer te geven in Defender for Cloud) - Eigenaar van GitHub-organisatie |
| Cloudomgevingen | - Alleen beschikbaar in commerciële clouds (niet in Azure Government, Azure beheerd door 21Vianet of andere onafhankelijke clouds) |
Uw omgeving voorbereiden
Stap 1: De GitHub-opslagplaats instellen en de werkstroom uitvoeren
Als u de integratie wilt testen, gebruikt u uw eigen opslagplaatsen of een voorbeeld van een GitHub-opslagplaats met alle inhoud om een kwetsbare containerinstallatiekopieën te bouwen. Voordat u een opslagplaats instelt, moet u ervoor zorgen dat:
U definieert een connector voor de GitHub-organisatie die u wilt gebruiken in de Defender for Cloud-portal. Volg de stappen in Uw GitHub-omgeving verbinden met Microsoft Defender for Cloud.
U configureert het scannen van code zonder agent voor uw GitHub-connector. Volg de stappen in Configureer agentloos code scannen (preview).
De opslagplaats die u voor de integratie gebruikt, is privé.
Als u een voorbeeldopslagplaats wilt gebruiken, kloont u de volgende opslagplaats naar uw GitHub-organisatie: build25-woodgrove/mdc-customer-playbook. Deze opslagplaats is bedoeld voor klanten om de integratie van Defender for Cloud en GHAS te testen. Het heeft GHAS ingeschakeld en is gekoppeld aan een Azure-tenant waarvoor Defender CSPM is geactiveerd.
Voer in de opslagplaats de volgende stappen uit:
Ga naar Instellingen.
Selecteer Geheimen en variabelen>Acties in het linkerdeelvenster. Selecteer vervolgens Nieuw opslagplaatsgeheim.
Voeg de volgende geheimen toe op het niveau van de opslagplaats of organisatie:
Variable Description ACR_ENDPOINTDe aanmeldingsserver van het containerregister ACR_USERNAMEDe gebruikersnaam voor het containerregister ACR_PASSWORDHet wachtwoord voor het containerregister Opmerking
De namen kunnen vrij worden gekozen en hoeven geen specifiek patroon te volgen.
U vindt deze informatie in Azure Portal door de volgende stappen uit te voeren:
Selecteer Acties in uw opslagplaats.
Selecteer de werkstroom Bouwen en pushen naar ACR en selecteer vervolgens Werkstroom uitvoeren.
Controleer of het image is gedeponeerd in uw containerregister.
Voor de voorbeeldopslagplaats moet de containerafbeelding in een register genaamd mdc-mock-0001 staan, met de tag mdc-ghas-integration.
Implementeer dezelfde image als een draaiende container op uw cluster. Een manier om deze stap te voltooien, is door verbinding te maken met het cluster en de
kubectl runopdracht te gebruiken. Hier volgt een voorbeeld voor Azure Kubernetes Service (AKS):Stel het clusterabonnement in:
az account set --subscription $subscriptionIDStel de referenties voor het cluster in:
az aks get-credentials --resource-group $resourceGroupName --name $kubernetesClusterName --overwrite-existingDe installatiekopieën implementeren:
kubectl run $containerName --image=$registryName.azurecr.io/mdc-mock-0001:mdc-ghas-integration
Stap 2: De eerste risicofactor maken (bedrijfskritieke regel)
Een van de risicofactoren die Defender voor Cloud detecteert voor deze integratie is bedrijfskritiek. Organisaties kunnen regels maken om middelen als bedrijfskritisch te labelen.
Ga in de Defender for Cloud-portal naar Omgevingsinstellingen>resourcekritiek.
Selecteer in het rechterdeelvenster de koppeling om Microsoft Defender te openen.
Selecteer Een nieuwe classificatie maken.
Voer een naam en een beschrijving in.
Selecteer cloudresource in de opbouwfunctie voor query's.
Schrijf een query om resourcenaam in te stellen die gelijk is aan de naam van de container die u voor validatie in uw cluster hebt geïmplementeerd. Klik daarna op Volgende.
Als Microsoft Defender uw resource al heeft gedetecteerd op de pagina Voorbeeldassets, wordt de naam van de container weergegeven met een assettype K8s-container of K8s-pod.
Zelfs als de naam nog niet zichtbaar is, gaat u verder met de volgende stap. Microsoft Defender past het kritieklabel toe op de container nadat de container is gedetecteerd. Dit proces kan maximaal 24 uur duren.
Kies een kritiek niveau en controleer en dien vervolgens uw classificatieregel in.
Stap 3: Controleren of uw omgeving gereed is
Opmerking
Het kan tot 24 uur duren voordat de vorige stappen zijn toegepast om de volgende resultaten te zien.
Test of het scannen zonder agent van GitHub de opslagplaats ophaalt.
Ga naar Cloud Security Explorer en voer de query uit.
Controleer of Defender for Cloud (in Azure Container Registry) de containerafbeeldingen heeft gescand en gebruikt om een container te maken. Voeg in uw query de voorwaarden voor uw specifieke implementatie toe.
Controleer of de container wordt uitgevoerd en of Defender for Cloud het AKS-cluster heeft gescand.
Controleer of de risicofactoren correct zijn geconfigureerd aan de zijde van Defender voor Cloud. Zoek de containernaam op de Defender for Cloud-inventarispagina en u zou deze gemarkeerd als kritieke status moeten zien.
Stap 4: Een GitHub-campagne maken
Omdat de werkstroom een image implementeert dat een draaiende container met een van de bedrijfs-kritische risicofactoren bevat, kunnen ontwikkelaars risicofactoren op GitHub zien.
Opmerking
Nadat u uw resource als kritiek hebt geclassificeerd, kan het tot 12 uur duren voordat Defender voor Cloud de gegevens naar GitHub verzendt. Meer informatie.
Ga in GitHub naar de GitHub-organisatie die u hebt gebruikt voor het testen van de installatie.
Selecteer Beveiliging>Campagnes>Campagne maken>Van codescanfilters.
Maak de volgende campagne. Deze campagne toont openstaande waarschuwingen met een gemiddelde ernst waarbij de image die vanuit de repository is geïmplementeerd, is gekoppeld aan een kritieke bron. Uw testopslagplaats moet worden gedetecteerd met deze campagne.
Selecteer Publiceren opslaan>als campagne.
Voer de vereiste gegevens in en publiceer de campagne.
Stap 5: Aanbevelingen voor code-naar-cloud evalueren
Gebruik aanbevelingen voor code-naar-cloud en beveiligingswaarschuwingen om inzicht te hebben in de status van beveiligingsproblemen. Vervolgens kunt u de aanbeveling voor oplossing toewijzen aan het relevante technische team met behulp van de verbinding tussen Dependabot-beveiligingswaarschuwingen en overeenkomende veelvoorkomende beveiligingsproblemen en blootstellingen (CVE)-id's in Defender for Cloud.
Om de aanbevelingen voor code-naar-cloud te bekijken:
Ga in de Defender for Cloud-portal naar het tabblad Aanbevelingen .
Zoek de naam van de container die u hebt gemaakt. Open vervolgens een van de aanbevelingen die het woord Bijwerken bevatten.
Als u de voorbeeldrepository hebt gebruikt, zoekt u naar Update-aanbeveling voor brace-uitbreiding.
Ga naar het tabblad Herstelinzichten en bekijk het code-naar-clouddiagram. Het diagram legt verbanden tussen uw lopende container en de containerafbeelding in de codeopslagplaats en de codeopslagplaats van de oorsprong in GitHub.
Beveiligingswaarschuwingen weergeven
Selecteer het tabblad Gekoppelde CVE's. Sommige CVE-id's hebben een Bekijk op GitHub link in de kolom Gerelateerde GitHub-waarschuwingen.
Selecteer de koppeling om de relevante beveiligingswaarschuwing van GHAS te openen.
Een GitHub-probleem maken
Als u de lus tussen beveiligings- en technische teams wilt sluiten, kunt u een GitHub-probleem maken dat prioriteit geeft aan de beveiligingsproblemen waarop het technische team zich moet richten. Deze prioriteitsaanduiding kan bestaan uit het doorgeven van bevindingen die GHAS niet heeft opgehaald, maar die Defender for Cloud heeft gedetecteerd voor CVE-id's die geen deel uitmaken van directe afhankelijkheden. Deze bevindingen kunnen beveiligingsproblemen bevatten in de basisinstallatiekopieën, het besturingssysteem of software zoals NGINX.
Het GitHub-issue wordt automatisch gegenereerd met alle CVE-id's binnen het bereik van de aanbeveling. De aanbeveling geldt zowel met als zonder Dependabot-waarschuwingen, inclusief andere runtimecontexten op de oorspronkelijke opslagplaats.
Wanneer u het probleem toewijst, wordt de status van het probleem bijgewerkt in de Defender for Cloud-portal.
Agentgerelateerde oplossingen toepassen
Als u een GitHub Copilot-licentie hebt, kunt u het probleem oplossen met behulp van de GitHub-coderingsagent:
- Wijs een GitHub-coderingsagent toe aan het probleem.
- Bekijk de gegenereerde oplossing.
- Als de oplossing redelijk lijkt, past u deze toe.
- Bekijk wanneer Defender for Cloud de status van het probleem bijwerken naar Gesloten.