EN

Vážna zraniteľnosť prehliadačov! Vaše uložené heslá sú nezabezpečené!

Manažér hesiel v prehliadačoch v spojení HTML kódom obsahuje vážnu zraniteľnosť. Problém sa roky nerieši.

Už pred dvoma rokmi vývojár Eliott Kember poukázal na chybu, ktorá umožňovala komukoľvek pri počítači zistiť (uložené) heslá k webovým stránkam. Vývojár vtedy prišiel s informáciou, že vďaka prehliadaču Chrome je možné dostať heslá bez tzv. master hesla aj z ostatných prehliadačov. Google vtedy tvrdil, že je to v poriadku. Krátko potom bola podmienka, pre zobrazenie hesiel, vyžadujúca master heslo ale pridaná aj do prehliadača Google Chrome. Ide zväčša o heslo, ktoré používame pri prihlásení. To je však málo platné.

Funkcia manažér hesiel je v prehliadačoch dlhodobo, je však šokujúce, že nikto neinformoval užívateľov, že jednoduchým pozmenením reťazca na stránke, heslo odkryjeme! Nepotrebujeme tak žiadne master heslo, to je v prehliadačoch doslovne „na maškarádu“. Je pravda, že sa zraniteľnosť netýka úplne všetkých stránok, ide však napríklad o Facebook, internetové fóra či niektoré webové hry. Skúšal som napríklad web Rockstar Social či niektoré slovenské mailboxy ako Azet či Pobox, heslo je možné získať ku každému z nich. Zaujímavosťou je, že je postihnutý aj Gmail, tu je však heslo nutné uložiť viackrát. Pravdepodobne preto, že Google využíva iný typ prihlasovania. Weby, ktoré používajú vlastný systém prihlasovania alebo vyskakovacie okná sú nedotknuté. Pri týchto weboch nefunguje funkcia autofill. Pravdepodobne preto sa mi danú zraniteľnosť nepodarilo použiť ani pri viacnásobnom pokuse. Napriek tomu bude postihnutá výrazná väčšina stránok (vrátane Internet bankingu).

Pre ukážku som vytvoril skúšobný mail.

 
Reťazec po úprave a vidíme výsledok.
 

Ide o nasledujúci reťazec:

<input class="required" id="password-field" autocomplete="off" name="password" type="password" title="Password" value="" placeholder="Password" tabindex="2">

Ktorý stačí zmeniť na:

<input class="required" id="password-field" autocomplete="off" name="password" type="text" title="Password" value="" placeholder="Password" tabindex="2">

Reťazec môže mať samozrejme aj mierne odlišnú podobu. Je tak nutné vedieť správne identifikovať zraniteľný reťazec. Na druhej strane to zvládne aj mierne pokročilý používateľ.  Na jednej webovej stránke sa totiž hodnota "password" nachádza len párkrát (približne 3-9) a správna identifikácia potrvá pár sekúnd.

Zaujímavosťou je, že o niečo menej dobre funguje autovyplňovanie v Opere (v porovnaní s Google). Z Opery tak viete pomocou tejto zraniteľnosti vytiahnuť menej hesiel. Ďalšou zaujímavosťou je, že touto zraniteľnosťou netrpí MS Edge. Ak som editoval reťazec v Edge, prehliadač mi „vyprázdnil okno“. Bolo však vidno zadávané heslo (nebolo cenzurované). Autofill (automatické vyplňovanie hesiel) ale heslo nevyhodil sám. Zo správcu hesiel v prehliadači Edge nebolo heslo možné nijako vyexportovať (exportovať z Edge nevie ani Opera ani Chrome).

Treba dodať, že táto zraniteľnosť je využiteľná iba v prípade, ak má útočník priamy prístup k počítaču, prípadne vzdialený prístup. Je nutné si tak dať pozor komu svoj počítač požičiavate. Ďalším (najlepším a zrejme jediným funkčným) riešením je neukladať heslá! Chrome umožňuje vypnúť automatické vyplňovanie hesiel, toto nastavenie je však možné jednoducho zapnúť, a to bez master hesla. V Opere je toto riešenie nefunkčné. Pred dvoma rokmi sa na podobný problém poukázalo v prehliadači Safari, ten ešte umožňoval automaticky vypĺňať informácie o kontaktoch či kreditné karty.

Na záver som vyskúšal aj Mozzilu v poslednej verzii a rovnako ako Edge ani tu nie je možné zraniteľnosť využiť. Opäť dôjde iba k odkrytiu zadaného reťazca. Mozzila ale v prednastavení zobrazuje heslá v manažérovi bez master hesla, čo je taktiež absurdné. Útočníkovi tak nič nebráni exportovať heslá do iného prehliadača.

Na záver teda ešte raz pripomínam, že jediná ochrana je neukladať heslá, prípadne nepripúšťať nikoho neznámeho k PC. Riziko za to jednoducho nestojí. Je priam neuveriteľné, že takáto chyba sa v roku 2015 ešte stále nachádza v prehliadačoch. 

Komentáre (10)
...
to nieje chyba to je vlastnost normalna, chrome dovoluje menit stranku a hesla su aj tak neni sifrovane , ak su ulozene v chrome /firefoxe/IE/opere , a daju sa najst aj v subore vsetky
Ján Kisty
mozno to nie je chyba, ale absurdnost urcite:) Ulohou clanku je poukaz na to, ze ten zaheslovany manazer je zbytocny. A varovat pouzivatelov pred ukladanim.
Von Kedoslav II.
To ma inak uz dost dlho zaraza, ze kto ma pristup k mojmu pc a firefoxu, moze si pozriet vsetky hesla. Chcelo by to heslo na hesla :D
Ján Kisty
mozete zapnut to master heslo aspon
Von Kedoslav II.
ja som si vzdy myslel, ze hlavne heslo je nieco ine :d Resp. ze to je primarne heslo ktore pouziva prehliadac :D
badyto__
Hh, ja som to doteraz bral ako feature a nie bug :D Toz napriklad ked idete tu na forum (predvyplni sa vam meno/heslo) a potom staci pastnut do konzoly: alert(document.getElementById('password').value); A heslo je na svete :D Viem si predstavit napr. nejaku reklamu s
dezider pankrac
uu ide sa nato, dik za tip :D
badyto
Alebo este lepsie - vytvorite si niekde stranku, date si tam iframe ktory natiahne login formular daneho webu, potom cez skracovac vytvorit peknu linku a rozoslat do komentarov po webe v style "chces vidiet moje kozy, klik tu" alebo "tak toto je uz sila: http://dopice.sk/asdf" mno a po kliku mate heslo :D
hys
najprv si to odskusaj a potom trep. Kazdy prehliadac ma uz roky zapnuty CORS - cross origin resource sharing, ktoreho sucastou je aj blokovanie prestupu scriptov z jednej domeny do druhej. Iframe mat mozes, ale do jeho document object modelu sa nedostanes. Musel by si byt na rovnakej domene ako stranka v iframe (co sa ti podari asi velmi tazko).
Kalo
:D Ale ako konšpiračná teória je to dobré, nie? :D
Pridať nový komentár
TOPlist