/ / Prečo by ste sa mali obávať kedykoľvek dôjde k úniku databázy hesiel služby

Prečo by ste sa mali báť, keď dôjde k úniku databázy hesiel služby

zadajte svoje heslo

"Včera nám bola ukradnutá databáza hesiel." Nemusíte sa však obávať: vaše heslá boli šifrované. “ Takéto výroky pravidelne vidíme online, vrátane včerajška, z Yahoo. Mali by sme však skutočne brať tieto záruky v nominálnej hodnote?

Realita je taká, že kompromisy v databáze hesiel problém, bez ohľadu na to, ako sa to spoločnosť môže pokúsiť roztočiť. Existuje však niekoľko vecí, ktoré môžete urobiť, aby ste sa izolovali, bez ohľadu na to, aké zlé sú bezpečnostné postupy spoločnosti.

Ako by sa mali heslá ukladať

Tu je príklad, ako by spoločnosti mali ukladať heslá videálny svet: Vytvoríte si účet a zadáte heslo. Namiesto ukladania samotného hesla služba vygeneruje z hesla „hash“. Toto je jedinečný odtlačok prsta, ktorý sa nedá vrátiť späť. Napríklad heslo „heslo“ sa môže zmeniť na niečo, čo vyzerá viac ako „4jfh75to4sud7gh93247g…“. Keď zadáte svoje heslo na prihlásenie, služba z neho vygeneruje hash a skontroluje, či sa hash hodnota zhoduje s hodnotou uloženou v databáze. Služba nikdy neuloží vaše heslo samotné na disk.

kryptografická hash-funkcia

Ak chcete zistiť svoje skutočné heslo, útočníks prístupom do databázy by musel predbežne vypočítať hodnoty hash pre bežné heslá a potom skontrolovať, či v databáze existujú. Útočníci to robia pomocou vyhľadávacích tabuliek - obrovských zoznamov hashov, ktoré zodpovedajú heslám. Haše sa potom dajú porovnať s databázou. Útočník by napríklad poznal hash pre „heslo1“ a potom by zistil, či nejaké hash nepoužívajú nejaké účty v databáze. Ak sú, útočník vie, že ich heslo je „password1“.

Aby sa tomu zabránilo, mali by ich služby „soliť“hash. Namiesto toho, aby vytvorili hash zo samotného hesla, pridajú náhodný reťazec na pred alebo na koniec hesla pred jeho hašovaním. Inými slovami, používateľ by zadal heslo „heslo“ a služba by pridala soľ a hash heslo, ktoré vyzerá skôr ako „password35s2dg“. Každý používateľský účet by mal mať svoju vlastnú jedinečnú soľ, čím by sa zabezpečilo, že každý používateľský účet bude mať inú hodnotu hash pre svoje heslo v databáze. Aj keby heslo „password1“ používalo viac účtov, mali by rozdielne hodnoty hash kvôli rôznym hodnotám solí. To by porazilo útočníka, ktorý sa pokúsil vopred vypočítať hodnoty hash hesiel. Namiesto toho, aby mohli generovať hashe, ktoré sa použili na každý používateľský účet v celej databáze naraz, museli by generovať jedinečné hashe pre každý používateľský účet a jeho jedinečnú soľ. To by vyžadovalo oveľa viac výpočtového času a pamäte.

To je dôvod, prečo služby často hovoria, že sa nemusíte obávať. Služba používajúca správne bezpečnostné postupy by mala povedať, že používa solené heslá hesiel. Ak iba hovoria, že heslá sú „hašované“, je to ešte znepokojujúcejšie. Napríklad LinkedIn hashoval svoje heslá, ale neposolili ich - takže to bol veľký problém, keď LinkedIn v roku 2012 stratil 6,5 milióna hashovaných hesiel.

Postupy pri nesprávnom hesle

holý text-heslo-databáza

