Obsah:
Definice - Co znamená díra XSS?
Díra XSS je webová aplikace, která poskytuje dynamický obsah uživatelům se zranitelností zabezpečení počítače. Tato aplikace je cross-site scripting (XSS) a umožňuje útočníkovi využívat důvěrná data uživatele bez předání mechanismu řízení přístupu, jako je zásada stejného původu. Tato vada je vhodněji známá jako díra XSS.
Techopedia vysvětluje XSS Hole
Uživatel může například narazit na hypertextový odkaz ve webové aplikaci odkazující na nějaký škodlivý obsah. Uživatel může kliknout na odkaz a být veden na jinou stránku obsahující část nebo e-mailový bulletin. Tato stránka shromažďuje informace o uživateli ve formě hesla. Vytváří také škodlivou výstupní stránku, která označuje určitou falešnou odpověď přizpůsobenou tak, aby se uživateli ukázala jako skutečná. Data zadaná uživatelem mohou být zneužita nebo relace uživatele může být ukradena krádeží souborů cookie. Na základě citlivosti shromážděných údajů se skriptování napříč lokalitami může pohybovat od pouhé zranitelnosti k závažné bezpečnostní mezeře. Po zneužití chyby zabezpečení XSS může útočník obejít zásady řízení přístupu organizace.
Koncept skriptování mezi weby je založen na stejné původní politice. Stejné původní zásady uvádějí, že webový prohlížeč používající JavaScript může bez jakýchkoli omezení přistupovat k různým vlastnostem a metodám patřícím ke stejnému webu. Škodliví útočníci mohou zneužít koncept stejné původní zásady tak, že do kódu JavaScript vloží škodlivý kód. Když uživatelé prohlíží webové stránky, mohou útočníci shromáždit některé užitečné uživatelské informace, například uživatelské jméno nebo heslo.
Podle statistik shromážděných společností Symantec v roce 2007 představuje skriptování napříč weby 80 procent všech bezpečnostních útoků provedených pomocí počítačů. Existují tři typy skriptování mezi weby:
- Netrvalý XSS: Netrvalý typ skriptování mezi weby je vidět během požadavků HTTP, ve kterých klient vkládá data do požadavku HTTP. Pokud server používá ke generování stránek data odeslaná klientem, díry XSS mohou být aktivní, pokud požadavek nebyl řádně dezinfikován. HTML stránky jsou složeny z obsahu i prezentace. Pokud uživatel se zlými úmysly přidá nějaký obsah, který nebyl ověřen, nastane injekce značkování. Uživatel ohrozí svou bezpečnost zadáním informací požadovaných škodlivým kódem. Útočník může uživatele uvést v omyl na jinou adresu URL, která může obsahovat sofistikovanější virus a získat důležité informace o uživateli.
- Persistent XSS: Škodlivý obsah, který útočník vstoupil, je uložen na straně serveru a všechny další požadavky klientů mají přístup k upravenému obsahu, což představuje vážné bezpečnostní riziko. Některá fóra například umožňují uživateli zveřejňovat zprávy ve formátu HTML. Útočník tedy může vložit kód JavaScript, aby předložil škodlivé textové pole pro shromažďování informací, jako je heslo. Útočník může také nakonfigurovat kód JavaScript tak, aby ukládal a přenášel každé heslo zadané do textového pole.
- DOM Based XSS: Model objektu dokumentu (DOM) je stromová struktura, která představuje všechny značky, které se objevují v dokumentu, který odpovídá standardům XML. DOM se používá v JavaScriptu pro přístup a manipulaci se značkami HTML a obsahem uvnitř značek. Útočník může vstoupit do škodlivého kódu JavaScriptu, který obsahuje příslušné příkazy DOM, k přístupu a úpravě důležitých informací o uživateli. Útočník může například pomocí DOM přesměrovat informace o uživateli nesprávným odesláním na škodlivý web třetí strany.