Skanowanie podatności a testy penetracyjne: czym się różnią?
Bezpieczeństwo oprogramowania jest niezwykle istotne. Zezwól temu oprogramowaniu na dostęp do Internetu, a wymagania dotyczące bezpieczeństwa wzrosną o niewyobrażalny rząd wielkości.
Skuteczna ochrona oprogramowania i jego zasobów wymaga wieloaspektowego podejścia, obejmującego (ale nie ograniczającego się do) skanowanie podatności na zagrożenia i testy penetracyjne. Terminy te są często mylone w branży IT i nie bez powodu.
Testy penetracyjne i skanowanie pod kątem luk są ze sobą mylone.
Oceny podatności i skanuje systemy i profile wyszukiwania pod kątem tego, czego można się spodziewać: luk. Where-as testy penetracyjne sprawdzają zagrożenia aktywnie próbujące osłabić środowisko. Zasadnicza różnica między nimi polega na tym, że skanowanie pod kątem luk w zabezpieczeniach można zautomatyzować, podczas gdy test penetracyjny wymaga różnych poziomów wiedzy specjalistycznej.
Wszystkie sieci, niezależnie od skali, są potencjalnie narażone na zagrożenia. Dokładne monitorowanie i testowanie sieci pod kątem problemów z bezpieczeństwem pozwala eliminować zagrożenia i obniżać ogólne ryzyko. Wiara, że Twoja sieć jest bezpieczna, oparta na założeniach, a nie na testach opartych na danych, zawsze zapewni fałszywe poczucie bezpieczeństwa i może prowadzić do katastrofalnych wyników.

Co to jest skanowanie pod kątem luk w zabezpieczeniach?
Skanowanie pod kątem luk w zabezpieczeniach to termin określający oprogramowanie zaprojektowane do oceny innego oprogramowania, operacji sieciowych lub aplikacji. To oprogramowanie do testowania podatności będzie skanować w poszukiwaniu potencjalnych słabych punktów w kodzie lub strukturze. W ten sam sposób, w jaki inżynier produkcji monitoruje swój produkt pod kątem integralności strukturalnej, testowanie podatności robi to samo, wyszukując słabe punkty lub słabą konstrukcję. Skany identyfikują obszary, w których system może być podatny na atak.
Istnieją dwa typy skanów: uwierzytelnione i nieuwierzytelnione. Różnica polega na tym, że uwierzytelnione skany umożliwiają bezpośredni dostęp do sieci przy użyciu protokołów zdalnych, takich jak bezpieczna powłoka (SSH) lub protokół zdalnego pulpitu (RDP). Nieuwierzytelnione skanowanie może zbadać jedynie informacje widoczne publicznie i nie jest w stanie dostarczyć szczegółowych informacji o zasobach. Ten typ skanowania jest zwykle używany przez analityków bezpieczeństwa próbujących określić stan zabezpieczeń sieci.
Nowoczesne oprogramowanie do skanowania jest często dostępne w formie oprogramowania jako usługi (SaaS) od określonych dostawców tworzących aplikacje z interfejsem internetowym. Aplikacje te umożliwiają skanowanie zainstalowanego oprogramowania, otwieranie portów, sprawdzanie poprawności certyfikatów i wiele więcej.
Skanery korzystają z publikowanych i regularnie aktualizowanych list znanych luk w zabezpieczeniach, które są dostępne w powszechnie używanym oprogramowaniu. Luki nie trafiają na listę, dopóki nie zostanie zauważalna poprawka (która może stwarzać trudności w przypadku ataków typu zero-day). Gdy oprogramowanie wykryje anomalię, dostarczana jest łatka. Oprogramowanie ma za zadanie wykrywać problemy poprzez wysyłanie zapytań do oprogramowania o informacje o wersji i obserwowanie odpowiedzi, jakie oprogramowanie zapewnia na określone żądania.
Luki są klasyfikowane według priorytetu. Krytyczne luki wskazują na duże prawdopodobieństwo, że osoba atakująca może wykorzystać słabe punkty i wyrządzić szkody. Zagrożenia o niższym priorytecie mogą pomóc intruzom w zebraniu informacji, ale nie pozwalają bezpośrednio na naruszenia.
Centrum Bezpieczeństwa Internetowego (CIS) uważa ciągłe skanowanie pod kątem luk w zabezpieczeniach za kluczowy wymóg skutecznej cyberobrony.

