Pojem
Útok XSS
Cross-site scripting, útok, pri ktorom útočník vloží do webovej stránky škodlivý skript, ktorý sa potom spustí v prehliadači iných návštevníkov a môže ukradnúť ich prihlásenie či údaje. Bráni mu správne ošetrenie vstupov a bezpečnostné hlavičky.
Aktualizované
Čo to znamená
Cross-site scripting, skrátene XSS, je útok, pri ktorom útočník vloží do webovej stránky škodlivý skript, ktorý sa potom spustí v prehliadači iných návštevníkov. Skript môže ukradnúť ich reláciu a prevziať tak prihlásený účet, získať údaje z formulárov alebo zmeniť obsah stránky.
Rozlišuje sa uložené XSS, keď sa škodlivý kód uloží napríklad v komentári či profile a spustí sa každému, kto stránku otvorí, odrazené XSS, keď je kód súčasťou odkazu, na ktorý obeť klikne, a XSS v prehliadači, keď zraniteľnosť vzniká v samotnom JavaScripte stránky.
Podobne ako SQL injection patrí XSS medzi najčastejšie zraniteľnosti webových aplikácií. Príčinou je takmer vždy nesprávne spracovanie vstupov od používateľov, ktoré sa bez ošetrenia zobrazia na stránke a prehliadač ich vykoná ako kód.
Ako to funguje v praxi
Základnou ochranou je správne ošetrenie výstupu, teda kódovanie všetkých údajov od používateľov pred ich zobrazením, a kontrola vstupov. Moderné webové frameworky to robia do veľkej miery automaticky, no vývojári musia dávať pozor pri výnimkách, keď vkladajú surový HTML kód.
Ďalšiu vrstvu ochrany prinášajú bezpečnostné hlavičky, najmä politika bezpečnosti obsahu, ktorá obmedzí, odkiaľ môže stránka načítať a spúšťať skripty. Prihlasovacie cookies by mali mať nastavené príznaky, ktoré bránia ich čítaniu zo skriptov.
Pravidelné penetračné testy a aktualizácie použitých knižníc v rámci patch managementu pomáhajú zraniteľnosti odhaliť a odstrániť. Väčšie firmy využívajú aj bug bounty programy, v ktorých odmeňujú bezpečnostných výskumníkov za nahlásené chyby.
Na čo si dať pozor
WAF môže zachytiť mnohé pokusy o XSS, ale nie je náhradou za bezpečné programovanie. Útočníci často nachádzajú spôsoby, ako filtre obísť, preto je dôležité odstrániť príčinu priamo v kóde aplikácie.
Ak XSS umožní únik osobných údajov zákazníkov, môže ísť o porušenie ochrany osobných údajov s povinnosťou oznámiť ho dozornému orgánu a dotknutým osobám. Pri objednávaní webu je dobré mať v zmluve s dodávateľom požiadavky na bezpečnosť a postup pri oprave zraniteľností.
Potrebujete pojem vysvetliť na vašej konkrétnej situácii? Konzultácie od 55 € / hodina bez DPH, podľa témy a zložitosti.