Testowanie podatności
Testowanie narażenia na atak, zwane również oceną narażenia na atak, to proces oceny zagrożeń bezpieczeństwa w systemach oprogramowania w celu zmniejszenia prawdopodobieństwa wystąpienia zagrożeń. Celem testowania podatności jest ograniczenie możliwości uzyskania nieautoryzowanego dostępu do systemów przez intruzów / hakerów. Zależy to od mechanizmu o nazwie Vulnerability Assessment and Penetration Testing (VAPT) lub VAPT testing.
Podatność to jakikolwiek błąd lub słabość w procedurach bezpieczeństwa systemu, projekcie, implementacji lub jakiejkolwiek kontroli wewnętrznej, która może skutkować naruszeniem polityki bezpieczeństwa systemu.
W tym samouczku nauczysz się:
- Co to jest ocena podatności
- Dlaczego ocena podatności
- Proces oceny podatności i testów penetracyjnych (VAPT)
- Jak przeprowadzić testy podatności
- Rodzaje skanera podatności
- Narzędzia do skanowania luk w zabezpieczeniach
- Zalety oceny podatności
- Wady oceny podatności
- Porównanie oceny podatności i testów penetracyjnych
- Metody testowania podatności
Dlaczego ocena podatności
- Jest to ważne dla bezpieczeństwa organizacji.
- Proces lokalizowania i zgłaszania luk w zabezpieczeniach, który umożliwia wykrywanie i rozwiązywanie problemów związanych z bezpieczeństwem poprzez uszeregowanie luk w zabezpieczeniach, zanim ktoś lub coś je wykorzysta.
- W tym procesie systemy operacyjne, aplikacje i sieć są skanowane w celu zidentyfikowania występowania luk w zabezpieczeniach, które obejmują niewłaściwy projekt oprogramowania, niezabezpieczone uwierzytelnianie itp.
Proces oceny podatności
Oto proces oceny luk w zabezpieczeniach krok po kroku w celu zidentyfikowania luk w systemie.
Krok 1) Cele i zadania: - Zdefiniuj cele i zadania analizy podatności.
Krok 2) Zakres : - Podczas przeprowadzania Oceny i testu, zakres Zadania musi być jasno określony.
Oto trzy możliwe zakresy, które istnieją:
- Testowanie czarnoskrzynkowe: - Testowanie z sieci zewnętrznej bez wcześniejszej wiedzy o sieci wewnętrznej i systemach.
- Testy Gray Box: - Testowanie z sieci zewnętrznych lub wewnętrznych ze znajomością sieci wewnętrznej i systemu. Jest to połączenie testów czarnoskrzynkowych i białoskrzynkowych.
- Testowanie białej skrzynki: - Testowanie w sieci wewnętrznej ze znajomością sieci wewnętrznej i systemu. Znany również jako testy wewnętrzne.
Krok 3) Gromadzenie informacji : - Uzyskanie jak największej ilości informacji o środowisku IT, takich jak sieci, adres IP, wersja systemu operacyjnego itp. Ma to zastosowanie do wszystkich trzech typów zakresów, takich jak testowanie czarnoskrzynkowe, testowanie szarych skrzynek i testowanie białoskrzynkowe.
Krok 4) Wykrywanie luk : - W tym procesie skanery luk są używane do skanowania środowiska IT i identyfikowania luk.
Krok 5) Analiza i planowanie informacji : - Przeanalizuje zidentyfikowane luki w celu opracowania planu penetracji sieci i systemów.
Jak przeprowadzić ocenę podatności
Poniżej przedstawiono krok po kroku proces przeprowadzania oceny podatności :
Krok 1) Konfiguracja:
- Rozpocznij dokumentację
- Bezpieczne uprawnienia
- Aktualizuj narzędzia
- Konfiguruj narzędzia
Krok 2) Wykonanie testu:
- Uruchom narzędzia
- Uruchom przechwycony pakiet danych (pakiet to jednostka danych, która jest kierowana między źródłem a miejscem docelowym. Gdy wysyłany jest dowolny plik, na przykład wiadomość e-mail, plik HTML, żądanie Uniform Resource Locator (URL) itp. z jednego miejsca do drugiego w Internecie, warstwa TCP protokołu TCP / IP dzieli plik na kilka „porcji” w celu wydajnego routingu, a każdy z tych fragmentów będzie miał niepowtarzalny numer i będzie zawierał adres internetowy miejsca docelowego. porcje nazywane są pakietami. Gdy wszystkie pakiety dotrą, zostaną ponownie złożone w oryginalnym pliku przez warstwę TCP na końcu odbierającym podczas działania narzędzi oceny
Krok 3) Analiza podatności:
- Definiowanie i klasyfikowanie zasobów sieciowych lub systemowych.
- Nadanie priorytetu zasobom (np .: - wysoki, średni, niski)
- Identyfikacja potencjalnych zagrożeń dla każdego zasobu.
- Opracowanie strategii radzenia sobie w pierwszej kolejności z problemami o najwyższym priorytecie.
- Definiowanie i wdrażanie sposobów minimalizacji skutków ataku.
Krok 4) Raportowanie
Krok 5) Środki zaradcze:
- Proces naprawiania luk.
- Wykonywany dla każdej luki
Rodzaje skanera podatności
- Oparty na hoście
- Identyfikuje problemy w hoście lub systemie.
- Proces odbywa się za pomocą skanerów hostowych i diagnozuje luki.
- Narzędzia oparte na hoście załadują oprogramowanie mediatora do systemu docelowego; będzie śledzić zdarzenie i zgłosić je analitykowi bezpieczeństwa.
- Oparte na sieci
- Wykryje otwarty port i zidentyfikuje nieznane usługi działające na tych portach. Wtedy ujawni możliwe luki związane z tymi usługami.
- Ten proces jest wykonywany przy użyciu skanerów sieciowych.
- Oparte na bazie danych
- Zidentyfikuje zagrożenie bezpieczeństwa w systemach baz danych przy użyciu narzędzi i technik zapobiegających iniekcjom SQL. (Zastrzyki SQL: - Wstrzykiwanie instrukcji SQL do bazy danych przez złośliwych użytkowników, którzy mogą odczytywać poufne dane z bazy danych i aktualizować dane w bazie danych).
Narzędzia do skanowania luk w zabezpieczeniach
Intruz
Intruder to potężny internetowy skaner luk w zabezpieczeniach, który wykrywa luki w zabezpieczeniach w całym środowisku IT. Oferując wiodące w branży testy bezpieczeństwa, ciągłe monitorowanie i łatwą w użyciu platformę, Intruder chroni firmy każdej wielkości przed hakerami.
Funkcje:
- Najlepsza w swojej klasie ochrona przed zagrożeniami z ponad 10 000 kontrolami bezpieczeństwa
- Sprawdza słabe punkty konfiguracji, brakujące poprawki, słabe punkty aplikacji (takie jak wstrzykiwanie SQL i skrypty między witrynami) i nie tylko
- Automatyczna analiza i priorytetyzacja wyników skanowania
- Intuicyjny interfejs, szybki w konfiguracji i uruchomieniu pierwszych skanów
- Proaktywne monitorowanie bezpieczeństwa pod kątem najnowszych luk w zabezpieczeniach
- Łączniki AWS, Azure i Google Cloud
- Integracja API z potokiem CI / CD
Kategoria | Narzędzie | Opis |
---|---|---|
Oparty na hoście | STAT | Skanuj wiele systemów w sieci. |
TARA | Asystent ds. Badań analitycznych Tiger. | |
Cain i Abel | Odzyskaj hasło, węsząc sieć, łamiąc hasło HTTP. | |
Metasploit | Platforma open source do tworzenia, testowania i wykorzystywania kodu. | |
Oparte na sieci | Cisco Secure Scanner | Diagnozuj i naprawiaj problemy z bezpieczeństwem. |
Wireshark | Open Source Network Protocol Analyzer dla systemów Linux i Windows. | |
Nmap | Darmowe narzędzie Open Source do audytu bezpieczeństwa. | |
Nessus | Audyt bezagentowy, integracja raportowania i zarządzania poprawkami. | |
Oparte na bazie danych | Dieta SQL | Drzwi narzędzia Dictionary Attack dla serwera SQL. |
Bezpieczny audytor | Umożliwienie użytkownikowi wykonywania wyliczeń, skanowania, audytu i testów penetracyjnych oraz kryminalistycznych w systemie operacyjnym. | |
Skanowanie bazy danych | Wykrywanie trojana bazy danych, wykrywanie ukrytego trojana poprzez skanowanie podstawowe. |
Zalety oceny podatności
- Dostępne są narzędzia Open Source.
- Identyfikuje prawie wszystkie luki w zabezpieczeniach
- Zautomatyzowany do skanowania.
- Łatwy do regularnego uruchamiania.
Wady oceny podatności
- Wysoki odsetek wyników fałszywie pozytywnych
- Można go łatwo wykryć za pomocą zapory systemu wykrywania włamań.
- Często nie zauważają najnowszych luk w zabezpieczeniach.
Porównanie oceny podatności i testów penetracyjnych
Ocena podatności | Testy penetracyjne | |
---|---|---|
Pracujący | Odkryj luki w zabezpieczeniach | Identyfikuj i wykorzystuj luki w zabezpieczeniach |
Mechanizm | Wykrywanie i skanowanie | Symulacja |
Skupiać | Szerokość nad głębokością | Głębokość nad szerokością |
Pokrycie kompletności | Wysoki | Niska |
Koszt | Niski - Umiarkowany | Wysoki |
Wykonane przez | Personel wewnętrzny | Atakujący lub Pen Tester |
Wiedza testera | Wysoki | Niska |
Jak często biegać | Po załadowaniu każdego sprzętu | Raz w roku |
Wynik | Podaj częściowe szczegóły dotyczące luk w zabezpieczeniach | Podaj pełne informacje o lukach w zabezpieczeniach |
Metody testowania podatności
Aktywne testowanie
- Testowanie nieaktywne, tester wprowadza nowe dane testowe i analizuje wyniki.
- Podczas procesu testowania testerzy tworzą mentalny model procesu, który będzie się dalej rozwijał podczas interakcji z testowanym oprogramowaniem.
- Podczas wykonywania testu tester będzie aktywnie uczestniczył w procesie wyszukiwania nowych przypadków testowych i nowych pomysłów. Dlatego nazywa się to testowaniem aktywnym.
Testowanie pasywne
- Testowanie pasywne, monitorowanie wyniku działania testowanego oprogramowania bez wprowadzania nowych przypadków testowych lub danych
Testowanie sieci
- Testowanie sieci to proces mierzenia i rejestrowania aktualnego stanu pracy sieci w określonym przedziale czasu.
- Testowanie jest wykonywane głównie w celu przewidzenia sieci działającej pod obciążeniem lub znalezienia problemów stwarzanych przez nowe usługi.
- Musimy przetestować następujące cechy sieci: -
- Poziomy wykorzystania
- Liczba użytkowników
- Wykorzystanie aplikacji
Testowanie rozproszone
- Testy rozproszone są stosowane do testowania aplikacji rozproszonych, czyli aplikacji, które działają jednocześnie z wieloma klientami. Zasadniczo testowanie aplikacji rozproszonej oznacza osobne testowanie jej części klienckiej i serwerowej, ale przy użyciu metody testowania rozproszonego możemy przetestować je wszystkie razem.
- Części testowe będą ze sobą współdziałać podczas przebiegu testowego. To sprawia, że są synchronizowane w odpowiedni sposób. Synchronizacja jest jednym z najważniejszych punktów w testowaniu rozproszonym.
Wniosek
W inżynierii oprogramowania testowanie podatności zależy od dwóch mechanizmów, a mianowicie oceny podatności i testów penetracyjnych. Oba te testy różnią się od siebie siłą i zadaniami, które wykonują. Jednak w celu uzyskania obszernego raportu dotyczącego testowania luk w zabezpieczeniach zaleca się połączenie obu procedur.
Ten artykuł jest autorstwa Syamini Sreedharan