Testy penetracyjne API z pełną analizą autoryzacji i logiki biznesowej.
Budujemy macierz użytkownik-rola-tenant-obiekt, testujemy cały cykl życia danych i sprawdzamy ścieżki, których nie widać w interfejsie aplikacji.
Dlaczego API wymaga osobnego testu
Poprawny token potwierdza tożsamość, ale nie gwarantuje prawa do konkretnego raportu, faktury, projektu, eksportu czy zasobu innej organizacji. Dlatego testujemy relacje obiektowe na każdym endpointcie.
Łączymy analizę dokumentacji i schematów z enumeracją funkcji, testami negatywnymi między kontami oraz walidacją zachowania jobów, webhooków, linków czasowych i integracji.
Co obejmuje test
- REST, GraphQL, SOAP, WebSocket oraz prywatne API aplikacji mobilnych;
- BOLA/IDOR, BFLA, mass assignment, nadmiarowe dane i błędy separacji tenantów;
- OAuth 2.0, JWT, API keys, refresh tokeny, mTLS i podpisy requestów;
- rate limiting, enumeracja, replay, race conditions i odporność workflow;
- eksporty PDF/XLSX, joby asynchroniczne, webhooki, signed URLs i załączniki;
- spójność walidacji pomiędzy gatewayem, mikroserwisami i backendem.
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
Czy potrzebujecie dokumentacji API?
Dokumentacja OpenAPI, Postman lub GraphQL schema przyspiesza test, ale możemy również wykonać test black-box bez dokumentacji.
Czy testujecie separację klientów SaaS?
Tak. Testy cross-tenant i autoryzacja obiektowa należą do najważniejszych elementów pentestu API B2B.
Czy test obejmuje aplikację mobilną korzystającą z API?
Może obejmować zarówno aplikację mobilną, jak i jej backend. Zakres ustalamy tak, aby nie pominąć zaufania pomiędzy klientem a API.
Czy otrzymamy testy regresyjne?
Raport zawiera warunki odtworzenia i zalecane testy negatywne, które zespół może przenieść do CI/CD.
Czy test obejmuje API1:2023 Broken Object Level Authorization?
Tak. Sprawdzamy BOLA/IDOR dla identyfikatorów w ścieżce, parametrze, nagłówku i treści żądania. Testujemy dostęp między użytkownikami, organizacjami i tenantami oraz operacje odczytu, modyfikacji i usuwania.
Czy test obejmuje API2:2023 Broken Authentication?
Tak. Weryfikujemy tokeny, JWT, klucze API, OAuth/OIDC, odświeżanie sesji, unieważnianie, rotację sekretów, MFA i odporność na przejęcie konta. Sprawdzamy także różnice między kanałami web, mobile i integracjami.
Czy test obejmuje API3:2023 Broken Object Property Level Authorization?
Tak. Testujemy nadmiarowe pola odpowiedzi, mass assignment, modyfikację pól tylko administracyjnych i filtrowanie właściwości zależne od roli. Porównujemy schemat, dokumentację i zachowanie rzeczywistego endpointu.
Czy test obejmuje API4:2023 Unrestricted Resource Consumption?
Tak. Sprawdzamy limity liczby rekordów, rozmiaru uploadu, batchy, złożoności GraphQL, czasu wykonania, pamięci i kosztów usług zewnętrznych. Szukamy zarówno DoS, jak i denial of wallet.
Czy test obejmuje API5:2023 Broken Function Level Authorization?
Tak. Weryfikujemy funkcje administracyjne, zmianę metod HTTP, ukryte endpointy, operacje partnerów i różnice uprawnień między rolami. Sprawdzamy, czy autoryzacja jest egzekwowana w backendzie dla każdej funkcji.
Czy test obejmuje API6:2023 Unrestricted Access to Sensitive Business Flows?
Tak. Testujemy automatyzację zakupów, rezerwacji, rejestracji, odzyskiwania kont, kodów promocyjnych i innych wartościowych procesów. Oceniamy limity per użytkownik, urządzenie, organizację i rzeczywisty cel biznesowy.
Czy test obejmuje API7:2023 Server Side Request Forgery?
Tak. Sprawdzamy endpointy pobierające URL, webhooki, importy, renderery, proxy i integracje. Weryfikujemy dostęp do localhost, sieci wewnętrznej, metadanych chmurowych, przekierowań i nietypowych reprezentacji adresów.
Czy test obejmuje API8:2023 Security Misconfiguration?
Tak. Analizujemy CORS, TLS, nagłówki, metody HTTP, debug, stack trace, cache, wersje protokołów, panele i konfigurację gateway. Sprawdzamy także różnice interpretacji żądań w łańcuchu proxy.
Czy test obejmuje API9:2023 Improper Inventory Management?
Tak. Szukamy starych wersji, endpointów beta i debug, hostów zapomnianych, nieudokumentowanych metod oraz API dostępnych w innych regionach lub subdomenach. Wyniki pomagają zbudować aktualny inwentarz powierzchni API.
Czy test obejmuje API10:2023 Unsafe Consumption of APIs?
Tak. Weryfikujemy zaufanie do odpowiedzi partnerów, walidację danych, podpisy webhooków, timeouty, przekierowania i limity odpowiedzi. Sprawdzamy, czy przejęta lub zmanipulowana usługa zewnętrzna może wpłynąć na system klienta.
Czy testujecie REST, GraphQL, gRPC i WebSocket?
Tak. Dobieramy techniki do protokołu: schematy i resolvery GraphQL, reflection i metadata gRPC, subskrypcje oraz autoryzację wiadomości WebSocket. Test może objąć kilka protokołów w jednym produkcie.
Czy testujecie webhooki i podpisy komunikatów?
Tak. Sprawdzamy weryfikację podpisu, replay, kolejność zdarzeń, zmianę treści, sekrety współdzielone, obsługę błędów i zaufanie do źródła. Oceniamy również skutki biznesowe wielokrotnego lub sfałszowanego zdarzenia.
Czy potrzebna jest dokumentacja OpenAPI lub kolekcja Postman?
Nie jest bezwzględnie konieczna, ale znacząco zwiększa pokrycie. Przyjmujemy OpenAPI, Swagger, Postman, Insomnia, GraphQL schema, protobuf oraz opis ról i procesów biznesowych.
Czy raport zawiera gotowe przykłady żądań i odpowiedzi?
Tak. Dla potwierdzonych podatności zamieszczamy zanonimizowane requesty i response, parametry, wymagane role, warunki powtórzenia oraz bezpieczny PoC. Materiał pozwala zespołowi technicznemu odtworzyć i naprawić problem.
Ile kosztuje pentest API i od czego zależy wycena?
Pentest API zaczyna się od 1 999 PLN netto. Ostateczna cena zależy od liczby endpointów, ról i wersji API, procesów biznesowych, protokołów, integracji oraz jakości dokumentacji. Ważniejsze od samej liczby metod jest to, ile kombinacji uprawnień i obiektów trzeba zweryfikować. Wycena powstaje zwykle w około 24 godziny.
Jak przygotować API do pentestu: Swagger, OpenAPI czy Postman?
Najlepiej przekazać aktualną specyfikację OpenAPI lub Swagger, kolekcję Postman lub Insomnia, opis uwierzytelniania, konta dla kilku ról i listę kluczowych procesów. Dla GraphQL przydatny jest schemat, a dla gRPC pliki protobuf. Brak pełnej dokumentacji nie wyklucza testu, ale wydłuża rekonesans i może ograniczyć pokrycie.
Czym pentest API różni się od automatycznych testów API w Postman lub Playwright?
Testy automatyczne potwierdzają zwykle poprawność oczekiwanych odpowiedzi. Pentest szuka nieoczekiwanych sposobów użycia: zmiany obiektów i ról, pomijania kroków, masowego wykonywania operacji, nadużyć limitów i łączenia błędów. Automatyzacja wspiera pracę pentestera, ale nie zastępuje analizy autoryzacji i logiki biznesowej.
Co powinna obejmować dobra checklista pentestu API?
Poza OWASP API Security Top 10 powinna obejmować inwentarz endpointów, role, tokeny, BOLA i BFLA, właściwości obiektów, limity, webhooki, integracje, błędy, cache, wersjonowanie i scenariusze biznesowe. Checklista jest punktem wyjścia; najważniejsze testy wynikają z architektury i celu konkretnego API.
Czy pentest API obejmuje backend aplikacji webowej i mobilnej?
Tak, jeśli API znajduje się w uzgodnionym zakresie. Wspólny test klienta web lub mobile i backendu pozwala zweryfikować, czy zabezpieczenia nie istnieją wyłącznie w interfejsie użytkownika. Szczególnie ważne jest sprawdzenie zmodyfikowanych klientów, ukrytych funkcji i bezpośrednich żądań do API.
Czy testujecie API dla fintech, e-commerce, KSeF i systemów wielodzierżawnych?
Tak. Dla każdego systemu budujemy scenariusze wokół jego kluczowych procesów, takich jak płatności, faktury, zamówienia, limity, eksporty i separacja organizacji. Test techniczny jest uzupełniany analizą nadużyć biznesowych charakterystycznych dla danej branży.
Black-box czy gray-box — jaki model pentestu API daje najlepsze pokrycie?
Black-box pokazuje, co znajdzie zewnętrzny atakujący, ale gray-box z dokumentacją i kontami kilku ról zwykle zapewnia znacznie lepszą ocenę BOLA, BFLA i logiki biznesowej. Dla publicznych API często łączymy oba podejścia: rekonesans bez wiedzy oraz pełną walidację udokumentowanych funkcji.
Jak testujecie uwierzytelnianie i zaufanie między mikroserwisami?
Sprawdzamy JWT, OAuth/OIDC, mTLS, klucze i sekrety usługowe, audience, issuer, scope, rotację oraz możliwość ponownego użycia tokenu. Analizujemy także, czy usługa ufa nagłówkom lub danym dostarczonym przez klienta i czy przejęcie jednego komponentu umożliwia ruch boczny.
Czy pentest API można bezpiecznie przeprowadzić na produkcji?
Można, jeśli Rules of Engagement określają limity, dane testowe, kontakty awaryjne i wyłączone operacje. Testy kosztowne, masowe, destrukcyjne lub wpływające na realne transakcje przenosimy do środowiska testowego. Produkcja bywa potrzebna do sprawdzenia rzeczywistego gateway, WAF, DNS i konfiguracji brzegowej.
Jak wybrać wykonawcę pentestu API i ocenić jakość raportu?
Warto wymagać doświadczenia w autoryzacji obiektowej, wielu protokołach i logice biznesowej, a nie tylko skanowaniu endpointów. Raport powinien zawierać kompletne requesty i response, wymagane role, wpływ, CVSS, rekomendację i test zamknięcia. BSTA udostępnia publiczny, syntetyczny przykład takiego raportu.
Powiązane obszary testów i ochrony
Testy aplikacji webowych
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 →