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 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í
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.
Do vyhledávacího řádku zadejte název úložiště kódu (pří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ý. To znamená, že GitHub Rozšířené zabezpečení je v monitorovaném úložišti 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é. Kontroluje, zda Defender dokáže zobrazit doporučení pro přechod kódu do běhu a přinést užitečné výsledky. Během kroku ověřování prostředí Defender ověřuje, že:
Validace plné viditelnosti kódu do runtime
- 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.
Note
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í.
Note
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ý.
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 jejich konfiguraci ověřit v nastavení > Závažnost prostředků.
Ú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. Pochopte upozornění v produkčním kódu.
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.
Kampaň za runtime risk pomáhá upřednostnit zjištění GitHub Advanced Security (GHAS), která patří do skutečně nasazeného a běžícího kódu.
Vyberte filtry rizik za běhu pro kampaň.
Vyberte Uložit>publikovat jako kampaň. Zadejte požadované informace a pak kampaň publikujte.
Krok 4: Jednajte podle 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í indicie o zjištěních služby GitHub Advanced Security, která jsou technickému týmu již známá. 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 kdykoli zkopírovat odkaz pro další použití 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í GitHub, CVE představuje runtime riziko, které inženýrství neznají a které je třeba upřednostnit pro opravu.
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.
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 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 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 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.
Note
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.
Související obsah
Zjistěte více o GitHub Advanced Security a Defender for Cloud: