Jak przygotować się do testu penetracyjnego

Lista kontrolna dla klienta: co ustalić, co przygotować i kogo powiadomić, zanim testerzy zaczną pracę, aby opłacone dni poszły na testy.

Opublikowano4 min czytania

Test penetracyjny rozlicza się za każdy dzień pracy. Każdy dzień, w którym testerzy czekają na konto, zgadują, jak ma działać jakaś funkcja, albo blokuje ich Twoja własna zapora sieciowa, to dzień, który nie idzie na szukanie podatności. Większość tego czekania można usunąć przed startem.

Zdecyduj

Jakie jest pytanie? „Czy nowy proces płatności można bezpiecznie udostępnić” i „co może nam zrobić ktoś z internetu” prowadzą do różnych testów. Zapisz pytanie w jednym zdaniu; zakres wynika z niego.

Co jest objęte zakresem, a co nie? Wypisz aplikacje, adresy, środowiska. Wypisz też wyłączenia: dostawcę płatności, systemy spółki matki, stary system, który pada, gdy tylko ktoś na niego spojrzy.

Które środowisko? Najlepszym wyborem jest środowisko przedprodukcyjne, które odpowiada produkcyjnemu: testerzy mogą działać dokładnie, a nic prawdziwego nie jest zagrożone. Jeśli istnieje tylko środowisko produkcyjne, uzgodnij godziny testów i techniki, które są wykluczone.

Ile wiedzą testerzy? Testy z kontami i dokumentacją znajdują w ciągu dnia więcej niż testy na ślepo. Testy na ślepo odpowiadają na jedno wąskie pytanie: co osiągnie ktoś z zewnątrz bez żadnych informacji. Zdecyduj, za co płacisz.

Przygotuj

Konta. Po jednym dla każdej roli, a jeśli produkt dzieli klientów na tenanty, to w dwóch oddzielnych tenantach: kontroli dostępu między klientami nie da się przetestować na jednym kliencie. Utwórz konta przed startem, zaloguj się raz na każde z nich i sprawdź, czy zawierają realistyczne dane.

Dokumentacja. Specyfikacje API, schemat architektury, opis ról i głównych procesów. Niedoskonałe dokumenty są lepsze niż żadne.

Dostęp. Jeśli środowisko testowe jest dostępne tylko przez VPN albo z adresów z listy dozwolonych, zorganizuj dostęp z wyprzedzeniem i go przetestuj. Zdecyduj, czy zapora aplikacji webowych pozostaje włączona. Jeśli przedmiotem testu jest aplikacja, przepuść przez zaporę ruch testerów; jeśli przedmiotem testu jest zapora, zostaw ją włączoną i powiedz o tym.

Dane. Wypełnij środowisko testowe danymi, które przypominają prawdziwe strukturą, ale nie treścią. Prawdziwe dane osobowe w środowisku testowym to znalezisko, zanim test w ogóle się zaczął.

Kopie zapasowe. Upewnij się, że testowane środowisko da się przywrócić. Testerzy są ostrożni; kopie zapasowe są na wypadek, w którym ostrożność nie wystarczyła.

Powiadom

Zespół utrzymania i zespół monitoringu, chyba że test ma sprawdzić właśnie ich. Przekaż im adresy, z których pracują testerzy, i daty testów. Inaczej pierwszy dzień skończy się zablokowaniem testerów i otwarciem incydentu.

Dostawcę hostingu lub chmury, jeśli wymagają tego jego zasady. Duzi dostawcy chmury nie wymagają powiadomienia o testach Twoich własnych zasobów, prowadzonych w granicach opublikowanych przez nich zasad; mniejsze firmy hostingowe często go wymagają.

Dostawców zewnętrznych, których systemów dotyczą testy. Ich zgoda musi mieć formę pisemną.

Jedną osobę kontaktową, dostępną w godzinach testów i uprawnioną do podejmowania decyzji: przedłużyć ważność konta, ponownie uruchomić serwis, przerwać test.

Podpisz

  • umowę o zachowaniu poufności (NDA), zanim przekażesz cokolwiek z powyższych;
  • umowę;
  • pisemne upoważnienie i zasady prowadzenia testów.

Do czego służy każdy z tych dokumentów, wyjaśnia artykuł „Co sprawia, że test penetracyjny jest legalny”.

W trakcie testu

  • Nie wdrażaj zmian w testowanym środowisku bez uprzedzenia testerów. Znalezisko, które zniknęło w nocy, kosztuje dzień zamieszania.
  • Nie naprawiaj znalezisk w trakcie testu, z wyjątkiem krytycznych. Jeśli jakieś naprawisz, powiedz o tym.
  • Odpowiadaj szybko na pytania. Tester, który pyta, jak ma działać funkcja, zwykle coś znalazł.
  • Pilnych znalezisk spodziewaj się od razu. O krytycznej podatności informuje się, gdy tylko zostanie potwierdzona, a nie w raporcie końcowym.

Po teście

  • Podsumowanie czytaj z kierownictwem, znaleziska z zespołem technicznym. Są pisane dla różnych odbiorców.
  • Weź udział w omówieniu wyników. To najtańsza godzina całego projektu.
  • Zaplanuj poprawki według priorytetów i daj testerom znać, gdy zostaną wdrożone.
  • Skorzystaj z retestu. Poprawka, której nikt nie zweryfikował, to założenie.
  • Zachowaj poufność raportu. Dopóki poprawki nie są wdrożone, raport jest instrukcją, jak Cię zaatakować. Dla klientów i audytorów jest poświadczenie wykonania testów.

Lista kontrolna

Przed startem Zrobione
Pytanie i zakres zapisane, łącznie z wyłączeniami
Środowisko wybrane, okna testowe uzgodnione
Konta utworzone dla każdej roli, w dwóch tenantach, jeśli produkt je ma
Dokumentacja przekazana
Dostęp sieciowy zorganizowany i sprawdzony
Dane testowe przygotowane, bez prawdziwych danych osobowych
Kopie zapasowe zweryfikowane
Zespół utrzymania, monitoring i dostawcy powiadomieni
Osoba kontaktowa wskazana
NDA, umowa, pisemne upoważnienie, zasady prowadzenia testów podpisane

Na stronie każdej usługi znajdziesz listę tego, czego właśnie ten test potrzebuje od Ciebie.

Zapytanie

Napisz, co trzeba przetestować

  • Bezpłatne sprawdzenie strony
  • Odpowiedź w ciągu 1 dnia roboczego
  • NDA przed przekazaniem szczegółów technicznych
  • Stała cena płatnych projektów
  • Bez zobowiązań

Wyślij zapytanie

Opisz systemy i cel. Menedżer odpowie w ciągu 1 dnia roboczego: zada pytania doprecyzowujące i zaproponuje kolejny krok.

Komu odpowiedzieć

Odpowiadamy na ten adres, chyba że wybierzesz inny kanał.

Osoba prowadząca jednoosobową działalność gospodarczą wpisuje swoje imię i nazwisko.

Preferowany kanał kontaktu
Co sprawdzić
Interesujące Cię usługi

Zaznacz wszystkie, które pasują.

Bezpłatne sprawdzenie

Sprawdzamy Twoją stronę bezpłatnie

Jeśli nie znajdziemy problemów, raport również otrzymujesz bezpłatnie. Za raport płacisz tylko wtedy, gdy znajdziemy problemy, a jego cena zależy od ich liczby i istotności.

Warunki bezpłatnego sprawdzenia bezpieczeństwa strony

Bezpieczeństwo aplikacji

Infrastruktura i chmura

Symulacja ataków

AI, Web3 i kryptografia

Programy i kontrola

Bezpieczeństwo aplikacji

Bezpłatne sprawdzenie bezpieczeństwa strony

Patrzymy na Twoją stronę z zewnątrz, tak jak atakujący, i sprawdzamy, czy można się na nią włamać: słabe ustawienia, nieaktualne oprogramowanie, publicznie dostępne pliki, niebezpieczne formularze. Sprawdzenie jest bezpłatne.

Bezpieczeństwo aplikacji

Testy penetracyjne aplikacji webowych

Próbujemy włamać się do Twojej aplikacji webowej tak, jak zrobiłby to prawdziwy atakujący: zalogować się na cudze konta, odczytać dane innych klientów, zmienić ceny lub zamówienia. Dowiadujesz się, co jest możliwe, zanim dowiedzą się tego przestępcy.

Bezpieczeństwo aplikacji

Testy bezpieczeństwa API

API to kanał, przez który Twoja aplikacja, strona internetowa i partnerzy wymieniają dane z Twoimi serwerami. Sprawdzamy, czy nikt nie może przez nie odczytać ani zmienić cudzych danych.

Bezpieczeństwo aplikacji

Testy penetracyjne aplikacji mobilnych

Badamy Twoją aplikację na iOS lub Androida i stojące za nią serwery: co aplikacja przechowuje w telefonie, co można z niej wydobyć i czy da się podmienić jej żądania.

Bezpieczeństwo aplikacji

Przegląd bezpieczeństwa kodu

Nasi specjaliści czytają kod źródłowy Twojego produktu i znajdują błędy, które prowadzą do włamania, także te niewidoczne z zewnątrz.

Infrastruktura i chmura

Ocena bezpieczeństwa chmury i Kubernetesa

