Jedním z nejčastějších bezpečnostních problémů je používání zastaralých verzí závislostí (knihoven, komponent), které obsahují známé a opravené bezpečnostní chyby. V poslední verzi OWASP Top 10 se dostal na deváté místo. GitHub již od listopadu 2017 disponuje funkcí Security Alerts, která umí tyto zastaralé komponenty najít a upozornit vás, pokud je používáte.
Nyní je tato funkce k dispozici i pro .NET aplikace a umí vás upozornit na potenciálně nebezpečné NuGet balíčky. Funkce podporuje jak klasické .NET Framework aplikace (kde je seznam balíčků v packages.config
) tak nové .NET Core aplikace, kde jsou referencované balíčky přímo v .csproj
souboru.
Jak se o problému dozvíte
Ve výchozím nastavení vás GitHub upozorní na potenciálně nebezpečné závislosti e-mailem:
Rovněž vás upozorní žlutým výstražným bannerem přímo na hlavní stránce příslušného repozitáře:
Způsoby upozornění lze změnit v nastavení.
Přehled všech aktuálních alertů v repozitáři najdete na záložce Insights v sekci Alerts. Tam najdete také odkaz na podrobnější informace o příslušné zranitelnosti:
Co s tím
OK. Notifikaci jste dostali. A teď, co s tím? Samozřejmě nejjednodušší a nejsprávnější řešení je, že aktualizujete NuGet balíčky na nejnovější verzi (nebo alespoň na verzi, která řeší problém, na který jste byli upozorněni). V takovém případě alert automaticky zmizí.
V případě, že to učinit nemůžete nebo nehodláte, máte možnost alert zrušit pomocí tlačítka Dismiss, přičemž vyberete důvod, pro který jste se alert rozhodli ignorovat.
U aktivně vyvíjených projektů obvykle nebývá s udržováním aktuálních verzí komponent zásadnější problém. Ale jakmile projekt přejde do fáze údržby, může to být náročnější, zejména pokud je projektů hodně a vývojářů málo. Alerty z GitHubu tudíž mohou přijít vhod a proto tuto funkci hodnotím velmi pozitivně.