Cross-Site Scripting nebo útok XSS

Existuje mnoho různých počítačových útoků, kterým jsme vystaveni, v tomto tutoriálu budeme hovořit o Kybernetický útok Cross-Site Scripting (XSS). Tento útok spočívá v vložení nežádoucího kódu do webových aplikací. Díky tomu může útočník změnit chování aplikace, což může poškodit data, ztratit informace, odmítnout službu (DoS) atd.

Útočník by například mohl přimět zranitelnou webovou stránku přesměrovat provoz na svůj vlastní, což by mělo špatné důsledky jak pro majitele stránky, tak pro uživatele.

Jaké to může mít důsledky?

Různorodé a závažné, ale představte si, že Facebook má zranitelnost tohoto typu, útočník ji zneužije a zfalšováním původní stránky se vytvoří klon této stránky, čímž bude emulovat Facebook. Uživatelé se přihlásí a útočník si ponechá své přihlašovací údaje, poté je jednoduše přesměruje na oficiální stránku, takže to uživatel zjistí jen zřídka.

Kde můžeme zkontrolovat, zda je web zranitelný?

Můžete to udělat mnoha způsoby, ale nejběžnější je na fórech nebo místech, kde umožňují komentáře v případě trvalého útoku, nebo v adresách URL v případě trvalého útoku.

Co je příčinou této chyby zabezpečení?

Protože stránky správně neověřují datové vstupy provedené uživateli a také výstup není kódován. Pokud tedy máte webovou stránku, vždy nedůvěřujte uživatelům ověřujícím jejich data, programovací jazyky již přinášejí funkce, které umožňují například funkci strip_tag PHP odstraňuje HTML tagy (ale podívejte se na jeho upozornění).

Typy útoků XSSNestálý nebo zrcadlený typV tomto útoku je oběti poskytnuta manipulovaná adresa URL, která bude obsahovat kód, který má být vložen jako parametr.

Trvalý nebo přímý typData vložená uživatelem budou uložena na serveru, což ovlivní všechny uživatele, kteří se připojí k webu.

Odteď uvidíme příklady toho, jak by byl útok prováděn.

PoznámkaCílem tutoriálu je, abyste mohli testovat webové aplikace, které vytvoříte, nebo aplikace od lidí, kteří vám dají povolení, nikoli tak, abyste prováděli „škodlivé“ činy.

1. Nestálý příklad XSS


Chceme přesměrovat osobu na stránku, kterou ovládáme, ale abychom uvěřili, že navštěvuje původní stránku, můžeme mu poslat e -mail se zkráceným odkazem (nebo ne), který má následující obsah:
 http://www.paginadeseada.com/?search=
Na tomto příkladu je jasné, jak snadné je zneužít zranitelnost tohoto typu.

2. Trvalý příklad XSS


Do komentáře můžeme vložit kód HTML nebo JavaScript, který je uložen na serveru, a že při každém načtení stránky obsahující komentář přesměruje na naši webovou stránku, v tomto případě lze vložit následující kód HTML:
 
Obracíme se na jiný příklad, než jaký jsme viděli nyní. Nyní uvidíme příklady pomocí DVWA, webové aplikace vyvinuté v PHP a MySQL. Tato aplikace již přichází v Metasploitable 2, kterou můžete připojit k virtuálnímu počítači.

Umožní nám testovat různé webové útoky a můžeme upravit stupeň zabezpečení (u příkladů používáme ten nízký), také budeme moci vidět napadené kódy PHP, takže uvidíte, co ne použít ve svých kódech.

3. Příklady XSS odrážejí DVWA


V této části uvidíme několik příkladů, začněme. Pokud zadáme normální jméno, stejné Test, aplikace funguje dobře, podívejme se na obrázek:

ZVĚTŠIT

Pokud jako název zadáme následující kód:

 Test
Vidíme, že název se stává tučným (možná na obrázku není dobře doceněn):

ZVĚTŠIT

A pokud zadáme vstup, bude to fungovat? Abychom to otestovali, vložíme následující kód:

 
A na následujícím obrázku vidíme, že to fungovalo:

ZVĚTŠIT

Přejděme k XSS uloženo (uloženo).

4. XSS uložené příklady DVWA


Provedeme několik důkazů konceptu, první věc, kterou uděláme, je vložení krátkého textu doprovázeného skriptem jako komentář, uvidíme, co se stane, skript je co nejsnadnější, je následující:
 Dobrý den a na shledanou.

ZVĚTŠIT

Když jej zadáme jako na předchozí fotografii, klikneme na Podepsat návštěvní knihu, komentář se odešle, nic zvláštního se nestane, je vidět textový řetězec, neexistují žádné známky skriptu, jak vidíme níže:

ZVĚTŠIT

Takže se nic nestalo? Zkontrolujeme to, obnovíme stránku a uvidíme, že upozornění přeskočí:

ZVĚTŠIT

Můžete také ocenit, že komentář má pouze Hello, proto byl skript vložen mezi text, takže vidíte, že si ho přečte, zastaví se ve výstraze a po kliknutí na OK budete mít zbytek textu a zbytek stránky chyběl (stejně jako zelené odkazy, které byly pod částí s komentáři).

Nyní vložíme do komentáře formulář, můžete vidět, že počet znaků, které lze zadat, je omezen na 50, protože budeme kontrolovat HTML kód textové oblasti komentáře (pravé kliknutí, Zkontrolovat):

ZVĚTŠIT

Vidíme maxlength = ”50”, přidáme na konec 0 dalších, zbývající v 500, jak vidíme níže:

ZVĚTŠIT

A nyní se chystáme okomentovat následující HTML kód:

 Napište své jméno:
Vidíme, že to už přijímá, a tak dáváme Podepsat návštěvní knihu a vidíme následující:

ZVĚTŠIT

Jak jsme ověřili, formulář byl vložen. Nakonec, pokud chcete cvičit se střední úrovní v uložených XSS, zkuste následující:

1. Změňte maximální počet znaků, které pole Název přijímá, stejně jako my dříve.

2. Přidejte následující název:

 Test 

3. místo Jako komentář napište, co chcete.

4. místo Odešlete komentář a aktualizujte obrazovku, uvidíte, že je uložena.

Pokud byste chtěli soubor cookie odebrat, změnil bych skript pro následující:

 
Uvidíte následující:

Dále ponechám odkaz na rámec nazvaný XSSer, který nám pomůže detekovat, využívat a hlásit chyby zabezpečení XSS.

Na své stránce přichází, jak je nainstalován (v Kali Linuxu 2016 již přichází) a příklady použití.

Viděli jsme možnosti, které má útočník, když se mu zobrazí zranitelná webová stránka, vyhnout se těmto útokům není obtížnéDnes v každém programovacím jazyce máme funkce, které nám usnadňují život. Je důležité, abyste před spuštěním webové stránky zkontrolovali tyto chyby, protože to může zničit vaše podnikání.

Pokud chcete vidět výukový program, ve kterém se tato aplikace používá, ale jsou prováděny jiné typy útoků: Pentesting s DVWA.

Nakonec bude poskytnut odkaz pro případ, že byste chtěli vidět jiný typ útoku, který se také zabývá vkládáním kódu: SQL injection.

Líbil se vám tento návod a pomohl mu?Autora můžete odměnit stisknutím tohoto tlačítka, čímž mu dáte kladný bod

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave