W jaki sposób mogą być wykorzystywane luki w zabezpieczeniach i po co są skanery podatności
Mitygacja podatności to ważny temat dla każdego analityka cyberbezpieczeństwa. Wystarczy zauważyć, że producenci z największą liczbą wykrytych podatności to kolejno: Microsoft, Oracle, IBM, Google i Apple. Podatność jest słabością, którą przeciwnik może wykorzystać, aby naruszyć poufność, dostępność lub integralność zasobu, a licencjonowane oprogramowania, którego na co dzień używamy na naszych komputerach jest ich pełne.
Podatność w rozumieniu cyberbezpieczeństwa odnosi się do wad wdrożeniowych lub konsekwencji dla bezpieczeństwa wynikających z wyborów projektowych. Na przykład możliwość przekroczenia granic bufora podczas zapisywania w nim danych wprowadza podatność typu buffer overflow, brak walidacji danych wprowadzanych przez użytkownika naraża system na ataki typu SQL-injection itd. Przykłady znaczących luk w zabezpieczeniach to Heartbleed, Shellshock/Bash i POODLE. Dostępnych jest kilka publicznych repozytoriów podatności, które umożliwiają zainteresowanym łatwy dostęp do informacji dotyczących znanych luk.
Najbardziej znane repozytoria luk w zabezpieczeniach
- Common Vulnerabilities and Exploits (CVE) – celem CVE jest zapewnienie spójnej bazy podatności i wspólnego języka analitykom cyberbezpieczeństwa. Powstałe w 1999 r. publiczne repozytorium podatności organizacji MITRE, zatwierdzone jest przez branżę za pośrednictwem organów CVE Numbering Authorities (vendorów, organizacje i badaczy aktywnie publikujących w CNE), rady CVE oraz wielu produktów i usług opierających swoje funkcjonalności o mitygację CVE. Jak twierdzą sami twórcy – CVE to słownik, nie baza danych. CVE stworzyło system odniesienia do rejestracji luk zwany identyfikatorem CVE (CVE-ID). Identyfikatory CVE zwykle zawierają krótki opis luki w zabezpieczeniach, a czasem porady, środki łagodzące i raporty.
- National Vulnerability Databse (NVD) – repozytorium rządu USA oparte na standardach dotyczących zarządzania podatnościami, zagregowanych przy użyciu SCAP (Security Content Automation Protocol). Dane te umożliwiają automatyzację zarządzania lukami w zabezpieczeniach, pomiaru bezpieczeństwa i zgodności. NVD zawiera odniesienia do list kontrolnych zabezpieczeń, błędów oprogramowania związanych z bezpieczeństwem, błędnych konfiguracji, nazw produktów i wskaźników oddziaływania na „biznes”. Oprócz danych zebranych ze SCAP, NVD automatycznie pobiera dane z CVE.
- Open Vulnerability and Assessment Language (OVAL) – to inicjatywa społeczności zajmująca się bezpieczeństwem informacji, której celem jest standaryzacja sposobu oceny i raportowania stanu systemów komputerowych. OVAL zawiera język do kodowania szczegółów systemu oraz asortyment repozytoriów treści znajdujących się w całej społeczności. Narzędzia i usługi wykorzystują OVAL do trzech etapów oceny systemu – reprezentowania informacji o systemie, wyrażania określonych stanów maszyn i raportowania wyników oceny – zapewniają dokładne, spójne i przydatne informacje, dzięki czemu mogą one poprawić swoje bezpieczeństwo.
Zarządzanie podatnościami identyfikuje, klasyfikuje, ocenia i łagodzi podatności. Specjaliści ds. bezpieczeństwa IT przeprowadzają proces zarządzania lukami w sposób zorganizowany i terminowy, wykonując opisane poniżej czynności:
- Przygotowanie: Należy określić zakres procesu zarządzania podatnościami.
- Skanowanie luk w zabezpieczeniach: Skanery luk w zabezpieczeniach to zautomatyzowane narzędzia, które skanują system w poszukiwaniu znanych luk w zabezpieczeniach i dostarczają raport zawierający wszystkie zidentyfikowane luki posortowane według ich wagi. Znane skanery podatności to np. Tenable Nessus.
- Identyfikacja, klasyfikacja i ocena luk w zabezpieczeniach: Skaner luk w zabezpieczeniach dostarcza raport o zidentyfikowanych lukach.
- Mitygacja podatności: Właściciel aktywów określa, które luki zostaną złagodzone.
- Ponowne skanowanie: Po zakończeniu działań naprawczych przeprowadza się ponowne skanowanie w celu sprawdzenia ich skuteczności. Na tym etapie często wykonywane są również testy penetracyjne w celu zweryfikowania poprawionej postawy obronnej przedsiębiorstwa.
- Monitorowanie i aktualizacje.
W opinii publicznej istnieje pewne zamieszanie związane z testami penetracyjnymi i skanowaniem podatności. Warto podkreślić, że te dwa podejścia właściwie się uzupełniają, a skanowanie luk w zabezpieczeniach jest jednym z pierwszych kroków testu penetracyjnego.
Zrozumieliśmy już czym jest podatność i w jaki sposób wpływa na system – stanowi lukę, którą można wykorzystać by uzyskać nieautoryzowany dostęp do danego zasobu w sieci.
Czym zatem jest exploit?
Exploit to specjalnie spreparowany kod używany przez agresorów do wykorzystania pewnej luki w zabezpieczeniach i złamania zabezpieczeń zasobów. To narzędzie do wykorzystania podatności. Równie popularne co same exploity, są zestawy exploitów. To narzędzia osadzone na zaatakowanych stronach internetowych, które automatycznie skanują komputer odwiedzającego w poszukiwaniu luk i próbują je wykorzystać w czasie rzeczywistym dobierając exploit ze swojej bazy danych. Jeśli exploit powiedzie się, zestaw wprowadzi złośliwe oprogramowanie do systemu użytkownika. Dla specjalistów ds. bezpieczeństwa informacji bardzo niepokojące jest to, że łatwość obsługi i przyjazny interfejs zestawów exploitów pozwalają na ich wdrażanie także użytkownikom niebędącym ekspertami.
Podsumowując – podatność to luka, exploit – to sposób jej wykorzystania w formie specjalnie przygotowanego kodu źródłowego. Na jedną podatność mogą przypaść dziesiątki, a czasami nawet setki exploitów.