Nie je to najťažšia vec na implementáciu, ale mnohým webom sa to stále darí robiť rôznymi spôsobmi:

  • Ukladanie hesiel ako obyčajný text: Namiesto trápenia sa s hašovaním niektoré znajhorší páchatelia môžu iba uložiť heslá vo forme obyčajného textu do databázy. Ak je takáto databáza ohrozená, vaše heslá sú zjavne ohrozené. Nezáležalo by na tom, aké silné boli.
  • Hašovanie hesiel bez ich solenia: Niektoré služby môžu heslá zadávať a daťtam hore a rozhodli sa nepoužívať soli. Takéto databázy hesiel by boli veľmi citlivé na vyhľadávacie tabuľky. Útočník by mohol vygenerovať haše pre mnoho hesiel a potom skontrolovať, či existujú v databáze - mohol by to urobiť pre každý účet naraz, ak by sa nepoužila soľ.
  • Opätovné použitie solí: Niektoré služby môžu používať soľ, ale môžuznovu použite rovnakú soľ pre každé heslo používateľského účtu. To je zbytočné - ak by sa pre každého používateľa použila rovnaká soľ, dvaja používatelia s rovnakým heslom by mali rovnaký hash.
  • Používanie krátkych solí: Ak sa použijú soli iba niekoľkých číslic, je toby bolo možné vygenerovať vyhľadávacie tabuľky, ktoré by obsahovali každú možnú soľ. Ak by sa napríklad ako soľ použila jedna číslica, útočník by mohol ľahko vygenerovať zoznamy hashov, ktoré by obsahovali každú možnú soľ.

Spoločnosti vám nebudú vždy rozprávať celý príbeh, takže aj keď povedia, že heslo bolo hashované (alebo hashované a solené), nemusí používať tie najlepšie postupy. Chybujte vždy kvôli opatrnosti.

Iné obavy

Je pravdepodobné, že je prítomná aj hodnota soliv databáze hesiel. To nie je také zlé - ak by pre každého používateľa bola použitá jedinečná hodnota soli, útočníci by museli vynaložiť obrovské množstvo energie procesora na to, aby prelomili všetky tieto heslá.

V praxi toľko ľudí používa zrejmé hesláže by bolo pravdepodobne ľahké určiť heslá mnohých používateľských účtov. Ak napríklad útočník pozná váš hash a pozná vašu soľ, môže ľahko skontrolovať, či používate niektoré z najbežnejších hesiel.

súvisiace: Ako útočníci skutočne „hackujú účty“ online a ako sa chránia

Ak to má útočník za vás a chceprelomte svoje heslo, môžu to urobiť hrubou silou, pokiaľ vedia, aká je soľná hodnota - čo pravdepodobne vedia. Vďaka miestnemu offline prístupu k databázam hesiel môžu útočníci použiť všetky útoky hrubou silou, ktoré chcú.

Ďalšie osobné údaje tiež pravdepodobne uniknú, keď aukradnutá databáza hesiel: používateľské mená, e-mailové adresy a ďalšie. V prípade úniku informácií z Yahoo tiež došlo k úniku bezpečnostných otázok a odpovedí - ktoré, ako všetci vieme, uľahčujú odcudzenie prístupu k niekomu účtu.

Pomoc, čo mám robiť?

Čokoľvek povie služba v prípade odcudzenia databázy hesiel, je najlepšie predpokladať, že každá služba je úplne nekompetentná, a konať podľa toho.

Najskôr nepoužívajte heslá na viacerých webových stránkach. Použite správcu hesiel, ktorý generuje jedinečné heslá pre každú webovú stránku. Ak sa útočníkovi podarí zistiť, že vaše heslo pre službu je „43 ^ tSd% 7uho2 # 3“ a toto heslo použijete iba na jednom konkrétnom webe, nenaučil sa nič užitočné. Ak všade používate rovnaké heslo, mohli získať prístup k vašim ďalším účtom. To je to, koľko účtov ľudí je „napadnutých hackermi“.

generovať-náhodné-heslo

Ak dôjde k narušeniu služby, určite to urobtezmeňte si heslo, ktoré tam používate. Mali by ste zmeniť heslo aj na iných weboch, ak ho tam opakovane použijete - nemali by ste to však robiť na prvom mieste.

Mali by ste tiež zvážiť použitie dvojfaktorovej autentifikácie, ktorá vás ochráni, aj keď sa útočník dozvie vaše heslo.

Najdôležitejšou vecou nie je opätovné použitie hesiel. Databázy napadnutých hesiel vám nemôžu ublížiť, ak všade používate jedinečné heslo - pokiaľ v databáze neukladajú niečo dôležité, napríklad číslo vašej kreditnej karty.

Uznanie za obrázok: Marc Falardeau na Flickri, Wikimedia Commons