16 czerwca 2021

Wychwycić najsłabsze ogniwa, czyli czym są testy penetracyjne

 

Czym są testy penetracyjne? Jaki jest poziom świadomości zagrożenia cyberprzestępczością wśród organizacji? Przed jakimi niebezpieczeństwami pentesty mogą uchronić firmy, szczególnie w okresie wzmożonej aktywności grup hakerskich, jakim jest pandemia? O tych tematach rozmawialiśmy z Filipem z zespołu Cyber Security w Onwelo.

Zacznijmy od podstaw, czyli od określenia, czym są testy penetracyjne.

Testy penetracyjne to nic innego, jak przeprowadzenie kontrolowanego ataku na system informatyczny u klienta. Co mają na celu? Ocenę bieżącego stanu bezpieczeństwa. Badana jest odporność na złamanie istniejących zabezpieczeń, które mają uchronić przed atakami hakerskimi.

Testy penetracyjne można podzielić na trzy kategorie: white hat, grey hat oraz black hat. Testy white hat są przeprowadzane z dostępem do wszystkich potrzebnych informacji dotyczących aplikacji, łącznie z kodem źródłowym. Grey hat to testy, w których testerom jest udostępnione środowisko testowe oraz konta użytkowników. Natomiast black hat to opcja, w której tester dostaje tylko adres aplikacji i z tego poziomu musi wykonać testy.

Czy klienci są świadomi grożącego im niebezpieczeństwa? Czy raczej są zaskoczeni wynikami przeprowadzonych testów?

Te testy mają na celu uświadomienie właścicieli produktu, jak wygląda poziom jego bezpieczeństwa. Organizacje zgłaszają się do nas z potrzeby sprawdzenia bieżącego stanu i upewnienia się, że wszystko jest w porządku przed uruchomieniem danego produktu w środowisku produkcyjnym, do którego dostęp będą mieć użytkownicy.  Zdarza się, że klientowi zależy, żeby przeprowadzić testy w środowisku produkcyjnym, na żywym organizmie. Najczęściej jednak jest to środowisko testowe, bo jest ono łatwiejsze do kontrolowania i ewentualnego przywrócenia w przypadku jakichś problemów technicznych wywołanych testami. Nie niesie ono ze sobą żadnego ryzyka dla ciągłości funkcjonowania systemu.

Często bywa tak, że klienci nie są świadomi, jakie zagrożenia na nich czyhają, ale zdarza się również, że system jest w miarę bezpieczny i nie ma żadnych krytycznych błędów pozwalających na jakiś nieuprawniony dostęp do danych. Zawsze warto to sprawdzić. Tym bardziej że obecne regulacje prawne wymagają od organizacji przeprowadzenia testów, jeśli ta przetwarza dane osobowe.

Jakie korzyści może przynieść wykonanie testów penetracyjnych?

Wczesne wykrycie podatności pozwala uniknąć konsekwencji wynikających z wykorzystania ich w ataku hakerskim. Odnalezienie i poprawienie błędów w fazie przedprodukcyjnej, przed udostępnieniem produktu użytkownikom, pozwala uniknąć wysokich kosztów związanych z nałożonymi karami, kosztów naprawy czy zatrzymania funkcjonowania systemu. Do tego dochodzi dbałość o dobry wizerunek organizacji, który dzięki odpowiednim zabezpieczeniom jest w pełni zachowany.

Czy są branże, w których jest wzmożona konieczność wykonywania takich testów?

Na pewno bankowość jest taką kategorią biznesową, która bardzo mocno opiera swoje bezpieczeństwo na bezpieczeństwie informatycznym. Wszystkie duże banki posiadają własne zespoły odpowiedzialne za bezpieczeństwo, za przeprowadzanie testów penetracyjnych. Testy zalecane są również ich dostawcom zewnętrznym. Wszelkie problemy informatyczne w instytucjach finansowych negatywnie odbijają się na wizerunku.

Czy pandemia przyczyniła się do zwiększenia zjawiska ataków hakerskich?

Lockdown i praca zdalna spowodowały wzmożoną aktywność grup hakerskich czy grup APT (ang. Advanced Persistent Threats), które kierują swoje ataki na większe organizacje. Hakerzy dostają się do sieci wewnętrznej organizacji, blokują, szyfrują dane i żądają od firmy okupu. Tego typu ataki mają swój początek w dostarczeniu złośliwego oprogramowania przez pocztę elektroniczną. Każdy atak zaczyna się więc od nieświadomego użytkownika, który otwiera link lub pobiera załącznik. Stwierdzenie, że człowiek jest najsłabszym ogniwem w łańcuchu zabezpieczeń systemu informatycznego, jest jak najbardziej prawdziwe. Świadomość organizacji rośnie w obszarze zagrożeń cyberprzestępczych, ale wciąż nie jest wystarczająca wysoka w porównaniu ze skalą tego zjawiska.

Warto tutaj wspomnieć o tym, że grupy hakerskie nie mają ograniczeń czasowych. Jeśli dysponują czasem i zasobami, to mogą przygotować naprawdę zaawansowany i precyzyjnie skierowany atak. Dlatego zdarzają się ataki na osoby, które teoretycznie powinny być świadome i uważne, a jednak też dają się złapać w zastawione sidła.

Jak w takim razie możecie wesprzeć organizacje w temacie zachowania bezpieczeństwa i przeprowadzenia testów penetracyjnych?

W Onwelo najczęściej przeprowadzamy testy aplikacji webowych w metodologii grey hat, w której klient dostarcza nam środowisko i dostępy do aplikacji. Mając dostęp do środka, ale nie mając kodu źródłowego, testujemy wszystkie funkcjonalności i sprawdzamy, czy nie ma podatności w danych kategoriach. Skupiamy się więc na wypracowanych kategoriach, ale czasami zdarzają się sytuacje, w których znajdujemy nieznane wcześniej podatności, nieprzypisane do żadnej z nich. Je również umiejętnie wyławiamy.

Proces rozpoczyna się od analizy przedmiotu testów. Określamy plan działania, czas i zasoby potrzebne do przeprowadzenia testów i przechodzimy do realizacji. Etapem końcowym testów jest przygotowanie raportu przedstawiającego znalezienie podatności, opisującego stan bezpieczeństwa systemu.

Przeprowadzamy cykliczne testy penetracyjne, a cykliczność zwiększa skuteczność wykrywania podatności. Możemy w ten sposób sprawdzać, czy wprowadzone do systemu poprawki nie wniosły nowego zagrożenia. W realizacji testów penetracyjnych bardzo istotna jest rzetelność, zwrócenie uwagi na każdy detal, przewidzenie potencjalnych zagrożeń. Ta uważność przekłada się na jakość usługi, a tym samym na bezpieczeństwo klienta.

Więcej informacji o wsparciu Onwelo w obszarze bezpieczeństwa IT można znaleźć na stronie internetowej.

Zostaw komentarz

Polecamy

Spock vs JUnit

Spock vs JUnit

Testy automatyczne to potężne narzędzie w arsenale programisty. Nowoczesne frameworki do testów ułatwiają ich pisanie oraz pozwalają na lepszą utrzymywalność. Jednymi z popularniejszych rozwiązań na rynku służących do testowania kodu napisanego w Javie są Spock i JUnit.

#Udostępnij

strzałka przewiń do góry strony