it-swarm-eu.dev

Obnovení hesla - jaké postupy by měly webové služby dodržovat?

Mnozí z vás možná viděli Jak Apple a Amazon Security Flaws vedly k mému epickému hackování , kde byly úspěšně hacknuty účty Amazon, Apple, Gmail a Twitter kabelového zpravodaje. Hacker postupoval komplikovanou sekvencí kroků, v každém kroku pomocí procesu obnovení hesla v jedné webové službě, aby získal informace potřebné k útoku na účet zpravodaje na další webové službě. Útočník byl schopen úspěšně využít změny mezi různými službami. “ požadavky na to, co vyžadují resetování hesla, zřetězení jeho útoku a nakonec úspěšné připojení katastrofického útoku na chudého kabelového reportéra.

S ohledem na to, jaké postupy by měly webové služby dodržovat, aby ochránily své funkce pro resetování hesla a zabránily opakování takového selhání? Co musí průmysl udělat, aby se to nestalo znovu?

26
D.W.

Ve skutečnosti jsem pracoval na několika nápadech v této oblasti, takže tady je výpis mých myšlenek tak daleko. Předem se omlouvám za směšnou délku této odpovědi.

Mechanismy pro resetování hesla musí být navrženy s ohledem na tři hlavní cíle:

  • Bezpečnostní
  • Použitelnost
  • Spolehlivost

Pro dobrý mechanismus musíme dosáhnout rovnováhy mezi těmito třemi.

Několik tvrzení, která bych chtěl učinit před zahájením:

Správně, na skutečnou odpověď!


1. Vícefaktorová autentizace

Vícefaktorová autentizace (MFA) je jednou z nejbezpečnějších metod pro obnovení účtu a lidskou autentizaci obecně. Pro ty z vás, kteří nejsou obeznámeni s MFA, funguje to na principu, že k ověření musíte mít více než jedno pověření:

  • Něco, co znáte (např. Heslo, tajná odpověď)
  • Něco, co máte (např. Klíč, hardwarový token atd.)
  • Něco, co jste (např. Otisk prstu)

Všimněte si, že mít více než jeden typ, např. dvě hesla, nebo heslo a PIN, se nepočítá jako MFA. Dívám se na vás, stránky online bankovnictví.

1.1. Něco, co víte

Při resetování hesla je běžným způsobem, jak se uživatel autentizovat, zeptat se na něj některé otázky . Bohužel jsou tyto otázky obvykle věci jako „Do které školy jste chodili?“ a „Jaké je dívčí jméno vaší matky?“, což je pro útočníky neuvěřitelně snadné zjistit prostřednictvím sociálních sítí. Navíc mnoho uživatelů neradi odpovědělo na tyto otázky při registraci, takže prostě zasáhli spoustu klíčů a zneplatnili účel této otázky.

V případě webového obchodu s elektronickým obchodem a dalších webů, které ukládají soukromé osobní informace (např. Adresu/telefonní číslo), je možné tyto informace požádat. Mějte však na paměti, že tyto informace lze nalézt také online.

Alternativou by bylo položit kontextové otázky na základě zkušeností uživatelů na webu. Hotmail například požaduje e-mailovou adresu, se kterou jste nedávno komunikovali, a také další informace o aktivitě vašeho účtu. To je docela přizpůsobitelné pro většinu typů webapp, ale není to vždy použitelné.

1.2. Něco, co máte

Weby často popisují e-mailem odkaz nebo jednorázové heslo na vaši e-mailovou adresu jako formu makrofinanční pomoci. Tvrdím, že se jedná o falešný předpoklad. Uživatelé sdílejí hesla mezi účty. To je absolutní skutečnost a nemůžete tomu zabránit. Musíte tedy předpokládat, že útočník již má přístup k e-mailové adrese uživatele. Důsledky tohoto se budeme zabývat později.

