🌐 Opis podatności i jej wpływ – Server-Side Request Forgery (SSRF) (A10:2025)
🔍 Czym jest SSRF?
Server-Side Request Forgery (SSRF) to podatność, w której atakujący zmusza serwer aplikacji do wykonania żądania HTTP do innego zasobu – wewnętrznego lub zewnętrznego – w imieniu aplikacji. Może to prowadzić do:
- uzyskania dostępu do zasobów wewnętrznych (np.
localhost
,169.254.169.254
), - skanowania sieci wewnętrznej,
- wycieku danych,
- eskalacji ataków (np. przez wykorzystanie tokenów, metadanych, usług backendowych).
🧠 Przykład działania
Aplikacja pozwala na pobieranie miniatur obrazków z zewnętrznych adresów URL:
GET /fetch-image?url=http://example.com/image.jpg
Atakujący podmienia adres na wewnętrzny:
GET /fetch-image?url=http://127.0.0.1:8080/admin
➡️ Aplikacja wykonuje żądanie do własnego backendu lub ukrytej usługi, ujawniając dane lub umożliwiając zdalne wykonanie poleceń.
🚨 Potencjalne konsekwencje
- Dostęp do wewnętrznych API – np.
http://localhost:5000/internal/status
. - Odczyt metadanych instancji chmurowej – np. AWS EC2:
http://169.254.169.254/latest/meta-data/
. - Ataki typu port scanning / SSRF chaining – np. łączone z RCE, XSS, IDOR.
- Dostęp do baz danych, Redis, Docker socket – w zależności od otwartości środowiska.
📉 Czynniki ryzyka
- Brak walidacji i filtrowania adresów URL dostarczanych przez użytkownika.
- Zezwalanie na przekazywanie żądań przez serwer do niekontrolowanych adresów.
- Używanie bibliotek wykonujących żądania bez whitelisty (np.
curl
,requests
,urllib
).
🎯 Dlaczego to istotne?
- SSRF omija ograniczenia sieciowe i firewalle — to serwer wykonuje żądania.
- Atak bywa trudny do wykrycia – żądanie pochodzi z legalnego IP serwera.
- Często wykorzystywana jako wektor początkowy w atakach na chmurę (np. kradzież tokenów IAM).
- W 2021 roku podatność SSRF umożliwiła ataki na Azure, Alibaba Cloud, Google Cloud i AWS.
✅ Podsumowanie
SSRF to krytyczna podatność typu „proxy”, umożliwiająca atakującemu wykonanie żądań w kontekście aplikacji. Nawet pozornie bezpieczna funkcjonalność (np. preview linku, parsery PDF) może stanowić wektor ataku, jeśli umożliwia odwołania do adresów kontrolowanych przez użytkownika.