Metodologia Web Vulnerabilities
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
W każdym Web Pentest istnieje kilka ukrytych i oczywistych miejsc, które mogą być podatne. Ten wpis ma służyć jako lista kontrolna, aby potwierdzić, że przeszukałeś wszystkie możliwe miejsca pod kątem podatności.
Proxies
Tip
Obecnie web applications zwykle używają jakiegoś rodzaju pośrednich proxies, które mogą być (ab)użyte do wykorzystania podatności. Te podatności wymagają istnienia podatnego proxy, ale zazwyczaj potrzebują też dodatkowej podatności w backendzie.
- Abusing hop-by-hop headers
- Cache Poisoning/Cache Deception
- HTTP Connection Contamination
- HTTP Connection Request Smuggling
- HTTP Request Smuggling
- HTTP Response Smuggling / Desync
- H2C Smuggling
- Server Side Inclusion/Edge Side Inclusion
- Uncovering Cloudflare
- XSLT Server Side Injection
- Proxy / WAF Protections Bypass
Wejście użytkownika
Tip
Większość web applications pozwoli użytkownikom wprowadzić dane, które będą przetworzone później.
W zależności od struktury danych, której oczekuje serwer, niektóre podatności mogą mieć zastosowanie, a inne nie.
Wartości odzwierciedlane
Jeśli wprowadzone dane mogą w jakiś sposób zostać odzwierciedlone w odpowiedzi, strona może być podatna na różne problemy.
- Client Side Path Traversal
- Client Side Template Injection
- Command Injection
- CRLF
- Dangling Markup
- File Inclusion/Path Traversal
- Open Redirect
- Prototype Pollution to XSS
- Server Side Inclusion/Edge Side Inclusion
- Server Side Request Forgery
- Server Side Template Injection
- Reverse Tab Nabbing
- XSLT Server Side Injection
- XSS
- XSSI
- XS-Search
Niektóre z wymienionych podatności wymagają specjalnych warunków, inne jedynie odzwierciedlenia treści. Możesz znaleźć kilka ciekawych polygloths do szybkiego testowania podatności w:
Reflecting Techniques - PoCs and Polygloths CheatSheet
Funkcje wyszukiwania
Jeśli funkcjonalność służy do wyszukiwania danych w backendzie, być może można ją (ab)użyć do wyszukiwania dowolnych danych.
- File Inclusion/Path Traversal
- NoSQL Injection
- LDAP Injection
- ReDoS
- SQL Injection
- ORM Injection
- RSQL Injection
- XPATH Injection
Formularze, WebSockets i PostMsgs
Gdy websocket wysyła wiadomość lub formularz pozwala użytkownikom wykonywać akcje, mogą pojawić się podatności.
- Cross Site Request Forgery
- Cross-site WebSocket hijacking (CSWSH)
- Phone Number Injections
- PostMessage Vulnerabilities
Cross-site WebSocket hijacking & localhost abuse
WebSocket upgrades automatycznie przekazują cookies i nie blokują ws://127.0.0.1, więc każdy origin web może sterować desktopowymi endpointami IPC, które pomijają walidację Origin. Kiedy zauważysz launcher wystawiający API podobne do JSON-RPC przez lokalnego agenta:
- Obserwuj wysyłane ramki, aby sklonować krotki
type/name/argswymagane przez każdą metodę. - Bruteforce’uj port nasłuchu bezpośrednio z przeglądarki (Chromium poradzi sobie z około ~16k nieudanych upgrade’ów) aż gniazdo loopback odpowie banerem protokołu — Firefox zwykle szybko się zawiesi przy takim obciążeniu.
- Złącz parę create → privileged action: np. wywołaj metodę
create*, która zwróci GUID, a następnie natychmiast wywołaj odpowiadającą metodę*Launch*z payloadami kontrolowanymi przez atakującego.
Jeśli możesz przekazać dowolne flagi JVM (np. AdditionalJavaArguments), wymuś błąd z -XX:MaxMetaspaceSize=<tiny> i dołącz -XX:OnOutOfMemoryError="<cmd>", aby uruchomić polecenia systemowe bez ingerowania w logikę aplikacji. Zobacz WebSocket attacks dla przewodnika krok po kroku.
Nagłówki HTTP
W zależności od nagłówków HTTP zwracanych przez serwer web mogą występować różne podatności.
- Clickjacking
- Iframe Traps / Click Isolation
- Content Security Policy bypass
- Cookies Hacking
- CORS - Misconfigurations & Bypass
Omijania
Istnieje kilka specyficznych funkcjonalności, gdzie przydatne mogą być różne obejścia.
- 2FA/OTP Bypass
- Bypass Payment Process
- Captcha Bypass
- Account Takeover Playbooks
- Login Bypass
- Race Condition
- Rate Limit Bypass
- Reset Forgotten Password Bypass
- Registration Vulnerabilities
Sformatowane obiekty / Specyficzne funkcjonalności
Niektóre funkcjonalności będą wymagać, aby dane były sformatowane w bardzo specyficzny sposób (np. zserializowany obiekt języka lub XML). Łatwiej więc zidentyfikować podatność, gdy aplikacja przetwarza tego rodzaju dane.
Niektóre specyficzne funkcjonalności mogą być również podatne, jeśli użyty zostanie konkretny format wejścia (np. Email Header Injections).
- Deserialization
- Email Header Injection
- JWT Vulnerabilities
- JSON / XML / YAML Hacking
- XML External Entity
- GraphQL Attacks
- gRPC-Web Attacks
- SOAP/JAX-WS ThreadLocal Auth Bypass
Pliki
Funkcjonalności pozwalające na upload plików mogą być podatne na różne problemy.
Funkcjonalności generujące pliki zawierające dane użytkownika mogą uruchomić nieoczekiwany kod.
Użytkownicy otwierający pliki przesłane przez innych użytkowników lub automatycznie generowane z zawartością użytkownika mogą zostać skompromitowani.
External Identity Management
Inne przydatne podatności
Te podatności mogą pomóc w eksploatacji innych podatności.
- Domain/Subdomain takeover
- IDOR
- Mass Assignment (CWE-915)
- Parameter Pollution
- Unicode Normalization vulnerability
Serwery Web & Middleware
Błędne konfiguracje na warstwie edge często odsłaniają bardziej wpływowe błędy w warstwie aplikacji.
- Apache
- Nginx
- IIS
- Tomcat
- Spring Actuators
- PUT Method / WebDAV
- Special HTTP Headers
- WSGI Deployment
- Werkzeug Debug Exposure
Frameworki aplikacyjne & Stosy
Elementy specyficzne dla frameworków często odsłaniają gadgety, niebezpieczne domyślne ustawienia lub endpointy należące do frameworka.
CMS, SaaS & Platformy zarządzane
Produkty o szerokiej powierzchni często zawierają znane exploity, słabe wtyczki lub uprzywilejowane endpointy administratora.
- WordPress
- Joomla
- Drupal
- Moodle
- Prestashop
- Atlassian Jira
- Grafana
- Rocket.Chat
- Zabbix
- Microsoft SharePoint
- Sitecore
APIs, Buckets & Integrations
Pomocnicy po stronie serwera i integracje z zewnętrznymi usługami mogą ujawnić słabości parsowania plików lub warstwy magazynowania.
- Web API Pentesting
- Storage Buckets & Firebase
- Imagemagick Security
- Artifactory & Package Registries
- Code Review Tooling
Łańcuch dostaw & Nadużycie identyfikatorów
Ataki wymierzone w pipeline’y budowania lub przewidywalne identyfikatory mogą dać punkt zaczepienia przed wykorzystaniem tradycyjnych błędów.
Web3, Extensions & Tooling
Nowoczesne aplikacje rozszerzają się na przeglądarki, portfele i pipeline’y automatyzacji — miej te wektory w zakresie testów.
Bibliografia
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.


