Nedávno se objevilo několik případů, kdy společnosti přiznaly, že ukládaly uživatelská hesla v nezašifrované podobě, tedy jako běžný text. Je to srovnatelné s uložením hesla do textového souboru. Z bezpečnostních důvodů by však hesla měla být takzvaně „osolená“ a „hashovaná“. Proč se toto v současné době neděje běžně?
Proč je ukládání hesel v prostém textu nebezpečné?
Pokud firma ukládá hesla jako běžný text, kdokoliv, kdo získá přístup k databázi hesel, nebo k jinému souboru, kde jsou hesla uložena, si je může přečíst. V případě, že se do systému nabourá hacker, uvidí všechna hesla bez jakéhokoli problému.
Ukládání hesel v prostém textu je velmi špatná praktika. Místo toho by firmy měly hesla „solit“ a „hashovat“. To znamená, že k heslu se přidají další data a následně se zakóduje tak, aby nebylo možné heslo zpětně dešifrovat. V praxi to znamená, že i když někdo hesla z databáze získá, jsou pro něj nepoužitelná. Při přihlašování systém zkontroluje, zda se zadané heslo shoduje s uloženou zakódovanou verzí, ale není možné zpětně z databáze zjistit vaše původní heslo.
Proč tedy některé společnosti ukládají hesla jako prostý text? Někdy bohužel bezpečnost není prioritou. V některých případech je bezpečnost obětována kvůli uživatelskému pohodlí. A jindy se stane, že firma při ukládání hesel postupuje správně, ale přidá příliš horlivou funkci logování, která hesla zaznamenává v nešifrované podobě.
Příklady společností s nesprávně uloženými hesly
Je dost možné, že i vy jste byli ovlivněni těmito špatnými postupy, protože společnosti jako Robin Hood, Google, Facebook, GitHub, Twitter a další v minulosti ukládaly hesla v prostém textu.
V případě Googlu se jednalo o specifickou situaci, kdy většina hesel uživatelů byla řádně hashovaná a osolená, ale hesla účtů G Suite Enterprise byla uložena v nešifrované podobě. Důvodem bylo údajně historické nastavení, kdy správci domén měli k dispozici nástroje pro obnovu hesel. Správně uložená hesla by ale takovou možnost neumožňovala, pro obnovu by fungoval pouze proces resetování hesla.
I Facebook přiznal ukládání hesel v prostém textu, nicméně neupřesnil, co k tomu vedlo. Nicméně, z pozdější aktualizace vyplývá, že se problém týkal i:
…dalších logů hesel Instagramu, které byly uloženy v čitelné podobě.
Je možné, že společnost původně uloží heslo správně, ale následné přidání nových funkcí způsobí problémy. Kromě Facebooku, Robin Hood, Github a Twitter chybně zaznamenávaly hesla v prostém textu.
Protokolování je užitečné pro hledání problémů v aplikacích, hardwaru i systémovém kódu. Pokud ale firma tuto funkci důkladně neotestuje, může způsobit více škody než užitku.
V případě Facebooku a Robinhood se stalo, že když uživatel zadal uživatelské jméno a heslo při přihlašování, tato data byla zaznamenána a uložena do logu. Kdokoliv, kdo měl k těmto logům přístup, tak měl i vše potřebné k převzetí uživatelského účtu.
Ve výjimečných případech, jako v případě T-Mobile Australia, firma může ignorovat důležitost zabezpečení, někdy ve jménu pohodlí. V odstraněné konverzaci na Twitteru, zástupce T-Mobile vysvětlil uživateli, že firma ukládá hesla v prostém textu. Toto umožňovalo pracovníkům zákaznické podpory vidět první čtyři písmena hesla pro ověření uživatele. Ostatní uživatelé Twitteru správně upozornili na to, jak je to nebezpečné.