Perché OpenID è considerato sicuro quando il riutilizzo della password non lo è?

16

OpenID ti consente di utilizzare il tuo es. Account Google / Facebook / Microsoft per accedere a un sito Web di terze parti. Può essere utilizzato per accedere a Stack Exchange.

Perché questa è considerata una pratica accettabile, mentre il riutilizzo della password non lo è? Non equivale alla stessa cosa se l'account OpenID viene compromesso, in quanto l'attaccante sarà in grado di accedere a più di uno degli account degli utenti?

Inoltre, dato che un account e-mail è spesso la chiave scheletro per tutti gli altri account online (nel senso che il link per reimpostare la password ti invierà un'e-mail per reimpostare la password), non è pericoloso anche condizionare gli utenti a inserire i loro per esempio Anche la password di Gmail su altre pagine web?

    
posta JonnyWizz 12.11.2015 - 15:51
fonte

2 risposte

8

TL; DR: Non stai usando una passphrase più volte con OpenID, ma altre parti (come Stack Exchange) si fidano del tuo provider di identità (come Google) per autenticarti con attenzione. La passphrase (o qualsiasi altro schema di autenticazione come autenticazione a due fattori, certificati e così via) viene rivelata al provider di identità.

Certificazioni di identità nel mondo reale

Metodi simili sono spesso usati per aprire conti bancari, iscriversi per contratti telefonici o altre azioni che richiedono la verifica della tua identità. Se non vuoi andare di persona a quella società, spesso puoi verificare la tua identità tramite un notaio, un ufficio postale o un'agenzia bancaria, che verificherà il tuo passaporto (è come presentare la passphrase a Google), e poi mano tu (o passa immediatamente a terze parti che richiedono l'autenticazione) un certificato che conferma che hanno controllato la tua identità, ma senza allegare una copia del tuo passaporto.

OpenID

L'idea di OpenID (e di tecnologie simili a single sign on) è che non si immette una passphrase nel sito di destinazione. Ad esempio, se desideri accedere al tuo account Stack Exchange utilizzando Google, Stack Exchange non ottiene mai la passphrase, ma ti reindirizza a Google, che ti autentica (probabilmente hai già effettuato l'accesso a Google, quindi potrebbe semplicemente essere chiesto se si desidera essere autenticati per Stack Exchange e essere rimandati lì).

Stack Exchange non acquisisce la passphrase in qualsiasi momento, non si renderebbe nemmeno conto della modifica della passphrase di Google. Invece, Google assegna un tipo di certificato a Stack Exchange, consegnando alcune informazioni sull'identità, che potrebbero essere solo un identificatore numerico, ma potrebbe anche essere arricchito con informazioni aggiuntive come il tuo indirizzo e-mail.

C'è una bella immagine che descrive il flusso di lavoro su Wikipedia:

" OpenIDvs. Pseudo-AuthenticationusingOAuth "di Saqibali - Opera propria. Autorizzato sotto CC0 tramite Commons .

OAuth

OAuth fa qualcosa di leggermente diverso non passando i certificati, ma una specie di chiave di accesso. Per simulare il comportamento di OpenID tramite OAuth, il provider di identità fornirebbe un servizio semplice che può essere utilizzato solo per l'autenticazione. Se la chiave "si adatta", l'utente è stato autenticato con successo.

Sicurezza

L'intero scenario è sicuro, date alcune precauzioni di sicurezza.

  • Non dovresti assegnare la passphrase a un provider di autenticazione falso simile a quello reale (ad esempio, una pagina Google falsa per attacchi phishing). Questo è come fornire il passaporto ad un notaio falso, che farà una copia e farà cose cattive con esso. Questo può essere mitigato attraverso un'accurata verifica dell'URI del sito (i gestori delle password e la ricerca della passphrase automatica per URI sono molto utili con questo!) E utilizzando misure di sicurezza aggiuntive come l'autenticazione a due fattori.
  • Il certificato può essere utilizzato solo per un determinato periodo di tempo ed è valido solo per sito . Ad esempio, un falso sito Web Stack Exchange potrebbe ottenere un certificato. Tuttavia, poiché questo è valido solo per il "falso scambio di casse", l'utente malintenzionato non sarà in grado di usarlo per autenticare contro lo scambio di casse reale o altri siti web.

    L'effettiva implementazione di questo differisce tra tutte le tecnologie single sign on, ma tutte implementano un metodo simile per legare i certificati a terze parti.

risposta data 20.11.2015 - 14:44
fonte
12

Il punto di OpenId o altri meccanismi simili è che ti permette di selezionare un'unica organizzazione altamente affidabile per conservare le tue credenziali. Si presume che siano in qualche modo più sicuri rispetto al sito medio. Ad esempio:

  • Dovrebbero offrire l'autenticazione a 2 fattori
  • Dovrebbero avere un buon monitoraggio proattivo degli account
  • Dovrebbero essere certificati ISO27001
  • Etc.

Se riutilizzi la password, i tuoi account in tutti i siti in cui riutilizzi sono sicuri quanto il sito più debole. Qualsiasi compromesso su qualsiasi sito significherebbe che tutti i tuoi account sono a rischio.

Quindi, in parte è una semplice probabilità: più posti si mantengono le credenziali, più è probabile che vengano rubate.

E in parte riguarda la qualità- dovresti selezionare un fornitore OpenId di cui ti fidi molto.

Riguardo all'inserimento delle credenziali di posta elettronica in altri siti, l'idea con OAuth ecc. è che non lo fai: il sito che hai effettuato l'accesso reindirizza il tuo browser al sito dei provider ID e inserisci lì le credenziali. Certo, questo è piuttosto sottile e molti utenti potrebbero non rendersi conto di ciò che sta accadendo, ma questo è il principio.

    
risposta data 12.11.2015 - 16:13
fonte

Leggi altre domande sui tag