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 obsahuje kroky nastavení a další akce, které vám pomůžou integrovat GitHub Advanced Security (GHAS) a Microsoft Defender for Cloud s případem použití, který vám pomůže ověřit konec integrace. Tato integrace pomáhá maximalizovat zabezpečení aplikací nativních pro cloud Microsoft tím, že koreluje rizika modulu runtime a kontext s původním kódem, aby se urychlila náprava založená na umělé inteligenci.
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 prostředky modulu runtime.
- Zahajte kampaň zabezpečení na GitHubu. Tato kampaň používá kontext modulu runtime k určení priority výstrah zabezpečení GHAS.
- 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 – GitHub licence GHAS (Advanced Security) v připojených úložištích – Defender plán správy stavu cloudového zabezpečení (DCSPM) povolený pro předplatné – Microsoft Security Copilot (volitelné pro automatizované nápravy využívající AI) |
| Role a oprávnění | – Oprávnění správce zabezpečení – Správce zabezpečení v předplatném Azure (pro zobrazení zjištění v Defender for Cloud) – GitHub vlastníka organizace (pro připojení úložišť a konfiguraci kampaní zabezpečení) |
| 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 projekt sandboxu example s testovacím úložištěm GitHub se všemi obsahy, abyste vytvořili ohroženou image kontejneru.
Přihlaste se do Azure Portalu.
Přejděte na Microsoft Defender for Cloud>zabezpečení DevOps.
Do vyhledávacího řádku zadejte název úložiště kódu (příklad: zava-webshop).
Ověřte, že skutečně patří do organizace, kterou monitorujete (příklad: zava-corporation org).
Zkontrolujte, zda existují nějaké nálezy pro repozitář.
Ujistěte se, že Pokročilý stav zabezpečení je On, což znamená, že máte na monitorovaném úložišti povolené GitHub Rozšířené zabezpečení – > vámi nasazené úložiště.
Pokud vaše úložiště nebylo nalezeno, nahlédněte do dokumentace Microsoft Defender for Cloud pro řešení potíží a nastavení konektoru GitHub.
Ujistěte se, že je pro váš konektor GitHub zapnutá kontrola bez agentů.
Krok 2: Ověření připravenosti vašeho prostředí
Ověření potvrzuje, že je vaše prostředí správně nakonfigurované tak, aby zkonfigurovalo kód na doporučení modulu runtime a vygenerovalo použitelné výsledky. Během tohoto kroku Defender ověřuje, že:
Úplná viditelnost kódu při běhu
- Microsoft Defender for Cloud nepřetržitě monitoruje úložiště zdrojového kódu z hlediska ohrožení zabezpečení.
- Artefakty sestavení, například image kontejnerů, jsou před nasazením skenovány v registrech kontejnerů.
- Úlohy runtime nasazené do clusterů Kubernetes se monitorují kvůli bezpečnostním rizikům.
- Defender for Cloud koreluje a trasuje každý artefakt od kódu přes sestavení a nasazení až po runtime a zpět.
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 na Microsoft Defender for Cloud>Cloud Security Explorer a proveďte dotaz. Ověřovací dotazy testují, jestli Defender dokáže identifikovat artefakty vytvořené vašimi kanály a úlohami. Pokud dotazy vrátí výsledky, znamená to, že kontrola a korelace fungují podle očekávání.
Poznámka:
Pokud se nevrátí žádné výsledky, může to znamenat, že artefakty ještě nejsou generovány, kontrola není nakonfigurovaná nebo chybí oprávnění. Další informace najdete v tématu Role a oprávnění uživatele .
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ý.
Poznámka:
Tento krok se vyžaduje jenom v případě, že ve vašem prostředí ještě nejsou nakonfigurované rizikové faktory. Pokud už používáte rizikové faktory, můžete jejich konfiguraci ověřit v nastavení > Závažnost prostředků.
Úspěšné ověření zajišťuje, aby následné kroky, jako jsou doporučení, kampaně a GitHub generování problémů, vytvořily smysluplné výsledky.
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.
Krok 3: Vytvoření GitHub kampaně
Pokud chcete vytvořit skenovací kampaň, musíte pracovat na úrovni GitHub organizace. Toto prostředí není k dispozici na úrovni jednotlivých úložišť.
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.
Tato kampaň pomáhá upřednostnit zjištění GHAS, která náleží kódu, který je skutečně nasazený a běžící.
Vyberte filtry rizik za běhu pro kampaň.
Vyberte Uložit>publikovat jako kampaň. Zadejte požadované informace a pak kampaň publikujte.
Krok 4: Mobilizace doporučení
Využijte funkčnost doporučení VA kontejnerů pro přechod od kódu k modulu runtime a korelaci identifikovaných CVE s výstrahami zabezpečení Dependabot, abyste porozuměli stavu bezpečnostních problémů. Pak můžete příslušnému inženýrskému týmu přiřadit doporučení k řešení na základě mapování kódu na runtime.
Na portálu Defender for Cloud přejděte na kartu Doporučení .
Vyhledejte název kontejneru, který jste vytvořili z úložiště kódu.
Otevřete jedno z doporučení pro aktualizace softwaru ; název doporučení začíná aktualizací.
Na kartě Přidružené CVE se zobrazí výstrahy zabezpečení jako součást toku vyhodnocení doporučení. Tyto výstrahy poskytují informace o GitHub pokročilých zjištěních zabezpečení, která už znají technici. Všimněte si, že některá ID CVE mají ve sloupci Související výstrahy na GitHubu odkaz zobrazit na GitHub.
Výběrem odkazu otevřete příslušné výstrahy zabezpečení GHAS. (Pokud chcete zobrazit obsah upozornění GHAS v GitHub, musíte mít přístupová oprávnění k příslušnému úložišti GitHub. Pokud nemáte přístupová oprávnění, můžete odkaz kdykoli zkopírovat pro následné použití nebo se obrátit na správce GitHub.)
Pokud dojde k obohacení výstrahy, existuje odpovídající výstraha Dependabot, která už je známá technickému týmu. Pokud je stav Aktivní, nikdo ho ještě neopravil a problém musí být u opravy upřednostněn.
Pokud nedojde k obohacení zjištění, znamená to provozní riziko neznámé inženýrství, které je třeba prioritně opravit.
Další kroky Jak bych věděl, kdo je relevantním týmem pro opravu? Jak mohu zjistit, který kontext může pomoci inženýrům s opravou?
Vytvořit problém na 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 GitHub se automaticky vygeneruje v úložišti kódu původu se všemi ID CVE nalezenými v rozsahu doporučení, včetně dalších kontextů souvisejících s modulem runtime a kontejneru SDLC, které můžou pomoct usnadnit opravu a testování.
Ze zobrazení doporučení můžete přímo vygenerovat GitHub issue, které bude sloužit ke sledování nápravných prací.
Přejděte na kartu Remediation Insights a zobrazte diagram toku od kódu k runtime. Diagram mapuje váš běžící kontejner na image kontejneru v úložišti kódu a na původní úložiště kódu na GitHubu.
Na kartě Remediation Insights zkontrolujte ovlivněný Runtime box.
Ověřte, zda již na GitHub existuje issue. Pokud GitHub problém již existuje, v poli se zobrazí ikona GitHub. Najeďte myší na ikonu a zobrazte podrobnosti o problému.
Pokud žádný problém neexistuje a máte požadovaná oprávnění, můžete vygenerovat nový GitHub problém. Vyberte Provést akci.
V místní nabídce vyberte možnost Vytvořit problém na GitHubu.
Pokud se problém úspěšně vytvořil, zobrazí se automaticky otevírané oznámení s odkazem na problém. Problém se vytvoří v úložišti kódu původu.
Poznámka:
Pokud možnost problému Generate GitHub není dostupná, možná chybí požadovaná oprávnění k GitHub nebo úložišti. Obraťte se na správce GitHubu nebo úložiště a požádejte o přístup.
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.