Šíření mobilních telefonů z nich učinilo skvělý mechanismus pro dvoufaktorovou autentizaci, jako formu kontroly mimo pásmo. SMS resetovací tokeny jsou pro uživatele snadno srozumitelné a použitelné a útočník, který má přístup k telefonu, je nepravděpodobný. Tato metoda však není bez chyb. Největším problémem je, když uživatel ztratí jejich telefonu nebo změně poskytovatele. To zcela zneplatňuje telefon jako použitelné resetovací zařízení. Dalším problémem je, že uživatelé s nimi nemají vždy telefon.

Použití aplikace na smartphonech tento problém částečně řeší. Pokud uživatel změní svého poskytovatele, zůstane aplikace v telefonu. Povolení resetů založených na SMS i aplikacích umožňuje rozumné očekávání spolehlivosti.

Alternativně můžete uživateli přiřadit účet poskytovatele přihlášení (např. OpenID) a použít platné přihlášení pro tento účet jako důkaz „něčeho, koho znáte“.

Další možné mechanismy:

  • Fyzický token (např. RSA SecurID , token USB) - to není na většině míst přesně životaschopné, ale užitečné pro banky, interní podnikové systémy a další vysoce zabezpečené situace.
  • Soubor - Náhodně vygenerovaný soubor daný uživateli při registraci. Hash uložený v databázi. Po resetování uživatel požádal o poskytnutí souboru. Ne nejlepší použitelnost nebo zabezpečení, ale potenciálně užitečné.

1.3. Něco jsi

To je místo, kde se věci pobaví a sci-fi. Biometrická autentizace je něco, co se v poslední době stalo populárnějším. Poměrně málo notebooků zahrnuje skenery otisků prstů a můžete si vybrat levné USB za relativně nízké náklady. Dalším populárním biometrickým mechanismem je rozpoznávání obličeje prostřednictvím webové kamery. Oba jsou vynikající, pokud jde o bezpečnost, když se to udělá správně, ale oba mají několik problémů:

  • Většina implementací je pravděpodobná, a proto nejistá. Co brání útočníkovi v držení fotografie vaší tváře k fotoaparátu?
  • Nemůžete se spolehnout na každého uživatele, který má skener otisků prstů, a na ty, kteří nejsou všichni navzájem kompatibilní. Kromě toho provádíte propojení s hardwarem, takže k tomu, abyste se svým webovým programem mohli mluvit, vyžaduje nativní aplikaci.
  • Pole biometrie je relativně nové, takže neexistují dobře zavedené implementace s plně pochopenými bezpečnostními modely.

Celkově vzato model „něco, čím jste“ funguje pro identifikaci osob, ale není pro webové aplikace skutečně proveditelný, pokud svým zákazníkům neposkytujete skenery otisku prstu a vhodný software.

1.4. Osvědčené postupy MFA

Jednofaktorová autentizace nestačí. Jak jsme viděli z všethenedávnéporušení , je obtížné udržovat hesla v bezpečí, a to i když hashed oni mohou ještě být zlomeni. MFA je nezbytná pro oba obnovení hesla a hesla. Mobilní autentizace pro účely obnovy řeší většinu problémů, pokud je mobilní zařízení stále použitelné. V případě, že mobilní ověření není možné, musíte mít ruční proces ověření, kde musí přesvědčit člověka, že jsou skuteční obchod.


2. Resetovací mechanismy

Existuje celá řada různých metod resetování hesla, z nichž mnohé zaostávají z hlediska zabezpečení. Budu diskutovat o některých, které jsem viděl ve volné přírodě, vysvětlím jejich dobré a špatné body a navrhnu některé lepší.

2.1. Zaslání hesla zpět e-mailem

Nejzákladnějším mechanismem je zaslání hesla uživatele e-mailem. Prosím nikdy to nedělejte . Je to hrozné nad mír . Nejprve vyžaduje, abyste ukládali hesla v čistém textu nebo alespoň v reverzibilním formátu. Musíte hash hesla správně a dodržovat doporučené postupy pro solení . Za druhé, zasíláte e-mailem uživatelské heslo ve formě prostého textu, prostřednictvím protokolu s čistým textem, přes internet. Pro lidi, kteří to dělají, je vyhrazena zvláštní úroveň pekla.

2.2. Generování nového hesla

