17Aug

Proč byste se měli obávat, kdykoli dojde k úniku databáze hesel služby

click fraud protection

zadejte heslo

"Včera jsme ukradli databázi hesel. Ale nemějte strach: vaše hesla byla šifrována. "Pravidelně vidíme prohlášení, jako je tento online, včetně včerejška, od společnosti Yahoo. Ale měli bychom tyto ujištění skutečně přijmout v nominální hodnotě?

Realita je, že databáze hesel kompromisy jsou obavy, bez ohledu na to, jak se společnost může pokusit to točit. Existuje však několik věcí, které můžete udělat, abyste se izolovali, bez ohledu na to, jak jsou špatné bezpečnostní postupy společnosti.

Jak mají být uložena hesla

Zde je postup, jakým by firmy měly ukládat hesla v ideálním světě: Vytvoříte účet a zadáte heslo. Namísto samotného uložení hesla služba generuje z hesla "hash".Jedná se o jedinečný otisk, který nelze obrátit. Například heslo "heslo" se může změnit na něco, co vypadá více jako "4jfh75to4sud7gh93247g. ..".Při zadání hesla k přihlášení služba generuje hash z ní a zkontroluje, zda hodnota hash odpovídá hodnotě uložené v databázi. V žádném okamžiku služba nikdy nezakládá vaše heslo na disk.

instagram viewer

kryptografické-hash-funkce

K určení vašeho skutečného hesla by útočník s přístupem k databázi musel předběžně vypočítat hash pro běžné hesla a pak zkontrolovat, zda existují v databázi.Útočníci to dělají pomocí vyhledávacích tabulek - obrovských seznamů hashů, které odpovídají heslům. Háčky pak lze porovnat s databází.Například útočník by poznal hash pro "heslo1" a pak zjistil, zda nějaké účty v databázi používají tento hash. Pokud jsou, útočník ví, že heslo je "heslo1".

Aby se zabránilo tomu, služby by měly "sůl" jejich hash. Namísto vytváření hash z hesla samotného přidá náhodný řetězec na přední nebo konec hesla před tím, než je spustí.Jinými slovy, uživatel by zadal heslo "heslo" a služba by přidala sůl a hash heslo, které vypadá spíše jako "password35s2dg." Každý uživatelský účet by měl mít svou vlastní unikátní sůl a to by zajistilo, že každý uživatelský účetby měl v databázi jinou hodnotu hash pro své heslo. I kdyby více hesel použilo heslo "heslo1", měly by různé hashy kvůli různým hodnotám soli. To by porazilo útočníka, který se pokusil předběžně vypočítat hash pro hesla. Namísto toho, aby dokázali vygenerovat hash, který by se vztahoval na každý uživatelský účet v celé databázi najednou, museli generovat unikátní hash pro každý uživatelský účet a jeho jedinečnou sůl. To by vyžadovalo mnohem větší výpočetní dobu a paměť.

To je důvod, proč služby často říkají, že se nemusíte obávat. Služba používající správné bezpečnostní postupy by měla říci, že používají osolené heslo hash. Pokud prostě říkají, že hesla jsou "hash", je to více znepokojující.LinkedIn například ztratil hesla, ale nekompromisoval je - tak to bylo velký problém, když LinkedIn ztratil 6,5 milionu hesel v roce 2012.

Bad Password Practices

otevřená databáze hesel

