Jak na správu komponent, kybersecurity konzulting a další
Víte, jak spravovat a aktualizovat komponenty? Znáte pojem virtuální záplatování? Jak vypadá kybersecurity konzulting v praxi? Jak GitHub zvyšuje bezpečnost aplikačních credentials?
🏆 Téma: Správa komponent
Víc než 90 % kódu v našich aplikacích je tvořeno komponentami třetích stran.
Aplikace se stává zranitelnou, pokud:
neznáme verze používaných komponent (včetně vnořených závislostí),
je software zranitelný, zastaralý nebo nepodporovaný (OS, DB, API…),
neexistuje pravidelný proces pro kontrolu zranitelností,
platforma, framework nebo knihovna není včas aktualizována na základě rizik,
jsou používány neudržované komponenty třetích stran,
vývojáři netestují kompatibilitu po aktualizaci,
není zabezpečena konfigurace komponent.
Spousta firem například používá staré verze Javy a jiných technologií nebo systém pravidelně neaktualizují.
Komponenty a software celkově je potřeba aktualizovat průběžně, protože s sebou nenese jen bezpečnostní rizika.
Při dlouhodobém zanedbání to může znamenat nemožnost upgradu a nutnost přepsání celého systému nebo dané mikroslužby.
velká časová a finanční náročnost pro firmu a velký stres pro vývojáře
Problém s hledáním zaměstnanců - odborníci už nejsou nebo se starou technologií pracovat nechtějí.
Jak na správu komponent
Monitorujte a spravujte aktualizace průběžně (např. jednou měsíčně), a to po celou dobu životnosti aplikace.
Proces lze automatizovat pomocí nástrojů jako je Dependabot, Snyk, Renovate a další.
Nástroj můžete zapojit do pipeline a
pravidelně spouštět aktualizace, skeny a bezpečnostní upgrady / downgrady,
automaticky spravovat a hledat nové verze komponent,
kontrolovat zabezpečení nově přidaných komponent.
Kontrolu provádějte jak na straně klienta, tak serveru.
Odstraňte nepoužívané závislosti, zbytečné funkce, komponenty, soubory a dokumentaci.
Sledujte zdroje jako je CVE, NVD a NÚKIB pro vyhledávání zranitelností v komponentách.
Někde se lze přihlásit k newsletteru a tím proces částečně automatizovat.
Instalujte komponenty pouze ze zabezpečených a legitimních / oficiálních stránek.
Preferujte digitálně podepsané a ověřené komponenty, čímž se sníží pravděpodobnost instalace škodlivé komponenty.
Monitorujte knihovny a komponenty, které nejsou udržovány nebo nevytvářejí bezpečnostní záplaty pro starší verze.
Forkněte si je a spravujte si je sami, pokud jde o open source.
Zvažte vytvoření virtuální záplaty.
Virtuální záplaty
Vrstva pro vynucení zabezpečení, která zabraňuje pokusu o zneužití zranitelnosti.
Pokud software používá zranitelnou komponentu, která nemá bezpečnostní aktualizaci nebo ji nemůžeme udělat (jde o komerční software), musíme danou část zabezpečit v naší aplikaci.
Například používanou funkci obalíme sadou podmínek, extra validací, sanitizací atp. abychom dané zranitelnosti zabránili.
Případně vytvoříme mikroslužbu (takový firewall), který dáme před zranitelnou funkcionalitu.
Použijeme WAF, IPS, web server pluginy (ModSecurity) a další.
→ vždy záleží na kontextu a povaze zranitelnosti.
Podrobný postup pro virtuální záplatování najdete na webu.
🎓 Učíme se společně
Co jsme se dozvěděli z přednášek, školení, čtení knih a dalších aktivit?
KYBEZ podcast s Kristýnou Jakesch
Výzvy v rámci kybernetické bezpečnosti: nedostatek expertů a nedostatek finančních zdrojů (kybernetická bezpečnost je drahá).
Motivace k zabezpečení je způsobena potřebou (např. se stali terčem kybernetického útoku).
Rychlý růst firmy často způsobuje nedostatky v IT a kybersecurity - firma vyrostla tak rychle, že nestihla držet krok v rozvoji IT a zabezpečení.
Z praxe má Kristýna zkušenost s incidentem, kdy se při odeslání e-mailu přidal do kopie neznámý příjemce (může způsobit vynesení firemního tajemství atd.).
Co dělat v případě, že jsme jako firma neřešili kybernetickou bezpečnost a chceme začít?
Poptat specialistu, který dokáže zmapovat terén (aktiva, infrastruktura).
Zmapovat prostředí (asset management, analýza rizik) - musím vědět, co mám chránit.
Definovat si cíle (středně- / dlouhodobé) - musím vědět, kam se chci dostat a do kdy.
Implementace - lidské zdroje, školení, hardening, identity management, vulnerability management.
Další kroky implementace - monitoring, detekční systémy.
V rámci NIS2 bude velké sousto řízení rizik třetích stran (supply chain).
Musí se jasně vymezit, kdo má za co zodpovědnost.
Jako odběratel se musím postarat o to, aby i dodavatel a jeho výstupy byly bezpečné.
Pokud napadnou dodavatele, tak se to dotkne i mě.
Jaké vlastnosti by měl mít dobrý kybersecurity konzultant?
Hard skills - přehled o celém odvětví (aspoň trochu), specializace.
Soft skills (klíčové) - komunikace, chladná hlava, odolnost vůči stresu, umět číst lidi a nalézat společnou řeč, zájem.
📰 Co je nového
Podívejte se, jak zneužít a správně zajistit autorizaci.
Podívejte se, jak hacknout vzdálený server a předcházet code injection.
Podívejte se, jak se přihlásit bez znalosti hesla a předcházet NoSQL injection.
Sledujte Bezpečný kód na YouTube, ať vám neuniknou další videa.
Hackeři z Gazy podnikli kyber útoky na izraelskou kritickou infrastrukturu.
Nejčastěji se jednalo o útoky založené na sociálním inženýrství.
Útočníci vytvořili fake účty na LinkedInu a vystupovali jako zaměstnanci těchto firem.
Svým “kolegům” pak posílali různé zprávy a soubory a snažili se tak dostat malware do organizace.
Microsoft zjistil, že se útočníci snažili vytvořit backdoor na Google drivu, který umožňuje kontrolu nad infrastrukturou.
Jestli se to někomu podařilo, nevíme.
Nové funkcionality GitHub secret scanning nástroje.
GitHub secret scanning je nástroj, který ve zdrojovém kódu hledá hardcodované secrets a upozorňuje nás nebo zamítne push, pokud je v kódu najde.
= Chrání nás před únikem aplikačních credentials.
GitHub vylepšil a přidal skenování a validaci AWS, Google, Microsoft a Slack secretů.
V tomto vylepšení GitHub zkontroluje platnost (validitu) tokenů a (například při úniku tokenu) notifikuje platformu, která token vydala. Pokud token vydal například Microsoft, tak ten se může rozhodnout, jestli token invaliduje, nebo podnikne jiné kroky (např. notifikace).
Funkci je možné zapnout v Settings > Code security and analysis > Secret scanning a zaškrtnout "Automatically verify if a secret is valid by sending it to the relevant partner.”
Funkce je dostupná pro GitHub enterprise nebo veřejné repozitáře.
WordPress malware caching plugin.
Malware skrytě vytváří a maže admin účty a vzdáleně ovládá napadené stránky.
Malware se vydává za plugin, který ukládá data do mezipaměti.
Obsahuje řadu funkcí: zabraňuje zařazení do seznamu aktivních pluginů, disponuje ping funkcí, která pomáhá útočníkovi určit, jestli je skript stále funkční, umí modifikovat soubory, vzdáleně aktivuje a deaktivuje libovolné pluginy.
Je schopný po sobě zahladit stopy a smazat veškeré vytvořené účty a vše vrátit do původního stavu.
Malware umí měnit stránky, příspěvky, vkládat spamové odkazy, přesměrovávat návštěvníky na podvodné weby atd.
= poskytuje všechny funkce, které útočníci potřebují.
Rozsah útoků a přesný počet napadených stránek není znám.
Autoři nezveřejnili jméno tohoto pluginu z dalších bezpečnostních důvodů.
😂 Závěrečný ftípek: Coronavirus fear is everywhere… Today I coughed on my monitor and my antivirus software started running.
🙏 Vyplňte prosím zpětnou vazbu k newsletteru, ať je s každým vydáním lepší a lepší.
🔔 Sledujte nás na LinkedInu, kam pravidelně sdílíme další novinky a know-how.
🆘 S bezpečností vám rádi pomůžeme, klidně nám napište - školíme vývojáře i management, nastavujeme procesy, vyvíjíme bezpečné aplikace a poskytujeme další služby.