Některé weby generují nové náhodné heslo, hash, a poté je e-mailem uživateli. To není dobrý nápad z několika důvodů, i když většina z nich může být nějakým způsobem zmírněna. Nejzákladnějším problémem je, že uživateli zasíláte uživatelsky použitelné heslo v prostém textu. Další problémy s touto metodou zahrnují:

  • Mnoho uživatelů je líných, několik z nich se resetuje a pouze řeknou prohlížeči, aby si zapamatoval náhodné heslo.
  • Mnoho webů vás nutí změnit heslo při prvním použití hesla.
  • Útočník, který má přístup k e-mailovému účtu, má přístup k heslu bez ohledu na to, jaké mechanismy jste použili k ověření uživatele.

2.3. Resetovací odkaz

Toto je jeden z lepších (a naštěstí populárnějších) mechanismů. Jedná se o ověření uživatele a zaslání e-mailu jednorázovým resetovacím odkazem. Jakmile je použit resetovací odkaz, je uživatel vyzván k nastavení nového hesla. Po dokončení je odkaz neplatný. Další zabezpečení lze zajistit zahrnutím časů vypršení platnosti odkazů a vynucením, že odkaz je neplatný po nastavení hesla nebo po vypršení časového limitu relace uživatele.

Pokles této metody je, když si pamatujeme náš dřívější předpoklad. E-mailový účet uživatele není bezpečný. Nepočítá se jako „něco, co víte“. I když je časové okno útočníka krátké, mohou se stále ještě vloupat. Samozřejmě je vše zneplatněno, pokud (nebo spíše když) uživatel zapomene své e-mailové heslo.

2.4. Nikdy neopouštějte web

To je skutečně svatý grál, ale lze jej použít pouze spolu se silným vícefaktorovým ověřením. Jakmile se uživatel autentizuje pomocí kombinace bezpečnostních otázek, mimopásmových kontrol (např. Mobilních telefonů), souborů klíčů, biometrie, lidského ověření atd., Jsou okamžitě přesměrováni do formuláře pro změnu hesla. Tím se zcela obchází potřeba používat e-mailové adresy.

Pokud jste skutečně přesvědčeni, že k odeslání odkazu je nutné použít e-mailovou adresu, zvažte možnost obnovení bez e-mailu, která zvyšuje počet kontrol, které je třeba předat.


3. Závěr

Je obtížné zajistit rovnováhu mezi bezpečností, použitelností a spolehlivostí v nejlepším případě, ale tato situace se přímo týká uživatele, který se ukázal jako nespolehlivý již. Neříkám to v žádném deprecating smyslu, ale spíše že jsme všichni omylní.

Je důležité, aby byl systém pro resetování hesla použitelný a jednoduchý, aniž by došlo k překročení bezpečnosti. Před provedením masivního třífaktorového procesu ověřování ve všech aspektech webového serveru si promyslete, co chráníte. Pokud jste jen malá společnost, která prodává věci online, můžete se pravděpodobně zotavit se základním 2-faktorem při zotavení. Pokud jste významným maloobchodním prodejcem, bankou nebo webem pro sociální sítě, měli byste při zotavení používat silný 2-faktorový (více typů) a 2-faktorový přihlašovací údaje z nerozpoznaných zdrojů.

Ve větě: udržujte to jednoduché, přemýšlejte o svém publiku.

27
Polynomial

Problém s „epickým hackováním“ byl v tom, že více účtů (Twitter, gmail) bylo spojeno s jedním účtem (icloud), který byl poté kompromitován, což hackerům umožnilo vyžádat a zachytit odkazy na resetování hesla pro propojené účty.

Pokud chcete chránit před takovým scénářem (kde je ohrožen e-mailový účet používaný jako reference pro jiné účty), neexistuje žádný jiný způsob než použití ověřování 2faktory, jak nabízí Google . Pokud by dočasné heslo získané prostřednictvím sociálního inženýrství bylo zasláno na mobilní telefon majitele icloud účtu, nic z toho by se nestalo.

7
twobeers

Domnívám se, že webová služba již nemůže udělat nic pro ochranu funkce obnovení hesla z jednoho jednoduchého důvodu, uživatele.