Sprawdzamy, jak skonfigurowana jest Twoja chmura (AWS, Azure, Google Cloud, Kubernetes): kto ma dostęp do czego, które dane są otwarte na internet i jak daleko zajdzie atakujący po pierwszym błędzie.

Infrastruktura i chmura

Testy penetracyjne infrastruktury

Testujemy Twoje serwery i sieć biurową z zewnątrz i od środka: czy atakujący może dostać się do środka, a gdy już tam jest, dotrzeć do systemu księgowego, poczty lub kopii zapasowych.

Infrastruktura i chmura

Ocena zewnętrznej powierzchni ataku

Znajdujemy wszystko, co Twoja firma wystawia do internetu, także to, o czym zapomniano: stare strony, serwery testowe, hasła, które wyciekły. Potem pokazujemy, co z tego można zaatakować.

Infrastruktura i chmura

Bezpieczeństwo CI/CD i łańcucha dostaw

Sprawdzamy drogę, jaką Twój kod przechodzi od programisty do klienta: serwery budowania, biblioteki zewnętrzne, klucze dostępu. Kto kontroluje tę drogę, kontroluje Twój produkt.

Symulacja ataków

Operacje Red Team

Ćwiczenie na pełną skalę. Nasz zespół odgrywa prawdziwego atakującego z konkretnym celem, na przykład dotarciem do danych klientów, a Ty widzisz, czy Twoja obrona go zauważy i zatrzyma.

Symulacja ataków

Ćwiczenia Purple Team

Nasi atakujący i Twoi obrońcy pracują ramię w ramię: pokazujemy technikę ataku, Twój zespół sprawdza, czy ją widzi, a luki w monitoringu są zamykane na miejscu.

Symulacja ataków

Testy socjotechniczne

Testujemy ludzi, a nie maszyny: e-maile phishingowe, telefony i wiadomości, których atakujący używają, by zdobyć hasła. Dowiadujesz się, ilu pracowników dałoby się oszukać i na czym skupić szkolenia.

AI, Web3 i kryptografia

Testy bezpieczeństwa AI i LLM

Jeśli Twój produkt ma chatbota lub inny model AI, sprawdzamy, czy da się go namówić do ujawnienia poufnych danych, złamania własnych zasad albo działania w cudzym imieniu.

AI, Web3 i kryptografia

Audyt smart kontraktów

Zanim smart kontrakt zacznie przechowywać pieniądze, szukamy w jego kodzie błędów, które pozwoliłyby komuś wypłacić lub zamrozić środki. Po wdrożeniu takich błędów nie da się poprawić.

AI, Web3 i kryptografia

Przegląd kryptografii

Sprawdzamy, jak Twój produkt szyfruje dane i chroni klucze: czy wybrano właściwe algorytmy i czy są prawidłowo stosowane. Błąd w tym miejscu sprawia, że szyfrowanie staje się bezużyteczne.

Programy i kontrola

Zarządzanie programem bug bounty

Bug bounty to program, w którym niezależni badacze szukają podatności w Twoim produkcie i otrzymują nagrodę za każdą, którą znajdą. Uruchamiamy i prowadzimy taki program dla Ciebie.

Programy i kontrola

Program ujawniania podatności (VDP)

Publiczna strona i procedura, które mówią badaczom, jak bezpiecznie zgłosić Ci podatność. Bez nich zgłoszenia giną albo przychodzą w formie gróźb. Uruchamiamy ten proces i obsługujemy przychodzące zgłoszenia.

Programy i kontrola

Ciągłe testy penetracyjne

Zamiast jednego testu w roku testujemy każdą istotną zmianę w Twoim produkcie przez cały rok, aby nowa podatność nie czekała miesiącami na wykrycie.

Programy i kontrola

Testy penetracyjne na potrzeby zgodności

Test penetracyjny zorganizowany tak, aby jego raport zaakceptował audytor, regulator lub duży klient: PCI DSS, DORA, NIS2, ISO/IEC 27001, SOC 2.

Interesujące Cię usługi

Jeszcze nie wiem

Wybierz tę opcję, jeśli nie wiesz, której usługi potrzebujesz. Opisz zadanie własnymi słowami, a specjalista zaproponuje usługę w odpowiedzi.

Domena lub adres URL strony internetowej albo głównego systemu do testów, na przykład app.example.com.

Co wymaga testów, dlaczego teraz oraz ewentualny termin lub wymóg zgodności. Bez haseł, kluczy i szczegółów podatności.

Potwierdzenia

Nie przesyłaj przez ten formularz danych logowania, kluczy ani szczegółów podatności. Bezpieczny kanał uzgadniamy po pierwszej odpowiedzi.

Automatyczna weryfikacja chroniąca przed nadużyciami