03.05.2017

Téměř neodhalitelný homografický phishing

Žádný “drahoušek zákazník” nebo zemřelý strýček milionář. Tentokrát se jedná o potenciální vektor útoku, který je schopný ošálit i velmi zběhlé uživatele. Přesvědčte se sami.

Cover 22

Nejpoužívanější písmo na světě je bezesporu Latinka. Je to písmo, kterým je psán tento článek, zřejmě se nachází i na vaší klávesnici a také je základem pro definovanou sadu znaků, které lze použít v adrese webových stránek. Latinka však není zdaleka jediným používaným písmem - jiné znaky používají např. v Rusku, Saudské Arábii nebo v Číně, a tak je v dnešním světě rozvinutého internetu očekávaným požadavkem, aby jména domén mohla obsahovat i jiné než standardní znaky. A odpovědí je samozřejmě Unicode, kódování, které podporuje nesčetné množství nestandardních znaků. Domény, které obsahují některé tyto nestandardní znaky, se pak označují jako IDN.

Díky podpoře Unicode tak mohou vznikat domény jako www.даль.com nebo www.茶.co.jp. Pro nestandardní doménová jména však nemusíme chodit daleko - i u nás existuje slavná doména www.háčkyčárky.cz. Koncept IDN však obecně podporují jen některé domény nejvyššího řádu, a to z dobrých důvodů - větší znaková sada totiž dává větší prostor k nekalým aktivitám, jednou z nich je právě i Homografický útok.

Vyzkoušejte si schválně homografický útok na sobě. Navštivte nejprve doménu www.epic.com a nyní ji navštivte ještě jednou, avšak tentokrát z této adresy: www.epic.com. Jaktože je obsah webu jiný, když je adresa webu stále stejná? Protože stejná není. Jedná se o Unicode znaky z jiné, nestandardní abecedy, které jen vypadají stejně jako naše známé znaky z Latinky. A vypadají naprosto stejně - znaky se shodují na úrovni pixelů.

Webové prohlížeče nyní mají těžkou volbu - buď povolit nestandardní Unicode znaky (a těch jsou miliony), a umožnit tak útočníkům vytvářet dokonalé podvodné stránky, a nebo zobrazování Unicode v adresním řádku nepodporovat a vytvořit si tak v dnešním moderním světě zástupy nespokojených běžných uživatelů. Každý webový prohlížeč k problému přistupuje jinak, například Google Chrome má sadu pravidel, na základě kterých se rozhoduje, jestli Unicode znak vykreslí nebo ne. Jedním z nich je například fakt, jestli všechny znaky v daném doménovém jméně pocházejí ze stejné abecedy.


Google zároveň na tento aktuální problém zareagoval a v nově vydané verzi 58 svého prohlížeče pravidla pro vykreslení Unicode znaků dále zpřísnil. V takovém případě prohlížeč místo Unicode znaků zobrazí adresu v tzv. Punycode kódování. Což je zároveň zřejmě nejlepší způsob, jak se proti útokům tohoto typu (například v prohlížeči Firefox) bránit.

Více na www.xudongz.com

Kam dál?