Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato příručka vás provede kroky nastavení a dalšími akcemi, které vám pomůžou integrovat GitHub Advanced Security (GHAS) a Microsoft Defender for Cloud. Tato integrace vám pomůže maximalizovat zabezpečení aplikací nativních pro cloud od Microsoftu.
Podle této příručky:
- Nastavte úložiště GitHubu pro pokrytí cloudu v programu Defender.
- Vytvořte faktor rizika během běhu
- Otestujte skutečné případy použití v defenderu pro cloud.
- Propojte kód s cloudovými prostředky.
- Zahajte kampaň zabezpečení na GitHubu. Tato kampaň používá kontext modulu runtime k určení priority výstrah zabezpečení GHAS na základě kontextu modulu runtime.
- Vytvořte problémy s GitHubem z Defenderu pro cloud a spusťte nápravu.
- Uzavřete cyklus mezi inženýrskými a bezpečnostními týmy.
Požadavky
| Aspekt | Podrobnosti |
|---|---|
| Požadavky na životní prostředí | – Účet GitHubu s konektorem vytvořeným v defenderu pro cloud - Licence GHAS – Správa stavu cloudového zabezpečení v defenderu (CSPM) povolená v předplatném – Microsoft Security Copilot (volitelné pro automatizovanou nápravu) |
| Role a oprávnění | – Oprávnění správce zabezpečení – Čtenář zabezpečení v předplatném Azure (pro zobrazení zjištění v Defenderu pro Cloud) – Vlastník organizace GitHubu |
| Cloudová prostředí | – Dostupné jenom v komerčních cloudech (ne ve službě Azure Government, Azure provozované společností 21Vianet nebo jinými suverénními cloudy) |
Příprava prostředí
Krok 1: Nastavení úložiště GitHub a spuštění pracovního postupu
K otestování integrace použijte vlastní úložiště nebo ukázkové úložiště GitHubu, které už má veškerý obsah k sestavení zranitelné image kontejneru. Před nastavením úložiště se ujistěte, že:
Definujete konektor pro organizaci GitHubu, kterou chcete použít na portálu Defender for Cloud. Postupujte podle kroků v tématu Připojení prostředí GitHubu ke službě Microsoft Defender for Cloud.
Nakonfigurujete kontrolu kódu bez agentů pro váš konektor GitHubu. Postupujte podle kroků v části Konfigurace kontroly kódu bez agentů (Preview).
Úložiště, které používáte pro integraci, je soukromé.
Pokud chcete použít ukázkové úložiště, naklonujte do své organizace GitHub následující úložiště: build25-woodgrove/mdc-customer-playbook. Toto úložiště je určené zákazníkům k otestování integrace Defenderu pro cloud a GHAS. Má povolenou službu GHAS a je onboardována do tenanta Azure, který má povolenou funkci CSPM v programu Defender.
V úložišti postupujte takto:
Přejděte na Nastavení.
V levém podokně vyberte Tajné kódy a proměnné>Akce. Pak vyberte Nový tajný klíč úložiště.
Na úrovni úložiště nebo organizace přidejte následující tajné kódy:
Variable Description ACR_ENDPOINTPřihlašovací server registru kontejneru ACR_USERNAMEUživatelské jméno registru kontejneru ACR_PASSWORDHeslo pro registr kontejneru Poznámka:
Názvy je možné zvolit volně a nemusí se řídit konkrétním vzorem.
Tyto informace najdete na webu Azure Portal pomocí následujícího postupu:
V úložišti vyberte Akce.
Vyberte pracovní postup Sestavení a odeslání na ACR a pak vyberte Spustit pracovní postup.
Zkontrolujte, jestli byla image nasazená do vašeho registru kontejneru.
V ukázkovém úložišti by se image měla nacházet v registru s názvem mdc-mock-0001 se značkou mdc-ghas-integration.
Nasaďte stejný image jako běžící kontejner ve vašem clusteru. Jedním ze způsobů, jak tento krok dokončit, je připojení ke clusteru a použití
kubectl runpříkazu. Tady je příklad pro Azure Kubernetes Service (AKS):Nastavení předplatného clusteru:
az account set --subscription $subscriptionIDNastavte přihlašovací údaje pro cluster:
az aks get-credentials --resource-group $resourceGroupName --name $kubernetesClusterName --overwrite-existingNasazení obrazu:
kubectl run $containerName --image=$registryName.azurecr.io/mdc-mock-0001:mdc-ghas-integration
Krok 2: Vytvořte první rizikový faktor (pravidlo kritické pro obchod)
Jedním z rizikových faktorů, které Defender for Cloud detekuje pro tuto integraci, je obchodní důležitost. Organizace mohou vytvářet pravidla, která označí zdroje jako kritické pro podnikání.
Na portálu Defender for Cloud přejděte do části Nastavení prostředí>Důležitost prostředků.
V pravém podokně vyberte odkaz a otevřete Microsoft Defender.
Vyberte Vytvořit novou klasifikaci.
Zadejte jméno a popis.
V nástroji pro tvorbu dotazů vyberte Cloudový prostředek.
Napište dotaz pro nastavení názvu prostředku , který se rovná názvu kontejneru, který jste nasadili do clusteru pro ověření. Pak vyberte Další.
Na stránce Prostředky ve verzi Preview se zobrazí název kontejneru s typem prostředku K8s-container nebo K8s-pod, pokud Microsoft Defender již detekoval váš zdroj.
I když název ještě není viditelný, pokračujte dalším krokem. Microsoft Defender použije popisek závažnosti u kontejneru po zjištění kontejneru. Tento proces může trvat až 24 hodin.
Zvolte úroveň závažnosti a pak zkontrolujte a odešlete pravidlo klasifikace.
Krok 3: Ověření připravenosti vašeho prostředí
Poznámka:
Zobrazení následujících výsledků může trvat až 24 hodin po použití předchozích kroků.
Otestujte, že kontrola bez agentů GitHubu převezme úložiště.
Přejděte do Průzkumníka zabezpečení cloudu a proveďte dotaz.
Ověřte, že Defender for Cloud (ve službě Azure Container Registry) naskenuje image kontejneru a použil ji k vytvoření kontejneru. Do dotazu přidejte podmínky pro konkrétní nasazení.
Ověřte, že je kontejner spuštěný a že Defender for Cloud naskenuje cluster AKS.
Ověřte, že jsou rizikové faktory správně nakonfigurované na straně Defenderu pro cloud. Vyhledejte název kontejneru na stránce inventáře Defenderu pro cloud a měli byste vidět, že je označený jako kritický.
Krok 4: Vytvoření kampaně GitHubu
Vzhledem k tomu, že pracovní postup nasazuje image, která vytváří spuštěný kontejner s jedním z rizikových faktorů (kritických pro podnikání), vývojáři vidí rizikové faktory na GitHubu.
Poznámka:
Po klasifikaci prostředku jako kritického může trvat až 12 hodin, než Defender for Cloud odešle data do GitHubu. Další informace.
Na GitHubu přejděte do organizace GitHubu, kterou jste použili k testování nastavení.
Vyberte Kampaně zabezpečení>>Vytvořit kampaň>z filtrů skenování kódu.
Vytvořte následující kampaň. Tato kampaň zobrazuje otevřená upozornění se střední závažností, kdy je image nasazená z úložiště svázaná s kritickým prostředkem. V této kampani by mělo být zjištěno vaše testovací úložiště.
Vyberte Uložit>publikovat jako kampaň.
Zadejte požadované informace a pak kampaň publikujte.
Krok 5: Vyhodnocení doporučení pro kódování do cloudu
K pochopení stavu problémů se zabezpečením použijte doporučení pro kódování do cloudu a výstrahy zabezpečení. Pak můžete přiřadit doporučení k řešení příslušnému technickému týmu s pomocí propojení mezi výstrahami zabezpečení Dependabot a odpovídajícími běžnými zranitelnostmi a expozicemi (CVE) v Defender for Cloud.
Zobrazení doporučení pro přesun kódu do cloudu:
Na portálu Defender for Cloud přejděte na kartu Doporučení .
Vyhledejte název kontejneru, který jste vytvořili. Pak otevřete jedno z doporučení, která obsahují slovo Update.
Pokud jste použili ukázkové úložiště, vyhledejte aktualizaci doporučení pro rozšíření závorek.
Přejděte na kartu Remediation Insights a zobrazte diagram kódu do cloudu. Diagram mapuje váš běžící kontejner na image kontejneru v úložišti kódu a v úložišti původu na GitHubu.
Zobrazení výstrah zabezpečení
Vyberte kartu Přidružené cves . Všimněte si, že některé ID CVE mají odkaz Zobrazit na GitHubu ve sloupci Související upozornění GitHubu .
Výběrem odkazu otevřete příslušné výstrahy zabezpečení GHAS.
Problém s vytvořením GitHubu
Pokud chcete zavřít smyčku mezi bezpečnostními a technickými týmy, můžete vytvořit problém GitHubu, který upřednostňuje problémy se zabezpečením, na které by se technický tým měl zaměřit. Toto stanovení priority může zahrnovat předávání zjištění, která GHAS nezachytila, ale která však Defender for Cloud zjistil u ID CVE, která nejsou součástí přímých závislostí. Tato zjištění můžou zahrnovat ohrožení zabezpečení v základní imagi, operačním systému nebo softwaru, jako je NGINX.
Problém na GitHubu se automaticky vygeneruje se všemi ID CVE nalezenými v rámci doporučení. Doporučení je se shodami upozornění Dependabot i bez nich, včetně dalších kontextů běhového modulu v původním úložišti.
Když problém přiřadíte, stav problému se aktualizuje na portálu Defender for Cloud.
Agentní opravy
Pokud máte na straně GitHubu licenci GitHub Copilot, můžete problém vyřešit pomocí agenta kódování GitHubu:
- Přiřaďte úkolu agenta GitHub pro kódování.
- Zkontrolujte vygenerovanou opravu.
- Pokud se oprava zdá rozumná, použijte ji.
- Sledujte, jak Defender for Cloud aktualizuje stav problému na Uzavřeno.