To není nejtěžší věc, kterou je třeba implementovat, ale mnoho webových stránekstále se jí podaří zablokovat různými způsoby:

  • Ukládání hesel v prostém textu : Spíše než obtěžovat hašováním, někteří z nejhorších pachatelů mohou jen vynechat hesla ve formátu prostého textu do databáze. Pokud je taková databáze ohrožena, vaše hesla jsou zřejmě ohrožena. Nezáleželo by na tom, jak silné jsou.
  • Vymazání hesel bez jejich osolování : Některé služby mohou rozptýlit hesla a vzdát se tam, přičemž se rozhodnou nepoužívat soli. Takové databáze hesel by byly vyhledávací tabulky velmi zranitelné.Útočník by mohl vygenerovat hash pro mnoho hesel a pak zkontrolovat, zda existují v databázi - mohli by to udělat pro každý účet najednou, pokud nebyla použita žádná sůl.
  • Opětovné použití soli : Některé služby mohou používat sůl, ale mohou znovu použít stejnou sůl pro každé heslo účtu uživatele. To je zbytečné - pokud by byla stejná sůl použita pro každého uživatele, dva uživatelé se stejným heslem by měli stejný hash.
  • Použití krátkých solí : Pokud jsou použity soli pouze několika číslic, bylo by možné generovat vyhledávací tabulky, které obsahují všechny možné soli. Například pokud byla jako sůl použita jedna číslice, útočník by mohl snadno generovat seznamy hashů, které obsahovaly všechny možné soli.

Firmy vám vždy neřeknou celý příběh, takže i když říkají, že heslo bylo zrušeno( nebo hashováno a slané), nemusí používat nejlepší postupy. Vždy se mýlíte opatrně.

Jiné obavy

Je pravděpodobné, že hodnota soli je také přítomna v databázi hesel. To není tak špatné - kdyby byla pro každého uživatele použita jedinečná hodnota soli, útočníci by museli utrácet obrovské množství výkonu procesoru, které by porušilo všechna tato hesla.

V praxi tolik lidí používá zjevné hesla, že by bylo snadné určit hesla mnoha uživatelských účtů.Například, pokud útočník zná vaše hash a zná svou sůl, mohou snadno zkontrolovat, zda používáte některé z nejběžnějších hesel.

Pokud má útočník za vás a chce své heslo vykráčet, může to udělat s hrubou silou, pokud zná hodnotu soli - což pravděpodobně dělají.Díky místnímu, offline přístupu k databázím hesel mohou útočníci využívat všechny útoky na hrubou sílu, které chtějí.

Další osobní údaje pravděpodobně úniku při odcizení databáze hesel: uživatelská jména, e-mailové adresy a další.V případě výskytu úniku Yahoo došlo také k úniku bezpečnostních otázek a odpovědí - což, jak všichni víme, ulehčuje ukrást přístup k něčímu účtu.

Nápověda, Co mám dělat?

Bez ohledu na to, co služba říká, když je její databáze hesel ukradena, je nejlepší předpokládat, že každá služba je zcela neschopná a jedná podle toho.

Nejprve nepoužívejte hesla na více webových stránkách. Použijte správce hesel, který generuje pro každé webové stránky jedinečná hesla. Pokud útočník zjistí, že vaše heslo pro službu je "43 ^ tSd% 7uho2 # 3" a použijete toto heslo pouze na jednom konkrétním webu, nenaučili jste nic užitečného. Používáte-li všude stejné heslo, mohli se dostat do vašich ostatních účtů.Takto se počet účtů lidí "hackuje".

generate-random-password

Pokud je služba narušena, nezapomeňte změnit heslo, které tam používáte. Měli byste také změnit heslo na jiných webech, pokud jej znovu použijete - ale neměli byste to dělat na prvním místě.

Měli byste také zvážit použití dvoufaktorové autentizace, která vás ochrání, i když se útočník dozví vaše heslo.

SOUVISEJÍCÍ ČLÁNKY
Proč byste měli používat správce hesel a jak začít
Co je dvoufaktorové ověřování a proč je potřebuji?

Nejdůležitější věc není opětovné použití hesel. Databáze kompromitovaných hesel by vám nemohly ublížit, pokud používáte všude jedinečné heslo - pokud v databázi neukládají něco jiného, ​​jako je číslo kreditní karty.

Image Credit: Marc Falardeau na Flickru, Wikimedia Commons