Testy penetracyjne aplikacji webowych, które pokazują realną ścieżkę ataku.
Sprawdzamy nie tylko podatności techniczne, ale również autoryzację, role, logikę biznesową, przepływy danych i łańcuchy ataku niewidoczne dla automatycznego skanera.
Czym jest pentest aplikacji webowej
Pentest webowy to kontrolowana próba przełamania zabezpieczeń aplikacji z perspektywy anonimowego użytkownika, zalogowanego klienta i - jeżeli zakres na to pozwala - użytkownika uprzywilejowanego.
Zespół BSTA wykonał ponad 1000 testów penetracyjnych dla organizacji z sektorów finansowego, publicznego, obronnego, medycznego, e-commerce, przemysłowego i technologicznego.
Co obejmuje test
- uwierzytelnianie, reset hasła, MFA, zarządzanie sesją i odzyskiwanie konta;
- IDOR/BOLA, eskalacja uprawnień, separacja tenantów i kontrola dostępu;
- SQL injection, XSS, SSRF, deserializacja, upload plików i błędy parserów;
- logika biznesowa, limity, kupony, płatności, workflow i operacje asynchroniczne;
- nagłówki bezpieczeństwa, CSP, CORS, cache, ujawnianie danych i konfiguracji;
- weryfikacja wpływu podatności bez niszczenia danych produkcyjnych.
Jak pracujemy
1. Zakres i ROE
Ustalamy cele, systemy, wyłączenia, konta testowe, okno prac i bezpieczne zasady komunikacji.
2. Test manualny
Automatyzacja wspiera rekonesans, lecz potwierdzenie podatności i łańcuchów ataku wykonuje pentester.
3. Raport
Zarząd otrzymuje wpływ biznesowy, a IT dowody, priorytety i konkretne zalecenia naprawcze.
4. Retest
Jedno podejście retestowe jest zazwyczaj w cenie, o ile oferta nie stanowi inaczej.
Przykładowy przebieg techniczny
Co otrzymuje klient
- raport techniczny z dowodami, oceną ryzyka i instrukcjami naprawy;
- executive summary dla zarządu i właścicieli ryzyka;
- prezentację wyników dla zespołu technicznego i kadry zarządzającej;
- raport w języku polskim lub angielskim;
- jedno podejście retestowe, o ile oferta nie stanowi inaczej;
- możliwość podpisania NDA przed przekazaniem zakresu.
Najczęstsze pytania
Ile trwa test aplikacji webowej?
Realizacja testu aplikacji webowej zajmuje od 5 dni roboczych. Na czas wpływają liczba modułów, ról, integracji i środowisk. Dokładny termin potwierdzamy w ofercie przed rozpoczęciem prac.
Czy skan podatności wystarczy?
Nie. Skaner nie rozumie modelu biznesowego, relacji między użytkownikami i obiektami ani wpływu kilku połączonych błędów. Automatyzacja jest wsparciem, nie zamiennikiem testu manualnego.
Czy retest jest w cenie?
Jedno podejście retestowe jest zazwyczaj w cenie, o ile oferta nie stanowi inaczej.
Czy możecie testować produkcję?
Tak, jeśli uzgodnione zasady ROE, okno prac i zabezpieczenia ryzyka na to pozwalają. Często rekomendujemy środowisko możliwie zbliżone do produkcji.
Czy test obejmuje A01:2025 Broken Access Control?
Tak. Testujemy IDOR, pomijanie kontroli dostępu, zmianę ról, dostęp poziomy i pionowy, wymuszone przeglądanie zasobów oraz operacje dostępne po wylogowaniu. Każdy przypadek weryfikujemy na poziomie rzeczywistego wpływu biznesowego.
Czy test obejmuje A02:2025 Security Misconfiguration?
Tak. Sprawdzamy nagłówki, CORS, tryby debug, komunikaty błędów, domyślne pliki, panele administracyjne, konfigurację serwera, cache i niepotrzebne funkcje. Ocenie podlega cały stos aplikacyjny, a nie tylko kod frontendu.
Czy test obejmuje A03:2025 Software Supply Chain Failures?
Tak. Analizujemy zależności, komponenty frontendowe i backendowe, artefakty buildów, rejestry pakietów, mechanizmy aktualizacji oraz zaufanie do skryptów zewnętrznych. Wskazujemy podatne biblioteki i słabe punkty procesu dostarczania oprogramowania.
Czy test obejmuje A04:2025 Cryptographic Failures?
Tak. Weryfikujemy TLS, szyfrowanie danych, zarządzanie kluczami, generowanie tokenów, hashowanie haseł, losowość, podpisy i błędne użycie algorytmów. Sprawdzamy także, czy dane wrażliwe są szyfrowane w odpowiednim miejscu i czasie.
Czy test obejmuje A05:2025 Injection?
Tak. Testujemy SQL, NoSQL, LDAP, XPath, OS command, template, expression language, header i code injection, a także XSS w wielu kontekstach. Automatyzacja służy do rekonesansu, a potwierdzenie i exploitację wykonuje pentester.
Czy test obejmuje A06:2025 Insecure Design?
Tak. Analizujemy założenia zaufania, przepływy biznesowe, nadużycia funkcji, brak limitów i scenariusze, których nie wykryje skaner. W raporcie oddzielamy błąd implementacji od błędu architektury lub procesu.
Czy test obejmuje A07:2025 Authentication Failures?
Tak. Testujemy logowanie, MFA, reset hasła, odzyskiwanie konta, sesje, SSO, OAuth/OIDC, pamiętanie urządzeń i odporność na enumerację oraz credential stuffing. Sprawdzamy pełny cykl życia tożsamości i sesji.
Czy test obejmuje A08:2025 Software or Data Integrity Failures?
Tak. Weryfikujemy integralność aktualizacji, serializację, podpisy webhooków, zaufanie do danych zewnętrznych i możliwość podmiany artefaktów lub konfiguracji. Testujemy również niebezpieczną deserializację i niezweryfikowane pakiety.
Czy test obejmuje A09:2025 Security Logging and Alerting Failures?
Tak. Sprawdzamy, czy krytyczne zdarzenia są rejestrowane, czy logi nie zawierają sekretów oraz czy atak może pozostać niewykryty. Raport wskazuje zdarzenia przydatne dla SOC/SIEM i propozycje scenariuszy detekcyjnych.
Czy test obejmuje A10:2025 Mishandling of Exceptional Conditions?
Tak. Wymuszamy błędy, przerwania transakcji, time-outy, niepełne dane, race conditions i niespójne stany. Szukamy fail-open, pominięcia autoryzacji, podwójnego wykonania operacji i wycieków przez obsługę wyjątków.
Czy testujecie logikę biznesową, płatności i kupony?
Tak. Analizujemy kolejność kroków, wartości ujemne, wielokrotne wykorzystanie benefitów, zmianę ceny, wyścigi, obejście akceptacji i operacje poza dozwolonym stanem procesu. Takie scenariusze są wykonywane ręcznie z kontrolą wpływu.
Czy testujecie upload plików, SSRF i integracje zewnętrzne?
Tak. Sprawdzamy walidację typu i zawartości, parsery, ścieżki, publiczne buckety, przetwarzanie asynchroniczne, URL preview i dostęp do sieci wewnętrznej lub metadanych chmurowych. Test obejmuje również skutki przetwarzania złośliwego pliku.
Czy testujecie cache poisoning, request smuggling i desynchronizację HTTP?
Tak, jeżeli architektura i uzgodnione warunki pozwalają na bezpieczną walidację. Sprawdzamy różnice interpretacji żądań przez CDN, proxy, WAF i serwer aplikacyjny oraz możliwość wpływu na odpowiedzi innych użytkowników.
Czy pentest obejmuje aplikację SPA i jej API?
Tak. Sam frontend nie jest granicą bezpieczeństwa, dlatego analizujemy wywoływane API, tokeny, role, ukryte funkcje i backendowe kontrole dostępu. Zakres API potwierdzamy w ROE, aby nie pozostawić krytycznej części produktu poza testem.
Ile kosztują testy penetracyjne aplikacji webowej i co wpływa na cenę?
Test aplikacji webowej zaczyna się od 2 000 PLN netto. Ostateczna cena zależy od liczby funkcji i ról, złożoności logiki biznesowej, integracji, jakości dokumentacji oraz wybranego modelu black-box, gray-box lub white-box. Zakres i wycenę przygotowujemy zwykle w około 24 godziny.
Jak wybrać firmę do testów penetracyjnych aplikacji webowych?
Warto sprawdzić doświadczenie w testach manualnych, przykładowy raport, sposób opisu wpływu biznesowego, zasady bezpiecznej walidacji oraz dostępność retestu. Sama lista używanych skanerów nie potwierdza jakości. Zespół BSTA ma ponad 1000 zrealizowanych pentestów, a większość ekspertów ponad 20 lat doświadczenia.
Jak przebiega pentest aplikacji webowej krok po kroku?
Najpierw ustalamy zakres, role, środowisko, wyłączenia i Rules of Engagement. Następnie wykonujemy rekonesans, testy uwierzytelniania, autoryzacji, danych wejściowych i logiki biznesowej, potwierdzamy wpływ bezpiecznym PoC, przygotowujemy raport i omawiamy wyniki. Po wdrożeniu poprawek zazwyczaj wykonujemy jeden retest.
Czym test penetracyjny strony lub aplikacji różni się od skanowania podatności?
Skaner wykrywa głównie znane wzorce techniczne i generuje wyniki wymagające weryfikacji. Pentest manualny sprawdza role, procesy, autoryzację, logikę biznesową oraz łączenie kilku słabości w realny scenariusz ataku. Raport pentestowy zawiera potwierdzone dowody, wpływ i konkretne zalecenia, a nie surową listę alertów.
Czy pentest aplikacji webowej pomaga spełnić wymagania DORA, NIS2, KSC2 lub PCI DSS?
Pentest może dostarczyć technicznego dowodu weryfikacji zabezpieczeń i planu naprawczego wspierającego te wymagania. Sam test nie zastępuje pełnego programu zgodności, zarządzania ryzykiem ani audytu regulacyjnego. W raporcie możemy wskazać mapowanie wyników do właściwych kontroli i wymagań klienta.
Black-box, gray-box czy white-box — jaki model testu web wybrać?
Black-box dobrze odwzorowuje perspektywę zewnętrznego napastnika, gray-box zwiększa pokrycie dzięki kontom dla różnych ról, a white-box pozwala przeanalizować także kod i architekturę. Dla aplikacji biznesowych najczęściej rekomendujemy gray-box z kilkoma rolami, ponieważ pozwala dokładnie sprawdzić autoryzację i separację danych.
Kiedy wykonać test bezpieczeństwa aplikacji: przed produkcją czy po wdrożeniu?
Najlepiej testować przed istotnym wdrożeniem, po dużych zmianach oraz okresowo w środowisku możliwie zbliżonym do produkcyjnego. Po uruchomieniu warto zweryfikować konfigurację brzegową, domeny, CDN, WAF i integracje, których nie było na testowym środowisku. Krytyczne systemy powinny mieć zaplanowany cykl testów, nie jednorazowy audyt.
Czy WAF, CDN lub Cloudflare zastępuje test penetracyjny aplikacji?
Nie. WAF i CDN mogą ograniczyć część ataków wejściowych, ale nie naprawiają błędów autoryzacji, logiki biznesowej, separacji tenantów ani wad procesu. Podczas testu sprawdzamy aplikację w rzeczywistej architekturze i oceniamy zarówno działanie warstwy ochronnej, jak i możliwość jej ominięcia.
Co powinien zawierać profesjonalny raport z pentestu aplikacji webowej?
Raport powinien zawierać podsumowanie dla zarządu, zakres i ograniczenia, metodykę, potwierdzone podatności, CVSS, wpływ biznesowy, bezpieczne dowody PoC, kroki reprodukcji, rekomendacje oraz kryteria zamknięcia. Ważne są także priorytety napraw i wynik retestu. Przykładowy 30-stronicowy raport BSTA jest dostępny na stronie.
Czy testujecie sklepy internetowe, platformy SaaS i aplikacje wielodzierżawcze?
Tak. W e-commerce sprawdzamy między innymi ceny, płatności, kupony, zwroty i dostęp do zamówień, a w SaaS separację tenantów, role, eksporty, zaproszenia i procesy administracyjne. Zakres jest budowany wokół wartościowych procesów biznesowych, a nie samej liczby adresów URL.
Jak przygotować zapytanie ofertowe na testy penetracyjne aplikacji webowej?
W zapytaniu warto podać krótki opis systemu, środowisko, liczbę ról i modułów, technologie, API i integracje, oczekiwany termin, wymagania raportowe oraz potrzebę retestu. Nie trzeba przesyłać sekretów ani danych dostępowych na etapie wyceny. Jeśli zakres nie jest jeszcze znany, BSTA pomaga go ustalić podczas krótkiej konsultacji.
Powiązane obszary testów i ochrony
Testy bezpieczeństwa API
Zakres, metodyka, rezultat i najczęstsze pytania →
Pentest infrastruktury i AD
Zakres, metodyka, rezultat i najczęstsze pytania →
Testy bezpieczeństwa OT / ICS
Zakres, metodyka, rezultat i najczęstsze pytania →
Testy aplikacji mobilnych
Zakres, metodyka, rezultat i najczęstsze pytania →
Chmura i Kubernetes
Zakres, metodyka, rezultat i najczęstsze pytania →
AI / LLM red teaming
Zakres, metodyka, rezultat i najczęstsze pytania →
Testy phishingowe
Zakres, metodyka, rezultat i najczęstsze pytania →
SOC / SIEM i Blue Team
Zakres, metodyka, rezultat i najczęstsze pytania →