# Čo je cross-site scripting (XSS)?

> Cross-site scripting (XSS) je slabина webovej aplikácie, ktorá umožňuje, aby útočníkom ovládaný obsah bol interpretovaný ako spustiteľný kód v prehliadači iného používateľa v rámci dôveryhodného aplikačného kontextu.

- Kanonická URL: https://yellowcube.eu/sk/glossary/cross-site-scripting/
- Vydavateľ: Yellow Cube
- Jazyk: sk
- Kontakt: hello@yellowcube.eu

## Obsah

Obsah môže byť vrátený okamžite, uložený a servovaný neskôr, alebo zavedený cez nebezpečnú klientsku manipuláciu dokumentu. Vykonanie môže konať s originom stránky a prístupným kontextom používateľa, ovplyvňujúc zobrazený obsah, údaje alebo akcie.

Prevencia závisí od držania nedôveryhodných údajov mimo spustiteľných kontextov. Aplikácie majú používať bezpečné správanie frameworkov a sinks, uplatniť kontextovo-špecifické kódovanie výstupu a sanizovať obsah, keď používatelia majú zámerne povolené dodávať obmedzené markup.

### Kľúčové body

- **Bežné formy:** Reflektované XSS vracia nebezpečný vstup v odpovedi, uložené XSS servuje predtým uložený obsah a XSS založené na Document Object Model vzniká z nebezpečného klientského toku údajov a vykonávania.
- **Primárna prevencia:** Preferovať templating a rozhrania prehliadača, ktoré zaobchádzajú s hodnotami ako s textom, kódovať výstup pre jeho presný kontext, validovať nebezpečné URL, vyhnúť sa nepotrebnému dynamickému vykonávaniu kódu a použiť udržiavané sanitery pre povolený markup.
- **Zadržanie:** Aplikovať dobre navrhnutú Content Security Policy, chrániť citlivé cookies, minimalizovať vystavené údaje prehliadača a obmedziť skripty tretích strán ako hĺbkovú obranu namiesto náhrad za bezpečné zaobchádzanie s údajmi.
- **Dôležité obmedzenie:** Validácia vstupu, firewall webových aplikácií ani samotná Content Security Policy nedokáže pokryť každý kontext vykonávania alebo klientsku cestu. Same-origin politika prehliadača nebráni kódu, ktorý sama dôveryhodná stránka zaviedla.

### Súvisiace pojmy

[Bezpečnosť webových aplikácií](<https://yellowcube.eu/sk/glossary/web-application-security/>) · [Cross-site request forgery (CSRF)](<https://yellowcube.eu/sk/glossary/cross-site-request-forgery/>) · [Clickjacking](<https://yellowcube.eu/sk/glossary/clickjacking/>) · [Firewall webových aplikácií (web application firewall, WAF)](<https://yellowcube.eu/sk/glossary/web-application-firewall/>) · [Bezpečnosť prehliadača](<https://yellowcube.eu/sk/glossary/browser-security/>)

### Zdroje

[OWASP Cross-Site Scripting Prevention Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/Cross_Site_Scripting_Prevention_Cheat_Sheet.html) · [MITRE CWE-79: Cross-site Scripting](https://cwe.mitre.org/data/definitions/79.html)

## Uvedenie zdroja a rozsah

Táto verzia Markdown sa generuje z rovnakých schválených záznamov ako kanonická stránka HTML. Pri citovaní použite kanonickú URL.

