[ HTTP / HTTPS ]
Kliknutím se vrátíš zpět.
Komunikační protokol
Představ si to jako soubor pravidel, podle kterých si tvůj prohlížeč (klient) povídá se serverem. Pro bug huntera je klíčové vidět rozdíl mezi HTTP a jeho šifrovanou verzí HTTPS.
HTTP vs HTTPS: Hlavní rozdíly
- Bezpečnost: V HTTP může kdokoli na cestě (např. útočník na Wi-Fi) číst hesla nebo data. HTTPS vše šifruje pomocí TLS.
- Porty: HTTP standardně operuje na portu 80, zatímco HTTPS na portu 443.
- Důvěryhodnost: HTTPS zabezpečuje nejen data v těle, ale šifruje i hlavičky (Headers) a cookies.
Metody a Akce
Každý požadavek musí definovat, jakou akci chce provést. Tyto metody uvidíš v každém logu tvé proxy.
| Metoda | Účel |
|---|---|
| GET | Získání dat (např. otevření článku) |
| POST | Odeslání nových dat (např. registrace uživatele) |
| PUT/PATCH | Aktualizace stávajících dat nebo jejich částí |
| DELETE | Odstranění dat ze serveru |
Stavové kódy (Response Status)
Server ti vždy odpoví kódem, který říká, jak tvůj požadavek dopadl.
Success: 200 OK (Vše v pořádku), 201 (Vytvořeno).
Redirection: 301 (Trvalé), 302 (Dočasné přesměrování).
Client Error: 403 Forbidden (Zakázáno), 404 Not Found (Neexistuje).
Server Error: 500 (Chyba serveru), 503 (Nedostupné).
Architektura
HTTP a HTTPS jsou protokoly aplikační vrstvy (vrstva 7). Zatímco HTTP definuje sémantiku přenosu, HTTPS přidává kryptografickou vrstvu pro zajištění bezpečnosti.
Bezstavovost (Statelessness)
Každá transakce je nezávislá. Server standardně "zapomíná", kdo jsi, hned po odpovědi. K udržení identity (přihlášení) se proto používají Cookies a Session tokeny – primární cíle pro bug huntery.
HTTPS: Více než jen šifrování
HTTPS (HTTP over TLS) stojí na třech pilířích, které chrání data na cestě mezi klientem a serverem:
Asymetrická kryptografie (RSA) pro výměnu klíčů a symetrická (AES) pro data.
Ověření pomocí MAC, zda data nebyla cestou modifikována útočníkem.
Digitální certifikáty (X.509) potvrzují, že server je skutečně ten, za koho se vydává.
Evoluce: Od TCP k QUIC
Srovnání verzí protokolu z hlediska výkonu a bezpečnosti:
| Funkce | HTTP/1.1 | HTTP/2 | HTTP/3 |
|---|---|---|---|
| Transport | TCP | TCP | QUIC (UDP) |
| Formát | Textový | Binární | Binární |
| Multiplexing | Ne | Ano | Ano (nativní) |
| Zabezpečení | Volitelné | Vyžadováno | Povinné |
// Proč UDP v HTTP/3? Řeší problém Head-of-Line blocking. Ztráta jednoho paketu nezastaví celé spojení.