XSS
XSS (Cross-Site Scripting) je typ bezpečnostní zranitelnosti webových aplikací, při které útočník vloží škodlivý kód (nejčastěji JavaScript) do webové stránky tak, že se spustí u nic netušících uživatelů. Díky tomu může získat přístup k citlivým datům (např. cookies, přihlašovací údaje), manipulovat s obsahem stránky nebo přesměrovat uživatele na podvodný web. Problém vzniká tehdy, když aplikace nedostatečně kontroluje nebo neošetřuje vstupy od uživatelů.
Rozlišujeme několik typů XSS útoků:
- Stored XSS (perzistentní) – škodlivý kód se uloží na server (např. do databáze, komentáře, profilu) a spustí se u každého, kdo stránku navštíví.
- Reflected XSS (odrazový) – škodlivý kód je vložen do URL nebo formuláře a server jej „odrazí“ zpět uživateli (např. v chybové hlášce).
- DOM-based XSS – útok využívá manipulaci s objektem Document Object Model přímo v prohlížeči bez zásahu serveru.
Obrana proti XSS spočívá hlavně ve validaci a escapování uživatelských vstupů, používání Content Security Policy (CSP) a frameworků, které data správně ošetřují.