Test penetracyjny

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Test penetracyjny – proces polegający na przeprowadzeniu kontrolowanego ataku na system teleinformatyczny, mający na celu praktyczną ocenę bieżącego stanu bezpieczeństwa tego systemu, w szczególności obecności znanych podatności i odporności na próby przełamania zabezpieczeń. Polega na analizie systemu pod kątem występowania potencjalnych błędów bezpieczeństwa spowodowanych niewłaściwą konfiguracją, lukami w oprogramowaniu lub sprzęcie, słabościami w technicznych lub proceduralnych środkach zabezpieczeń, a nawet niewystarczającą świadomością użytkowników. Analiza ta jest przeprowadzana z perspektywy potencjalnego włamywacza i może zawierać aktywne wykorzystywanie podatności (np. poprzez użycie exploitów). Podstawową cechą odróżniającą test penetracyjny od włamania jest zgoda atakowanej strony na tego rodzaju działania, ponadto osoba przeprowadzająca test (zwana pentesterem) jest zobowiązana do przedstawienia raportu dokumentującego znalezione problemy (często wraz ze sposobami ich usunięcia i rekomendacjami podnoszącymi bezpieczeństwo testowanego systemu). Test penetracyjny ma potwierdzać brak podatności systemu na włamanie oraz skuteczność zabezpieczeń w implementacji rzeczywistej lub możliwie najbardziej zbliżonej do rzeczywistej.

W przeciwieństwie do audytu nie musi odbywać się według sformalizowanej metodologii, której zbudowanie byłoby trudne ze względu na szybko zmieniający się stan wiedzy (np. nowe exploity). Skuteczność testu penetracyjnego w dużym stopniu zależy od kompetencji i stanu wiedzy zespołu testującego.

Metodyki testów penetracyjnych[edytuj | edytuj kod]

Istniejące metodyki prowadzenia testów penetracyjnych opisują niezbędne czynności, zabezpieczenia prawne oraz procedury, których powinien przestrzegać zespół testujący, nie zawierają jednak szczegółów na temat konkretnych testów technicznych (algorytmu) jakie należy wykonać:

Rodzaje testów penetracyjnych[edytuj | edytuj kod]

Test penetracyjny może być prowadzony przy różnym poziomie wiedzy zespołu testującego, z dwiema skrajnymi wartościami:

  • Test penetracyjny z minimalną wiedzą (black box) – w największym stopniu stara się odzwierciedlić rzeczywistą wiedzę potencjalnego włamywacza, w związku z czym zespół testujący otrzymuje np. wyłącznie adres serwisu i nic ponadto. Wadą tej metody jest możliwość poświęcenia przez zespół nieproporcjonalnie dużych ilości czasu na działania bezproduktywne, np. próbę złamania hasła na wejściu do serwisu w sytuacji, gdy autentyczny włamywacz mógłby tę wiedzę zdobyć innymi metodami (np. za pomocą phishingu lub metod wiążących się ze złamaniem prawa)
  • Test penetracyjny z pełną wiedzą (white box lub crystal box) – zespół testujący ma pełny dostęp do dokumentacji projektowej, kodu źródłowego, konfiguracji urządzeń sieciowych itd. W przypadku opierania się wyłącznie na tej wiedzy można mówić o „przeglądzie kodu” lub „przeglądzie konfiguracji”. Wadą takiego podejścia jest możliwość pominięcia rozbieżności pomiędzy stanem udokumentowanym a stanem faktycznym.
  • Testy penetracyjne grey box będące kompromisem pomiędzy black box i white box, zawierające elementy obu podejść np. jedynie konta użytkowników o różnych rolach.

Audyt bezpieczeństwa teleinformatycznego nie jest tym samym co test penetracyjny. Audyt opiera się na formalnej specyfikacji stanu pożądanego (normie, akcie prawnym) i prowadzi do jednoznacznego określenia stopnia zgodności audytowanego obiektu ze specyfikacją. Test penetracyjny służy do określenia faktycznego stanu bezpieczeństwa danego obiektu i nie musi być oparty na jakiejś szczególnej specyfikacji[1].

Certyfikaty[edytuj | edytuj kod]

Na rynku dostępne są uznane certyfikaty poświadczające techniczne kompetencje pentesterów, takie jak np.:

  • OSCP (Offensive Security Certified Professional) – Penetration Testing with Kali (PWK), poświadczający ogólne techniczne kompetencje z zakresu testów penetracyjnych.
  • OSWP (Offensive Security Wireless Professional) – poświadczający techniczne kompetencje z zakresu testów penetracyjnych sieci bezprzewodowych.
  • eWPT (eLearnSecurity Web application Penetration Tester) – poświadczający techniczne kompetencje z zakresu testów penetracyjnych aplikacji webowych.

Zobacz też[edytuj | edytuj kod]

Przypisy[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]