Dlaczego bezpieczeństwo API jest krytyczne w e-commerce
Nowoczesna platforma e-commerce to ekosystem oparty na API. Endpointy API obsługują:
- Wyświetlanie produktów i cen (katalog)
- Koszyk i proces checkout
- Przetwarzanie płatności
- Integracje z kurierami, ERP, CRM
- Aplikacje mobilne i PWA
- Integracje marketplace (Allegro, Amazon)
Każdy z tych endpointów to potencjalny wektor ataku. W 2025 roku ataki na API stanowiły ponad 60% wszystkich ataków na platformy e-commerce — wzrost o 300% w porównaniu z 2022 rokiem.
Ataki na API są szczególnie niebezpieczne, bo:
- API często zwraca dane w surowej formie (JSON), łatwiejszej do automatycznego przetwarzania
- Endpointy API bywają mniej chronione niż interfejs webowy
- Jeden wadliwy endpoint może ujawnić całą bazę klientów
Najczęstsze podatności API w e-commerce
BOLA (Broken Object Level Authorization)
Atakujący zmienia identyfikator obiektu w zapytaniu (np. /api/orders/1234 na /api/orders/1235) i uzyskuje dostęp do zamówień innych klientów. Najczęstsza podatność API w e-commerce.
Brak rate limiting Bez ograniczeń częstotliwości zapytań, atakujący może:
- Masowo pobierać katalog produktów i ceny (scraping)
- Przeprowadzać credential stuffing na endpoincie logowania
- Wyczerpywać zasoby serwera (DoS)
Nadmierne ujawnianie danych API zwraca więcej danych niż potrzebne — np. endpoint profilu zwraca hash hasła, wewnętrzne identyfikatory czy dane płatnicze.
Brak walidacji danych wejściowych Brak walidacji parametrów umożliwia SQL Injection, NoSQL Injection i inne ataki wstrzykiwania.
Niebezpieczne endpointy administracyjne Endpointy do zarządzania produktami, zamówieniami czy użytkownikami dostępne bez odpowiedniej autoryzacji.
Jak zabezpieczyć uwierzytelnianie i autoryzację API
Uwierzytelnianie:
- OAuth 2.0 z tokenami JWT dla interakcji użytkownik-serwer
- API keys z ograniczonym scope dla integracji serwer-serwer
- MFA dla endpointów krytycznych (zmiana hasła, dane płatnicze)
- Tokeny krótkoterminowe (15-30 min) z refresh tokenami
Autoryzacja:
- Sprawdzanie uprawnień na poziomie obiektu (nie tylko endpointu)
- Role-Based Access Control (RBAC) lub Attribute-Based (ABAC)
- Testy autoryzacji: „Czy użytkownik A może zobaczyć zamówienie użytkownika B?”
Bezpieczeństwo tokenów:
- Przechowywanie tokenów w HttpOnly cookies (nie localStorage)
- Rotacja kluczy podpisujących JWT
- Blacklisting unieważnionych tokenów
Rate limiting i ochrona przed nadużyciami
Efektywny rate limiting dla API e-commerce:
Per-endpoint limiting:
/api/login— 5 prób/minutę per IP/api/products— 60 req/minutę per użytkownik/api/checkout— 10 req/minutę per sesję/api/search— 30 req/minutę per użytkownik
Warstwy ochrony:
- WAF z regułami anty-bot na pierwszej linii
- API Gateway z rate limiting na drugiej linii
- Aplikacyjny rate limiting jako ostatnia warstwa
Zaawansowane techniki:
- Sliding window rate limiting (bardziej precyzyjne niż fixed window)
- Token bucket algorithm dla burst traffic
- Adaptive rate limiting — automatyczne zaostrzanie limitów przy wykryciu anomalii
Walidacja danych i ochrona przed injection
Walidacja wejścia:
- Schema validation (JSON Schema / OpenAPI) dla każdego endpointu
- Whitelisting dozwolonych znaków i formatów
- Ograniczenie rozmiaru payload (np. max 1MB)
- Walidacja Content-Type (odrzucanie nieoczekiwanych formatów)
Ochrona przed injection:
- Parametryzowane zapytania do bazy danych (nigdy konkatenacja stringów)
- Sanityzacja danych wyjściowych (output encoding)
- Walidacja zagnieżdżonych zapytań GraphQL (max depth, max complexity)
Ochrona przed mass assignment:
- Jawne definiowanie dozwolonych pól w każdym endpoincie
- Ignorowanie nieoczekiwanych pól w payload
- Osobne modele DTO dla input i output
Monitoring i reagowanie na incydenty API
Logowanie:
- Każde żądanie API: timestamp, endpoint, user ID, IP, status code, response time
- Nie loguj danych wrażliwych (haseł, numerów kart, tokenów)
- Centralizacja logów w SIEM
Monitoring anomalii:
- Nagły wzrost ruchu na konkretnym endpoincie
- Nietypowe wzorce dostępu (sekwencyjne ID, masowe pobieranie)
- Błędy autoryzacji (401/403) z jednego IP
- Geolokalizacja niezgodna z profilem użytkownika
Reagowanie:
- Automatyczne blokowanie IP przy przekroczeniu progów
- Alerty do SOC przy wykryciu podejrzanej aktywności
- Procedura eskalacji dla potwierdzonych incydentów
- Regularne testy penetracyjne API weryfikujące zabezpieczenia
Cyberbezpieczeństwo w Twojej branży
Dowiedz się więcej o cyberbezpieczeństwie w Twojej branży:
