Obsah:
Definícia - Čo znamená diera XSS?
Diera XSS je webová aplikácia, ktorá poskytuje dynamický obsah používateľom s zraniteľnosťou zabezpečenia počítača. Táto aplikácia je skriptovanie medzi servermi (XSS) a umožňuje útočníkovi využívať dôverné údaje používateľa bez absolvovania mechanizmu kontroly prístupu, ako je napríklad zásada rovnakého pôvodu. Táto chyba je vhodnejšie známa ako diera XSS.
Techopedia vysvetľuje XSS Hole
Používateľ môže napríklad naraziť na hypertextový odkaz vo webovej aplikácii, ktorý ukazuje na škodlivý obsah. Používateľ môže kliknúť na odkaz a dostať sa na ďalšiu stránku obsahujúcu časť alebo e-mailový bulletin. Táto stránka zhromažďuje informácie o používateľovi vo forme hesla. Vytvára tiež škodlivú výstupnú stránku, ktorá označuje určitú falošnú reakciu prispôsobenú tak, aby sa používateľovi javila ako originálna. Dáta zadané používateľom môžu byť zneužité alebo relácia používateľa môže byť ukradnutá krádežou cookies. Na základe citlivosti zozbieraných údajov sa skriptovanie medzi lokalitami môže pohybovať od jednoduchej zraniteľnosti až po vážne bezpečnostné medzery. Po zneužití zraniteľnosti XSS môže útočník obísť zásady riadenia prístupu organizácie.
Koncept skriptovania na viacerých stránkach je založený na rovnakej pôvodnej politike. Rovnaké pôvodné pravidlá stanovujú, že webový prehľadávač používajúci JavaScript môže bez akýchkoľvek obmedzení pristupovať k rôznym vlastnostiam a metódam patriacim k tej istej stránke. Škodliví útočníci môžu využiť koncept rovnakej pôvodnej politiky vložením škodlivého kódu na web pomocou JavaScriptu. Keď si používatelia prezerajú webové stránky, útočníci môžu zhromažďovať užitočné informácie o používateľovi, ako napríklad používateľské meno alebo heslo.
Podľa štatistík zhromaždených spoločnosťou Symantec v roku 2007 predstavuje skriptovanie na viacerých miestach 80% všetkých bezpečnostných útokov vykonaných pomocou počítačov. Existujú tri typy skriptovania naprieč lokalitami:
- Netrvalé XSS: Netrvalý typ skriptovania medzi lokalitami sa objavuje počas HTTP požiadaviek, v ktorých klient vkladá údaje do HTTP požiadavky. Keď server používa údaje generované klientom na generovanie stránok, XSS diery môžu byť aktívne, ak požiadavka nebola správne dezinfikovaná. HTML stránky sa skladajú z obsahu aj z prezentácie. Ak používateľ so zlými úmyslami pridá nejaký obsah, ktorý nebol overený, nastane vstrekovanie značiek. Používateľ ohrozí svoju bezpečnosť zadaním informácií požadovaných škodlivým kódom. Útočník môže používateľa uviesť do omylu na inú adresu URL, ktorá môže obsahovať sofistikovanejší vírus a získať dôležité informácie o používateľovi.
- Persistent XSS: Škodlivý obsah, ktorý útočník vstrekne, je uložený na strane servera a všetky ďalšie požiadavky klientov majú prístup k upravenému obsahu, čo predstavuje vážne bezpečnostné riziko. Napríklad niektoré fóra umožňujú užívateľovi uverejňovať správy vo formáte HTML. Útočník preto môže vložiť kód JavaScript, ktorý predstavuje škodlivé textové pole na zhromažďovanie informácií, ako je napríklad heslo. Útočník môže tiež nakonfigurovať kód JavaScript tak, aby ukladal a prenášal každé heslo zadané do textového poľa.
- DOM Based XSS: DOM model objektu (DOM) je stromová štruktúra, ktorá predstavuje všetky značky, ktoré sa objavia v dokumente, ktorý vyhovuje štandardom XML. DOM sa používa v JavaScripte na prístup a manipuláciu so značkami HTML a obsahom v značkách. Útočník môže vložiť škodlivý kód kódu JavaScript, ktorý obsahuje príslušné príkazy DOM, na prístup a úpravu dôležitých informácií o používateľovi. Útočník môže napríklad použiť DOM na presmerovanie informácií o používateľovi nesprávnym odoslaním na škodlivú webovú stránku tretej strany.