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 a pak ověřit konec integrace. 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.
Předpoklady
| Aspect | 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 bezpečnosti na předplatném Azure pro zobrazení zjištěných výsledků v Defender for Cloud - Vlastník organizace GitHub pro propojení repozitářů a konfiguraci bezpečnostních kampaní |
| 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í
Před ověřením integrace dokončete následující kroky k nastavení repozitáře GitHub a Defender for Cloud.
Krok 1: Nastavení úložiště GitHub a spuštění pracovního postupu
Pro testování integrace použijte vlastní repozitáře nebo ukázkový sandboxový projekt. Projekt sandbox poskytuje testovací GitHub repozitář se vším, co potřebujete k vytvoření zranitelného obrazu kontejneru.
Přihlaste se do Azure Portalu.
Přejděte na Microsoft Defender for Cloud>zabezpečení DevOps.
Zadejte název svého kódového repozitáře do vyhledávacího pole, například zava-webshop.
Ověřte, že patří do organizace, kterou monitorujete, například organizaci zava-corporation .
Zkontrolujte, zda existují nějaké nálezy pro repozitář.
Ujistěte se , že je stav rozšířeného zabezpečenízapnutý. Toto nastavení znamená, že GitHub Advanced Security je na monitorovaném repozitáři povolen.
Pokud vaše repozitář není nalezen, podívejte se na GitHub Connector Onboarding quickstart pro řešení problémů a nastavení.
Ujistěte se, že je pro váš konektor GitHub zapnutá kontrola bez agentů.
Krok 2: Ověření připravenosti vašeho prostředí
Tato validace prostředí potvrzuje, že vaše repozitář a cloudové zdroje jsou správně nastavené. Ověřuje, že Defender dokáže zobrazit doporučení týkající se kódu a běhového prostředí a poskytovat užitečné výsledky. Během kroku ověřování prostředí Defender ověřuje, že:
- 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.
Ověřte úplnou viditelnost od kódu až po běhové prostředí
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í.
Note
Pokud nejsou vráceny žádné výsledky, může to znamenat, že artefakty ještě nejsou vygenerovány, skenování není nakonfigurováno nebo chybí oprávnění. Další informace najdete v tématu Role a oprávnění uživatele .
V Azure Container Registry ověřte, že Defender for Cloud naskenoval obraz kontejneru a použil ho 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 svého kontejneru na stránce inventáře Defender for Cloud. Měli byste to vidět označené jako kritické.
Note
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 ověřit jejich konfiguraci v nastavení>kritickosti zdrojů.
Úspěšné ověření zajišťuje, že další kroky, jako jsou doporučení, kampaně a GitHub generování problémů, vytvoří smysluplné výsledky.
Note
Po klasifikaci prostředku jako kritického může trvat až 12 hodin, než Defender for Cloud odešle data do GitHubu. Pro více informací viz Prioritizace Dependabotu a upozornění na skenování kódu.
Krok 3: Vytvoření GitHub kampaně
Pro vytvoření skenovací kampaně pracujte na úrovni organizace GitHub. 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.
Kampaň runtime-risk pomáhá upřednostňovat zjištění GitHub Advanced Security (GHAS), která se vztahují ke kódu, který je skutečně nasazený a spuštěný.
Vyberte filtry rizik za běhu pro kampaň.
Vyberte Uložit>publikovat jako kampaň. Zadejte požadované informace a pak kampaň publikujte.
Sledujte pokrok v kampaních.
Krok 4: Jednajte podle doporučení
Použijte doporučení VA pro spuštěné kontejnery, funkci code-to-runtime a korelaci identifikovaných CVE s bezpečnostními výstrahami Dependabotu, abyste porozuměli stavu problémů se zabezpečení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í softwaru na aktualizaci . Název doporučení začíná slovem Update.
Vyberte související CVE.
Bezpečnostní upozornění se objevují jako součást procesu hodnocení doporučení. Tyto výstrahy poskytují indicie o zjištěních služby GitHub Advanced Security, která jsou technickému týmu již známá. Některá CVE ID mají odkaz View on GitHub ve sloupci Související upozornění na GitHub.
Výběrem odkazu otevřete příslušné výstrahy zabezpečení GHAS. Pro zobrazení obsahu upozornění GHAS na GitHub musíte mít přístupová oprávnění k příslušnému repozitáři GitHub. Pokud nemáte přístupová oprávnění, můžete odkaz zkopírovat pro příště nebo kontaktovat správce GitHub.
Pokud sloupec Související upozornění na GitHub ukazuje shodné upozornění Dependabotu, je zranitelnost již inženýrům známa. Pokud je stav upozornění aktivní, nikdo to zatím nevyřešil a problém je třeba prioritizovat pro opravu.
Pokud se ve sloupci neobjeví žádné odpovídající upozornění GitHubu, CVE představuje riziko za běhu, které není vývojovému týmu známo a jehož opravu je třeba upřednostnit.
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.
Issue na GitHubu se automaticky vytvoří v repozitáři zdrojového kódu se všemi ID CVE nalezenými v rámci doporučení, včetně dalších kontextů souvisejících s runtime, kontejnery a životním cyklem vývoje softwaru (SDLC), které mohou pomoci s opravou a testováním.
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 Remediation Insights a zobrazte si diagram propojení kódu a běhového prostředí. 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 dotčenou sekci Runtime.
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 byl problém úspěšně vytvořen, zobrazí se upozornění s odkazem na problém. Problém se vytvoří v úložišti kódu původu.
Note
Pokud není dostupná možnost Generovat problém s GitHub, může vám chybět oprávnění k GitHub nebo repozitáři. Obraťte se na správce GitHubu nebo úložiště a požádejte o přístup.
Agentní opravy
Pokud máte licenci GitHub Copilot, můžete problém vyřešit pomocí GitHub kódovacího agenta:
- 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.