Publikované pred 2 rokmi: 01.07.2009 / Rastislav Turek, čítaní: 5174
Je mi jasné, že názov článku je bulvárny, nevymyslel som ho však ja. Pod týmto názvom publikoval pred niekoľkými dňami svoju úvahu Jakob Nielsen, kontroverzný odborník na prístupnosť (webov, aplikácií atď.). Článok vyvolal veľmi búrlivú diskusiu, a tak som sa rozhodol pridať aj svoj názor.
Meno a heslo dnes patrí k najpoužívanejším formám autentifikácie používateľa na serveri. Jeho použitie je relatívne jednoduché, nevyžaduje, aby ste so sebou nosili ďalšie zariadenia, ktoré by autentifikáciu vykonali za vás (ako napríklad kľúčik USB so súborom certifikátov). Samozrejme, táto ochrana má aj svoje tienisté stránky. Mnoho odborníkov na bezpečnosť už dlho presadzuje, aby sa prešlo na inú formu ochrany, o ktorej však drvivá väčšina používateľov nechce ani len počuť. Faktom je, že zatiaľ nebol objavený spôsob, ktorý by bol jednoduchší a príjemnejší ako „meno a heslo“ a zároveň poskytol väčšiu formu ochrany. Mnoho ľudí si však neuvedomuje, že vaša banka má takmer rovnakú ochranu ako konto na Facebooku, ak využíva autentifikáciu touto metódou. Banky preto zaviedli niekoľkoúrovňovú autentifikáciu, keď je potrebné zadať ďalšie informácie, aby bol používateľ overený.
Nielsenova úvaha nezasahuje do použiteľnosti a bezpečnosti samotnej ochrany. Nielsen v článku kritizuje tzv. hviezdičkovanie hesla, ktoré podľa jeho slov „nezvyšuje úroveň bezpečnosti, zato vás stojí biznis vďaka chybám pri prihlásení“. Skôr ako sa pustíte do zvyšku tohto článku, prosím, prečítajte si Nielsenov článok, nebudem sa vracať k jeho úvahám.
Názor
Je mi jasné, že mnohým čitateľom sa už pri nadpise zakrvavil pohľad a teraz všetko čítajú cez tento filter. Skúste však na chvíľku odložiť emócie. Nielsen má v jednej veci pravdu. Hviezdičkovanie hesla prináša problémy aj tým, ktorí sú schopní písať na klávesnici bez toho, aby sa na ňu museli pozerať. Táto technická zručnosť vyžaduje dokonalú memorizáciu všetkých klávesov klávesnice, čo trvá nejaký čas (a tisícky hodín napísaných textov). Drvivá väčšina bežných používateľov túto zručnosť nemá. Mnohí teda píšu heslo na niekoľkokrát (empiricky overené) alebo ho napíšu niekam inam a potom prekopírujú do políčka na heslo. Niektoré weby to však neumožňujú (JavaScript), a tak sa používateľ trápi. Tieto problémy sa stávajú zriedkavejšími s narastajúcou zručnosťou používateľa v písaní na klávesnici, no nezmiznú úplne. Občas sa aj majster tesár utne. Určite ste sami už žiadali o zresetovanie hesla z dôvodu, že ste ho nevedeli, a ak web poslal aktuálne heslo (čo fakt niektoré robia), boli ste prekvapení, že ste mali chybu v písmenku či dvoch.
Za
Nielsen navrhuje, aby políčka na heslo boli nahrádzané bežným políčkom, do akého vypisujete prihlasovacie meno. Tento krok podporuje tvrdením, že hviezdičkovanie vzniklo ako ochrana pred zlodejom, ktorý vám pozerá ponad plece. Nielsen tvrdí, že keby zlodej chcel, môže vám jednoducho pozerať na prsty.
Na toto vyhlásenie zareagovalo mnoho ľudí, pričom najčastejšie tvrdili, že „heslo píšem tak rýchlo, že by som ho ani sám nedokázal odsledovať“. Žiaľ, Nielsen nijako nerozviedol svoje argumenty, a tak to skúsim ja. Michal Zalewski, odborník na bezpečnosť, ktorého si veľmi vážim (dnes zamestnanec Googlu), napísal pred niekoľkými rokmi článok, ktorý nazval Cracking safes with thermal imaging. Michalov server odišiel do večných vôd Arpanetu, a tak je odkaz už len na Google Cache, kde, žiaľ, nie sú obrázky, ktoré krásne ilustrovali tento útok. Pri útoku sa používa kamera, ktorá dokáže snímať termálne teplo, ktoré človek zanecháva pri stlačení jednotlivých klávesov. Pri tejto forme útoku vám nepomôže ani rýchlosť, kamera bez problémov zaznamená každé stlačenie klávesu. Kameru možno zakúpiť jednoducho a aj relatívne lacno napríklad aj tu. Ďalšia možnosť je technika útoku predstavená tento rok, ktorá umožňuje snímanie klávesov za pomoci lasera.
Proti
Som si vedomý, že nie každý zlodej bude mať poruke takéto zariadenie. Faktom je, že odhviezdičkovanie hesla by prinieslo niekoľko situácií, ktoré by mohli ohroziť používateľovu bezpečnosť. Napríklad bezpečnostné kamery. Je síce pravda, že väčšina týchto kamier má katastrofálny obraz, ale niektoré dokážu zo seba dostať už slušnú kvalitu.
Ďalšia problematická situácia môže byť, ak sa za vás niekto postaví alebo prezentujete a potrebujete živú ukážku, v ktorej sa budete prihlasovať, prípadne vám zazvoní súrne telefón v polovici hesla a vy budete musieť opustiť počítač (heslá bývajú väčšinou logické slová [málokto má doma psa xf32Zsa7], takže ich nie je problém dokončiť). Ďalší problém môže byť malware, ktorý robí screenshoty pri písaní (zameriava sa na bankové weby, ktoré prišli s virtuálnou klávesnicou, pričom malware neustále sníma obraz pri každom kliknutí či stlačení písmenka).
V neposlednom rade môže spôsobiť problém aj cache (pamäť) prehliadačov, ktoré si pamätajú texty zadávané do formulárov. S tým je, samozrejme, spojené aj predvypĺňanie formulárov, ktoré síce možno zakázať aj na strane servera, aj na strane používateľa, no ruku na srdce: Koľkí to tak doma máte nastavené a koľkí to tak nastavajú na webe?
Každopádne sa predvypĺňanie formulárov dá vypnúť cez parameter AUTOCOMPLETE ako v tomto príklade.
Zmeny a možnosti
Na oboch stranách existujú argumenty, ktoré potvrdzujú a aj vyvracajú tento návrh. Preto je podľa mňa potrebné hľadať kompromis. Nielsen ho vidí v poskytnutí checkboxu (zaškrtávací štvorček), ktorý by za pomoci JavaScriptu zmenil typ políčka a tým ho za/odhviezdičkoval. Štandardne by však podľa Nielsena malo byť políčko bez hviezdičiek a na požiadanie by si ho používateľ zahviezdičkoval, i keď pripúšťa prípady, keď by mohlo byť políčko zahviezdičkované už od začiatku, ako napríklad prihlasovací formulár do banky.
Ja si nemyslím, že by používatelia boli schopní posúdiť prípadné riziko. Dnes je veľmi veľa portálov prepojených, a tak strata hesla k jednému môže viesť k problémom pri ďalších. Netreba zabúdať ani na to, že množstvo používateľov používa rovnaké heslá, často len jedno či dve pre celý internet. Vtedy môže byť strata hesla veľmi kritická, i keď ste oň prišli na relatívne nepodstatnom webe.
Úplné vylúčenie hviezdičkovania podľa mňa reálne nie je. Príkladom môže byť PIN kód v bankomate alebo dôležitosťou podobné údaje, ktoré by si asi nik neželal zobrazovať v čitateľnej forme. Ak niekto chce, môže si heslo odhviezdičkovať za pomoci rôznych nástrojov či doplnkov, a to nielen pre prehliadač, ale aj pre systém. Pre prehliadač Firefox môžete využiť rozšírenie Unhide Passwords, ktoré vám umožní zobraziť zahviezdičkované heslo. Ja vidím riešenie v zobrazovaní posledného napísaného písmenka napríklad po dobu 1 s. Aj mne by sa občas takáto vymoženosť hodila. Princíp je jednoduchý. Pri písaní vidíte vždy posledné písmenko po dobu 1 s, potom sa zmení na hviezdičku. Ak sa nemýlim, tento princíp je aplikovaný v iPhonoch. Podľa mňa je to jedno z najlepších riešení, ktoré sa dá aplikovať na túto formu autentifikácie používateľa.
Príklad:
a
*s
**c
***d
****g
*****
Ak vás nebaví stále vypĺňať formuláre ručne, možno používať rôzne automatizované riešenia, ako napríklad KeePass, PassPack alebo môj obľúbený, ale, žiaľ, platený Roboform. Tieto nástroje vám umožnia rýchlo a jednoducho spravovať tisícky hesiel pre rôzne weby, čím nielen odstránia potrebu používať jedno či dve heslá pre jeden web, ale zároveň vám umožnia používať veľmi komplikované predgenerované heslá, ktoré si ani sami nezapamätáte (a ani nemusíte). Tie môžete ukladať on-line a využívať ich, kdekoľvek sa nachádzate. Aj tu sú, samozrejme, riziká, ktoré si treba uvedomiť, ale o tých zase inokedy.
Záver
Doteraz som sa držal len prvej časti Nielsenovho článku, ktorý sa týkal hviezdičkovania hesla. V druhej časti kritizoval používanie tlačidla RESET, ktoré podľa neho dnes už nemá (a malo vôbec niekedy?) opodstatnenie. Ja s ním musím len súhlasiť. Občas sa mi v niektorých formulároch, ktoré obsahujú toto nechutné tlačidlo, stane, že namiesto odoslať stlačím RESET. Väčšinou za to môže zle poradie tlačidiel, keď RESET reaguje ako prvý na akciu vyvolanú stlačením klávesu ENTER. To u mňa vždy vyvolá riadnu zúrivosť, a preto som si napísal skript pre Greasemonkey, ktorý tlačidlo RESET vždy z webu odstráni.
A na úplný záver. Sám Bruce Schneier súhlasí s Nielsenom. Pod jeho článkom sa nachádza momentálne 133 komentárov, kde sa dajú nájsť aj zaujímavé názory (ale musíte sa najskôr obrniť proti fakt hlúpym komentárom).
Zdroj: Synopsi blog
Dĺžka:00:16:42
Dĺžka:00:28:37
Dĺžka:00:10:04
Dĺžka:00:32:25