DAST (Dynamic Application Security Testing) to testowanie bezpieczeństwa aplikacji w trakcie jej działania. Skaner wysyła do niej spreparowane żądania, tak jak zrobiłby to atakujący, i sprawdza odpowiedzi pod kątem podatności takich jak XSS, SQL Injection czy błędy konfiguracji.
Jak działa DAST?
Narzędzie działa jako „czarna skrzynka”: nie zna kodu, tylko eksploruje aplikację przez interfejs HTTP, podaje różne dane wejściowe i analizuje zachowanie. Dzięki temu wykrywa problemy widoczne dopiero w środowisku uruchomieniowym, w tym złą konfigurację serwera i brakujące nagłówki.
SAST czy DAST?
Oba podejścia się uzupełniają. SAST analizuje kod i znajduje błędy wcześnie, DAST sprawdza działającą aplikację i wskazuje, co faktycznie da się wykorzystać. Dojrzałe zespoły stosują oba w potoku CI/CD.
Przykłady i uwagi
Popularnym narzędziem otwartym jest OWASP ZAP. Skanowanie należy prowadzić na środowisku testowym lub za zgodą właściciela, bo agresywne testy mogą zakłócić działanie usługi albo zapisać dane testowe w bazie.
Najczęściej opisywanym przykładem podatności aplikacji internetowych jest SQL Injection, a jej wykrywanie i usuwanie w praktyce obejmuje zabezpieczenie aplikacji przed SQL Injection.
Zobacz w praktyce
Jak zabezpieczyć aplikację przed SQL Injection
Jak automatycznie sprawdzić szybkość i jakość kodu przed wdrożeniem?
Git w zespołowym web developmencie