Co to są testy penetracyjne?
W przeciwieństwie do skanowania podatności, testy penetracyjne (znane również jako „test pióra”) to autoryzowany atak, symulowany w systemie komputerowym, mający na celu ocenę bezpieczeństwa systemu. Testy przeprowadzane są w celu zidentyfikowania słabych punktów (podatności), takich jak możliwości uzyskania dostępu do funkcji lub danych systemu. Sporządza również ocenę ryzyka całego systemu.
Test penetracyjny może pomóc w ustaleniu, czy system jest podatny na atak, czy obecne systemy obronne są wystarczające, a jeśli nie, które mechanizmy obronne zostały pokonane.
Testy penetracyjne mogą dotyczyć znanych luk w aplikacjach lub typowych wzorców występujących w wielu aplikacjach. Potrafi znaleźć nie tylko defekty oprogramowania, ale także słabe strony aplikacji i konfiguracji sieci.
Zazwyczaj istnieje pięć etapów testów penetracyjnych:
- Rekonesans - zbieranie informacji na temat systemu, który ma być celem.
- Skanowanie - narzędzia do testów penetracyjnych wykorzystywane w celu pogłębienia wiedzy osoby atakującej o systemie.
- Uzyskiwanie dostępu - korzystając z wcześniej zebranych danych, osoba atakująca może zaatakować exploit w systemie.
- Utrzymywanie dostępu - podejmowanie kroków mających na celu pozostanie w docelowym środowisku w celu zebrania jak największej ilości danych.
- Zacieranie śladów - osoba atakująca musi usunąć z systemu wszelkie ślady ataku, w tym wszelkiego rodzaju zebrane dane lub zarejestrowane zdarzenia, aby zachować anonimowość.
Popularną techniką są pakiety „fuzzowane”. Są to uzasadnione żądania kierowane do aplikacji zawierające losowo zmieniony jeden lub kilka znaków. Ćwiczą zdolność systemu do prawidłowego radzenia sobie z błędnymi danymi wejściowymi.
Podobnie jak w przypadku skanowania podatności, testy mogą być uwierzytelnione lub nieuwierzytelnione. Uwierzytelniony test jest uruchamiany jako zarejestrowany i zalogowany użytkownik w sieci wewnętrznej, natomiast test nieuwierzytelniony będzie wykonywany ze źródła zewnętrznego bez uprawnień sieciowych.
W niektórych przypadkach testowanie wykracza poza wysyłanie i odbieranie danych i bada procesy biznesowe organizacji. Jeśli mieści się to w przydzielonym im zakresie, testerzy mogą wysyłać wiadomości phishingowe, aby sprawdzić zdolność użytkowników do wychwytywania fałszywych żądań. Mogą nawet próbować wkraść się do obiektów, aby przetestować bezpieczeństwo fizyczne.
Eksperci ds. bezpieczeństwa klasyfikują testy piórkowe jako „białą skrzynkę” lub „czarną skrzynkę”. „Test białej skrzynki wykorzystuje jak najwięcej informacji o systemie docelowym. Obejmuje to uruchamiane oprogramowanie, architekturę sieci, a czasem nawet kod źródłowy. Test czarnej skrzynki wykorzystuje wyłącznie publicznie dostępne informacje.
Test białej skrzynki powinien w zasadzie wykryć więcej problemów, ponieważ zawiera więcej informacji do dalszego wyjaśnienia. Jednak testerowi penetracji łatwo jest uzależnić się od tego, co wie o systemie i nie używać tak bardzo swojej wyobraźni. Testerzy czarnych skrzynek zaczynają z tej samej pozycji, co intruz z zewnątrz i muszą bez pomocy znaleźć słabe punkty. Mogą opracować podejścia, o których nie pomyślą testerzy białej skrzynki. Obie metody mają swoje zalety i wady.
Testy piórkowe nie są pojedynczym rozwiązaniem bezpieczeństwa, ale elementem pełnego audytu bezpieczeństwa. Na przykład, aby zachować zgodność ze standardem PCI, standard bezpieczeństwa danych branży kart płatniczych wymaga regularnie planowanych testów penetracyjnych zabezpieczeń, zwłaszcza po zmianach systemu.
Zrozumienie raportów z testów bezpieczeństwa
Wynikiem obu typów testów jest szczegółowy raport na temat wszelkich wykrytych problemów. Raporty o lukach w zabezpieczeniach są długie, ale proste. Dla każdego problemu w raporcie podawane jest źródło, ocena ważności, opis i działanie zaradcze. Typowym lekarstwem jest instalacja łatki. Jeśli oprogramowanie ma słabe punkty i wydawca już go nie utrzymuje, konieczna może być wymiana na coś bezpieczniejszego. Pracownicy InfoSec muszą przeprowadzić szczegółową segregację na liście, eliminując lub odraczając działania tam, gdzie luka stwarza niewielkie ryzyko lub nie stwarza żadnego zagrożenia.
Raport z testu penetracyjnego będzie zawierał mniej elementów, ale ich wyjaśnienie i naprawienie nie będzie tak proste. Będzie opisana technika ataku, która często jest niejednoznaczna. Wyjaśni to potencjalne skutki. Rozwiązaniem może być proste rozwiązanie, takie jak ograniczenie dostępu. W innych przypadkach znalezienie rozwiązania może wymagać poważnej analizy. Solidny raport umieści wyniki w kontekście i dostarczy szczegółowych zaleceń dotyczących środków zaradczych.
Różnica między testowaniem penetracyjnym a procesem skanowania podatności
>Przeprowadzenie testu penetracyjnego jest uważane za trudniejsze lub przynajmniej bardziej wymagające niż skanowanie podatności.
Test penetracyjny polega na próbie włamania się do systemu bezpieczeństwa. Jeśli system ma odpowiednie zabezpieczenia, spowoduje to uruchomienie alarmów. Chociaż administratorzy muszą znać różnicę między testem a prawdziwym zagrożeniem, nie mogą stracić czujności przed wiarygodnymi atakami, które mogą mieć miejsce w tym samym czasie.
W idealnym przypadku test penetracyjny powinien być przeprowadzany raz w roku, natomiast testowanie podatności powinno być przeprowadzane w sposób ciągły.
Test penetracyjny wymaga więcej kreatywności niż skanowanie podatności, ponieważ szuka sposobów wykorzystania zwykłego toku działalności. Na przykład dyrektor generalny może przesłać swoje hasło do swojej poczty internetowej, używając tego samego hasła, co wewnętrzne hasło LDAP. Aby opracować nowe strategie testowania, warto współpracować z ludźmi, którzy są kreatywni, ale mają także techniczne możliwości przeprowadzenia ataku.
Skanowanie pod kątem luk w zabezpieczeniach to niezbędny proces zapewniający bezpieczeństwo informacji i sieci. Każdy nowo dodany sprzęt lub oprogramowanie powinno zostać poddane skanowi pod kątem luk w zabezpieczeniach w ciągu miesiąca po jego przeprowadzeniu. Niezbędne jest ustalenie podstawowego wyposażenia, które będzie regularnie aktualizowane i konserwowane. Wszelkie otwarte porty lub zmiany wykryte po skanowaniu należy zbadać i uznać za poważne.

Skanowanie podatności i testy penetracyjne są niezbędne
Aby zapewnić szczegółowy i dobrze chroniony poziom bezpieczeństwa sieci, należy podjąć szczegółowe kroki w celu przeprowadzenia zarówno skanowania podatności, jak i testów penetracyjnych. Sondowanie pod kątem luk pozwala znaleźć niezałatane i źle utrzymane oprogramowanie. Skłania personel IT do aktualizacji oprogramowania, w przypadku którego wystąpiły problemy lub potencjalne słabe punkty. Jeśli nie jest to możliwe, zespół musi znaleźć obejście problemu lub wymienić oprogramowanie.
Skanowanie nie wykryje wszystkich problemów. Najpewniejszym sposobem sprawdzenia, czy system jest bezpieczny, jest próba jego złamania. Dzięki temu wykryte zostaną nie tylko defekty oprogramowania, ale także niepewne połączenia, słabości konfiguracji i ujawnione dane.
Razem skanowanie podatności na zagrożenia i testy penetracyjne stanowią potężne narzędzia bezpieczeństwa sieci używane do monitorowania i ulepszania programów bezpieczeństwa informacji.