V počítačové bezpečnosti se termín „ vulnerability “ ( anglicky vulnerability , slangově - díra ) používá k označení chyby v systému, pomocí které můžete úmyslně narušit jeho integritu a způsobit nesprávnou činnost. Zranitelnost může být důsledkem programovacích chyb , nedostatků v návrhu systému, slabých hesel , virů a jiného malwaru , skriptů a injekcí SQL . Některé zranitelnosti jsou známy pouze teoreticky, zatímco jiné jsou aktivně využívány a mají známé exploity .
Chyba zabezpečení obvykle umožňuje útočníkovi „oklamat“ aplikaci, aby provedla akce, které nebyly zamýšleny tvůrcem, nebo přinutit aplikaci provést akci, ke které by neměla mít práva. A to tak, že se do programu nějakým způsobem vloží data nebo kód na taková místa, že je program bude vnímat jako „svá“. Některé zranitelnosti se objevují kvůli nedostatečnému ověření uživatelského vstupu a umožňují vkládání libovolných příkazů do interpretovaného kódu ( SQL injection , XSS , SiXSS ). Další zranitelnosti pocházejí ze složitějších problémů, jako je narušení zabezpečení paměti , jako je přetečení vyrovnávací paměti . Nalezení zranitelnosti se někdy nazývá probing , když se například mluví o prozkoumávání vzdáleného počítače, myslí se tím hledání otevřených síťových portů a přítomnost zranitelností spojených s aplikacemi využívajícími tyto porty. [jeden]
Způsob hlášení zranitelností je jedním z bodů sporu v komunitě počítačové bezpečnosti . Někteří odborníci obhajují okamžité úplné zveřejnění informací o zranitelnostech, jakmile jsou nalezeny. Jiní doporučují hlásit zranitelnosti pouze těm nejvíce ohroženým uživatelům a zveřejňovat úplné informace až po prodlevě nebo je nepublikovat vůbec. Taková zpoždění mohou umožnit těm, kteří byli upozorněni, opravit chybu vývojem a aplikací záplat , ale mohou také zvýšit riziko pro ty, kteří nejsou obeznámeni s podrobnostmi.
Existují nástroje, které vám mohou pomoci najít zranitelná místa ve vašem systému. I když tyto nástroje mohou auditorovi poskytnout dobrý přehled o možných zranitelnostech, které v systému existují, nemohou nahradit lidskou účast na jejich hodnocení.
Pro zajištění bezpečnosti a integrity systému je nutné jej neustále sledovat: instalovat aktualizace, používat nástroje, které pomáhají čelit případným útokům. Chyby zabezpečení byly nalezeny ve všech hlavních operačních systémech, včetně Microsoft Windows , Mac OS , různých variant UNIXu (včetně GNU/Linuxu ) a OpenVMS . Vzhledem k tomu, že se neustále objevují nové zranitelnosti, jediným způsobem, jak snížit pravděpodobnost jejich použití proti systému, je zůstat ostražití a používat aktualizované verze softwaru.
K identifikaci zranitelností se provádějí pentesty , během kterých se obvykle stanoví seznam testovaných systémů a konkrétní cíl, poté se analyzují dostupné informace a vyberou se prostředky k dosažení tohoto cíle. Cílem penetračního testu může být „ bílá skříňka “ (o které jsou testerovi předem poskytnuty předběžné a systémové informace) nebo „ černá skříňka “ (o které jsou poskytovány pouze základní informace – pokud existují – jiné než společnost název).
Pro řízení protiopatření tak, aby byla bezpečnostní strategie implementována v souladu s pravidly a předpisy platnými pro organizaci, byla vyvinuta sada zásad souvisejících se systémem řízení bezpečnosti informací (ISMS). [2]
Zdroj (fyzický nebo logický) může mít jednu nebo více zranitelností, které může útočník zneužít. Výsledek by mohl potenciálně ohrozit důvěrnost, integritu nebo dostupnost zdrojů vlastněných organizací a/nebo jinými zúčastněnými stranami (zákazníky, dodavateli). [3]
Mezi běžné typy zranitelností patří: