W rozmowach ofertowych te trzy pojęcia bywają używane zamiennie, co prowadzi do nieporozumień po obu stronach. Poniżej porównanie, które pozwala ustalić, czego faktycznie potrzebujesz.

Porównanie

Skan podatnościPentestAudyt
Wykonawcanarzędzieczłowiekczłowiek
Pytanieco jest znane i niezałatane?czy da się to wykorzystać?czy proces działa?
Czasgodzinydni do tygodnitygodnie
Rezultatlista CVEpodatności z PoCluki procesowe i zgodności
False positiveslicznebraknie dotyczy

Skan podatności

Narzędzie porównuje wersje oprogramowania i konfigurację z bazą znanych podatności. Jest szybkie, tanie i powtarzalne, dlatego powinno działać w sposób ciągły, a nie raz w roku.

Ograniczenie skanu wynika z jego natury: raportuje to, co pasuje do wzorca. Nie ustala, czy podatna biblioteka jest w ogóle wykorzystywana, czy usługa jest osłonięta innym mechanizmem, ani czy dwa drobne błędy można połączyć w jeden poważny. Stąd raporty liczące setki pozycji, z których realne znaczenie ma kilkanaście.

Skan należy traktować jako element higieny operacyjnej, nie jako test bezpieczeństwa.

Test penetracyjny

Specjalista próbuje przejąć kontrolę nad systemem w sposób, w jaki zrobiłby to atakujący. Podstawową różnicą wobec skanu jest dowód wykorzystania. Raport nie kończy się informacją, że usługa nasłuchuje na porcie 23, lecz opisem przejęcia urządzenia przez ten port wraz z materiałem dowodowym.

Prelegent przy ekranie ze slajdem o ekosystemie IoT, na stole rozłożone urządzenia
Slajd o pełnym łańcuchu ataku podczas prelekcji o hakowaniu IoT. Skaner pokazuje pojedyncze punkty, test penetracyjny składa je w łańcuch.

Ma to trzy praktyczne konsekwencje. W raporcie nie ma false positives, bo każde znalezisko zostało potwierdzone. Ujawniają się podatności niedostępne dla skanerów: błędy logiki biznesowej, łańcuchy złożone z pozornie drobnych problemów oraz błędy we własnym kodzie. Rozmowa z zarządem opiera się na konkretnym scenariuszu zamiast na tabeli wskaźników CVSS.

W przypadku urządzeń dochodzi warstwa nieobecna w testach aplikacji webowych: sprzęt, firmware, interfejsy diagnostyczne, komunikacja radiowa i proces aktualizacji.

Audyt bezpieczeństwa

Audyt ocenia nie system, lecz proces wokół niego. Weryfikuje, czy istnieje ocena ryzyka, kto zatwierdza zmiany, jak przebiega obsługa zgłoszonej podatności i czy dokumentacja odpowiada stanowi faktycznemu.

Audyt odpowiada na pytanie o zgodność, test penetracyjny na pytanie o bezpieczeństwo. Nie zastępują się wzajemnie. Organizacja może dysponować kompletną dokumentacją i jednocześnie sprzedawać urządzenie z domyślnym hasłem administratora zaszytym w firmware.

Którą usługę wybrać

Jeśli budujesz proces od podstaw, sprawdza się następująca kolejność:

  1. Skan uruchomiony na stałe, jako element utrzymania.
  2. Test penetracyjny przed premierą produktu i po każdej istotnej zmianie architektury. Dostarcza materiał do dokumentacji technicznej.
  3. Audyt w momencie pojawienia się wymogu zewnętrznego: CRA, NIS2, ISO 27001 albo ankiety bezpieczeństwa od klienta korporacyjnego.

Przy ocenie ofert pomocne jest jedno pytanie: czy raport będzie zawierał dowód wykorzystania każdej zgłoszonej podatności? Oferta wyceniona na kilka godzin pracy z reguły opisuje skan automatyczny, niezależnie od użytej nazwy. Kwestię wyceny rozwinąłem w tekście ile kosztuje pentest.

Wykonuję testy aplikacji i infrastruktury, a przy urządzeniach oraz systemach przemysłowych pełną analizę obejmującą sprzęt, firmware, komunikację i proces aktualizacji. Zakres opisałem w sekcji usług, a nakład dla każdego typu testu w tekście ile kosztuje pentest.

Jeśli nie masz pewności, która z trzech usług odpowiada Twojej sytuacji, napisz i ustalimy to w jednej rozmowie.