Co to jest DAST (Dynamiczne Testowanie Bezpieczeństwa Aplikacji)?
Dynamiczne testowanie bezpieczeństwa aplikacji, czyli DAST, to metoda sprawdzania bezpieczeństwa aplikacji podczas jej działania. W przeciwieństwie do SAST, które analizuje kod źródłowy, DAST testuje bezpieczeństwo poprzez symulację rzeczywistych ataków, takich jak SQL Injection i Cross-Site Scripting (XSS) w środowisku na żywo.
DAST jest często określane jako testowanie czarnej skrzynki, ponieważ przeprowadza test bezpieczeństwa z zewnątrz.
Dlaczego DAST jest ważne w cyberbezpieczeństwie
Niektóre problemy z bezpieczeństwem pojawiają się tylko podczas działania aplikacji, szczególnie te związane z czasem wykonywania, zachowaniem lub walidacją użytkownika. DAST pomaga organizacjom:
- Odkrywać problemy z bezpieczeństwem, które są pomijane przez narzędzia SAST.
- Ocenić aplikację w rzeczywistych warunkach, w tym front-end i API.
- Wzmocnić bezpieczeństwo aplikacji przed atakami na aplikacje webowe.
Jak działa DAST
- Uruchom aplikację w środowisku testowym lub stagingowym.
- Wyślij złośliwe lub nieoczekiwane dane wejściowe (takie jak spreparowane URL lub ładunki).
- Analizuj odpowiedź aplikacji w celu wykrycia podatności.
- Generuj raporty z sugestiami dotyczącymi naprawy (w Plexicus, jeszcze lepiej, automatyzuje naprawę)
Typowe podatności wykrywane przez DAST
- Wstrzykiwanie SQL: atakujący wstawiają złośliwy kod SQL do zapytań bazodanowych
- Cross-Site Scripting (XSS): złośliwe skrypty są wstrzykiwane do witryn internetowych, które wykonują się w przeglądarkach użytkowników.
- Niezabezpieczone konfiguracje serwera
- Uszkodzone uwierzytelnianie lub zarządzanie sesjami
- Ujawnienie wrażliwych danych w komunikatach o błędach
Korzyści z DAST
- pokrycie luk w zabezpieczeniach pominiętych przez narzędzia SAST
- Symulacja rzeczywistych ataków.
- działa bez dostępu do kodu źródłowego
- wspieranie zgodności z takimi standardami jak PCI DSS, HIPAA i innymi ramami.
Przykład
Podczas skanowania DAST, narzędzie znajduje problem z bezpieczeństwem w formularzu logowania, który nie sprawdza poprawnie, co użytkownicy wpisują. Gdy narzędzie wprowadza specjalnie zaprojektowane polecenie SQL, pokazuje, że witryna może być zaatakowana przez wstrzykiwanie SQL. To odkrycie umożliwia programistom naprawienie luki przed wprowadzeniem aplikacji do produkcji.