Automatizované zabezpečení
Tady probereme některé způsoby automatizace kontrol zabezpečení v úložišti, které jsou k dispozici správcům úložiště GitHub.
Detekce a oprava zastaralých závislostí s ohroženími zabezpečení
Každý projekt dnes používá externí balíčky jako závislosti. I když tyto komponenty můžou nabídnout značné výhody produktivity, můžou představovat další bezpečnostní rizika. Sledování těchto balíčků a jejich zranitelnosti může být časově náročné, zejména proto, že každá závislost může mít své vlastní závislosti, které se mohou obtížně sledovat a udržovat. GitHub naštěstí poskytuje funkce, které tuto úlohu snižují.
Grafy závislostí úložiště
Jednou z výchozích funkcí, která každé úložiště zahrnuje, je grafy závislostí. GitHub kontroluje běžné manifesty balíčků, jako jsou package.json, requirements.txta další. Tyto grafy umožňují vlastníkům projektů rekurzivně sledovat všechny závislosti, na kterých projekt závisí.
Seznam podporovaných manifestů závislostí najdete v tématu O grafu závislostí.
Upozornění Dependabotu
I s vizuálním grafem závislostí stále může být obtížné udržet si přehled o nejnovějších bezpečnostních hlediscích všech závislostí projektu. Aby se snížila tato režie, GitHub poskytuje upozornění Dependabotu, která sledují grafy závislostí za vás. Potom křížově odkazuje na cílové verze s verzemi na známých seznamech ohrožení zabezpečení. Při zjištění rizika se projekt upozorní. Vstup pro analýzu pochází z Informačních zpravodajů zabezpečení GitHubu .
Automatizované aktualizace závislostí pomocí Dependabotu
Upozornění na závislost může vést k tomu, že přispěvatel projektu aktualizuje referenci balíčku na doporučenou verzi a vytvoří pull request pro ověření. Nebylo by skvělé, kdyby bylo možné tuto snahu automatizovat? Dobrá zpráva! Dependabot dělá přesně to. Vyhledá upozornění na závislosti a vytvoří pull requesty, a umožní tak přispěvateli ověřit aktualizaci a sloučit žádost.
Další informace o flexibilitě Dependabotu najdete v tématu Konfigurace aktualizací zabezpečení Dependabot.
Automatizované prohledávání kódu
Podobně jako když Dependabot prohledává vaše úložiště kvůli výstrahám týkajícím se závislostí, můžete pomocí skenování kódu analyzovat a najít ohrožení zabezpečení a chyby v kódu v úložišti na GitHubu. Kontrola kódu má několik výhod. Můžete ho použít k vyhledání, třídění a stanovení priorit oprav stávajících problémů nebo potenciálních ohrožení zabezpečení. Je také užitečné zabránit vývojářům v zavedení nových problémů se zabezpečením do kódu.
Další výhodou kontroly kódu je jeho schopnost používat CodeQL. CodeQL umožňuje dotazovat se na kód jako data, což umožňuje vytvářet vlastní dotazy nebo používat dotazy spravované opensourcovou komunitou. Skenování kódu vám dává svobodu přizpůsobit a udržovat, jak je kód ve vašem úložišti skenován.
Výstrahy a pracovní postupy kontroly kódu můžete povolit na kartě zabezpečení úložiště GitHub:
Přečtěte si další informace o skenování kódu aCodeQL .
Kontrola tajných kódů
Další automatizovanou funkcí skenování v úložišti GitHubu je kontrola tajných kódů. Podobně jako předchozí funkce kontroly zabezpečení, hledá kontrola tajných kódů známé tajné kódy nebo přihlašovací údaje zaznamenané v úložišti. Tato kontrola se provádí, aby se zabránilo použití podvodného chování a k zabezpečení integrity citlivých dat. Ve výchozím nastavení probíhá kontrola tajných kódů ve veřejných úložištích a v privátních úložištích můžete povolit kontrolu tajných kódů správci úložiště nebo vlastníky organizace.
Když kontrola tajných kódů zjistí sadu přihlašovacích údajů, GitHub oznámí poskytovateli služeb, který tajný klíč vydal. Poskytovatel služeb ověří přihlašovací údaje. Pak se rozhodne, jestli mají tajný kód odvolat, vydat nový tajný kód nebo se s vámi spojit přímo. Akce závisí na souvisejících rizicích pro vás nebo poskytovatele služeb.
Přečtěte si více o kontrole tajných informací pro veřejná a soukromá úložiště.