Podívejme se na to, co považuji za nejběžnější formu resetování hesla: tajnou otázku. Existují 2 scénáře, které se obvykle odehrávají.

1) Odpovězte na otázku pravdivě - mnoho uživatelů tuto cestu vybere. Bohužel, odpovědi na většinu tajných otázek jsou neuvěřitelně snadné vykopat z internetu. Informace, jako je vaše první škola nebo mateřské jméno vaší matky, jsou sotva tajemstvím. Útočníci mohou tyto informace snadno vyhledat pomocí jednoduchého online vyhledávání. Díky tomu je tajná otázka stejně dobrá jako zbytečná.

2) Odpovězte na otázku nesmysly a pak na odpověď zapomeňte - většina lidí, které znám, to dělá, včetně mě. To účinně činí tajnou otázku zbytečnou, protože ji nelze použít k potvrzení legitimity žádosti o resetování hesla.

Nejlepší způsob, jak zacházet s tajnou otázkou, by bylo odpovědět na odpadky, ale napište to někam, abyste na to nezapomněli. Většina uživatelů to však neudělá, hlavně kvůli skutečnosti, že se nestarají o bezpečnost, dokud se něco nestane.

Jaké jsou jiné běžné způsoby, jak vyvolat reset hesla?

E-mail - mnoho služeb propojuje váš účet s e-mailem pro obnovení. Co se však stane, pokud zapomenete heslo k e-mailu pro obnovení? Je to nekonečný řetěz.

Mnoho bezpečnějších metod, jako je dvoufaktorová autentizace, je pro uživatele problémem. Webové služby musí zvážit použitelnost vs. zabezpečení. Koneckonců, co má smysl mít neomylnou webovou službu, pokud ji nikdo nepoužívá?

Hlavní vadou v tomto článku je, že autor měl více účtů propojených s jedním e-mailem, což útočníkovi umožnilo snadno ohrozit všechny jeho online účty. Pokuste se co nejvíce decentralizovat své online identity. To se však stává odpovědností uživatelů.

Pokud bychom si mysleli, že zabezpečení by mělo být hlavním zájmem webových služeb, musíme zvážit použitelnost. Celkově se bezpečnost nezlepší, dokud si koncoví uživatelé neuvědomí, jak je to důležité, a podniknou kroky k jejich ochraně. Koneckonců, je toho tolik, co může poskytovatel služeb udělat.

6
user10211

V praxi využívali jeho e-mail k hacknutí všeho. Zachování vašeho e-mailu v bezpečí, nejlépe na vlastní pěst, s inteligentní detekcí narušení a chráněné před obnovením hesla, by v tomto případě takovému hacku zabránilo.

Totéž platí pro vaše data v cloudu. Inteligentní šifrování a ochrana systému, jako je správa klíčů, jsou pro vás důležité, abyste je udrželi v bezpečí, plus vzdálené zálohy a snímky, takže jednoduše není možné řetězit.

Tyto dva klíčové dokumenty a komunikace musí být bezpečné, a proto není vhodné pro cloud pro profesionální použití, protože někdo je smaže a to je vše. Nejlepší je tedy použít obchodní/osobní doménu, kterou můžete legálně obnovit.

Pokud je chráněna legálně, fyzicky, s inteligentní automatizací, můžete ji použít pro obchodní použití, a pokud jste byli hacknuti, měli byste si být v zásadě vědomi obnovení hesla pomocí e-mailu. musí být přístup přes ssh, aby byl bezpečný.

A co jablko? To se stane, když používáte hardware pro děti s dálkovým ovládáním Apple. Dálkové ovládání je dobré řešení pro iPod, ale ve skutečném světě PC nefunguje. Jak byli všichni naštvaní, když společnost Microsoft shromažďovala data, ale now Apple má všechny aplikace pod kontrolou a do určité míry je to v pořádku, ale hlavně pro domácí zábavu a zábavu, nikoli pro profesionální práci. Bezpečnostní skok OSX je obrovský a vůbec to není překvapující že OSX byl napaden napříč platformami.

Pro bezpečný e-mail je nejlepší mít také doménu v renomované společnosti, takže ji nelze také napadnout.

2
Andrew Smith