it-swarm.it

Quali passi fanno Gmail, Yahoo! Mail e Hotmail adottano per impedire l'intercettazione di e-mail?

Vorrei chiedere cosa succede quando viene inviata un'e-mail da Gmail, Yahoo o Hotmail e-mail servizi web pubblici?

Non capisco i protocolli e-mail in dettaglio, ma per quanto ne so il traffico e-mail non è crittografato e i messaggi vengono passati su molti server di posta (in testo normale) prima di raggiungere il loro server di destinazione. Tuttavia, questo è stato recentemente messo in discussione da altre persone e la loro opinione era che se si utilizza uno dei grandi provider, i messaggi e-mail vengono crittografati e non è necessario preoccuparsi della sicurezza.

Sai se hanno ragione su questo e le e-mail sono moderatamente sicure? Grazie!

34
luben

Una sessione SMTP tra due server di posta può essere crittografata, ma solo se entrambe le estremità lo supportano e se entrambe le estremità scelgono di usarlo. Quindi, se stai inviando posta da Gmail a example.net, Google potrebbe crittografare solo se example.net fosse pronto e disponibile. Per questo motivo, non puoi fidarti che l'e-mail sia anche moderatamente sicura a livello di trasporto. (L'unico metodo end-to-end sicuro è crittografare la tua e-mail utilizzando S/MIME o PGP, ma anche le persone con cui stai scambiando e-mail devono essere a bordo ... proprio come i server di posta).

Per quanto riguarda il fatto che i tre grandi stiano eseguendo STARTTLS opportunistici, non ne ho visto alcuna prova, ma passo meno tempo a leggere i registri del mio server di posta rispetto al solito. E se lo sono, sono ancora solo la metà di ogni connessione SMTP che realizzano e non possono garantire l'uso della crittografia.

Aggiornare:

Ho appena testato gli host MX testati per gmail.com, yahoo.com e hotmail.com. Solo Gmail pubblicizza STARTTLS, vale a dire, solo Gmail sarebbe disposto a crittografare la sessione SMTP se l'altra parte lo volesse.

Ho testato gmail in uscita inviando posta a un server di mia proprietà e guardando il filo; Google infatti sfrutta STARTTLS se viene offerto e crittografa la transazione SMTP quando un utente Gmail sta inviando posta. Puntelli a Google.

Per quanto riguarda "l'invio" della crittografia e-mail: Google 1, Yahoo 0, Microsoft 0.


Come da commenti qui sotto, se vuoi testarli tu stesso, è molto semplice:

  1. Determina gli host MX (Mail eXchangers) per il dominio
  2. Telnet alla porta 25 su uno di essi
  3. Digita "ehlo nomehost.dominio.com"
  4. Se non vedi "250-STARTTLS" come una delle risposte, non supportano la crittografia opportunistica.

Come questo:

$ Host -t mx yahoo.com
yahoo.com mail is handled by 1 mta5.am0.yahoodns.net.
yahoo.com mail is handled by 1 mta7.am0.yahoodns.net.
yahoo.com mail is handled by 1 mta6.am0.yahoodns.net.
$ telnet mta5.am0.yahoodns.net 25
Trying 66.196.118.35...
Connected to mta5.am0.yahoodns.net.
Escape character is '^]'.
220 mta1315.mail.bf1.yahoo.com ESMTP YSmtpProxy service ready
ehlo myhost.linode.com
250-mta1315.mail.bf1.yahoo.com
250-8BITMIME
250-SIZE 41943040
250 PIPELINING
quit
221 mta1315.mail.bf1.yahoo.com
Connection closed by foreign Host.
$

Come nota a margine, Yahoo chiuderà la connessione se non ehlo subito. Ho dovuto tagliare e incollare il mio ehlo perché digitarlo impiegava troppo tempo.

ULTERIORI AGGIORNAMENTI:

A partire da gennaio 2014, Yahoo ora sta crittografando: ho appena testato (come sopra) e verificato. Tuttavia, entrambi The Register e Computerworld stanno segnalando che le complicazioni dell'installazione SSL (come Perfect Forward Secrecy) lasciano molto a desiderare come implementato da Yahoo.

AGGIORNAMENTO ANCORA MORER:

Google sta ora includendo i dati di crittografia SMTP nella sua sezione Email più sicura del rapporto sulla trasparenza . Stanno condividendo i loro dati su chi altro è disposto a crittografare e puoi guardare i primi numeri e interrogare i singoli domini.

Addendum:

@SlashNetwork sottolinea che è possibile configurare un server di posta per richiedere che TLS venga negoziato prima di scambiare la posta. Questo è vero, ma per citare documentazione Postfix :

È possibile FORNIRE l'uso di TLS, in modo che il server SMTP Postfix annunci STARTTLS e non accetti posta senza crittografia TLS, impostando "smtpd_tls_security_level = encrypt". Secondo RFC 2487, questo NON DEVE essere applicato nel caso di un server SMTP Postfix referenziato pubblicamente. Questa opzione è disattivata per impostazione predefinita e dovrebbe essere utilizzata solo raramente.

Ora, il mondo è pieno di implementazioni che violano gli RFC, ma questo genere di cose - ad esempio qualcosa che può interrompere le funzionalità richieste di routine come accettare rimbalzi e posta per il postmaster - probabilmente ha maggiori probabilità di avere conseguenze negative.

Una soluzione migliore che i gateway di posta spesso consentono è l'imposizione di requisiti TLS in base alla politica per dominio . Ad esempio, di solito è possibile dire "Richiedi TLS con un certificato valido firmato da Entrust quando si parla con example.com". Questo di solito viene implementato tra organizzazioni che fanno parte della stessa società madre ma che hanno infrastrutture diverse (pensa: acquisizioni) o organizzazioni con una relazione commerciale (pensa: ACME, Inc. e la loro società di call center di supporto in outsourcing). Ciò ha il vantaggio di garantire che determinati sottoinsiemi di posta a cui tieni vengano crittografati, ma non rompano l'architettura aperta (accettata da chiunque per impostazione predefinita) della posta elettronica SMTP.

Addendum ++

Google ha annunciato gmail farà il percolato delle informazioni sulla sicurezza se il percorso della posta verso il lettore . Quindi questi passaggi di crittografia dietro le quinte verranno portati all'attenzione dell'utente un po 'di più.

(Probabilmente non importa ancora della provenienza del certificato; solo un indicatore di crittografia dei bit).

53
gowenfawr

Ci sono tre punti nella catena che devi considerare: trasporto tra server di posta (ad esempio tra Google ed example.org), trasporto tra server di posta e client e i server di posta stessi.

Il traffico tra i server di posta può essere crittografato o meno; non dovresti fare affidamento su di esso, e AFAIK, non c'è modo di imporlo dal client.

Il traffico tra client e server di posta può essere crittografato o meno; se ti connetti su SSL (tramite un'interfaccia web o SMTP), la tua fine della catena è sicura, ma non puoi dire nulla sul destinatario. Al contrario, se sei il destinatario, puoi recuperare la posta in modo sicuro, ma se il mittente (o chiunque nel CC/CCN) non fa lo stesso, allora c'è la tua perdita.

E infine, ci sono i server di posta stessi. Se qualcuno vi entra, o social-engineer, e il server di posta archivia contenuti non crittografati, allora siete di nuovo sfortunati.

TL; DR: a meno che tu non controlli l'intera catena (entrambi i client e tutti i server di posta coinvolti), che non è praticamente mai il caso, l'unico modo per inviare e-mail con sicurezza affidabile è crittografare e decrittografare localmente, usando qualcosa come PGP.

11
tdammers

Ci sono due domande diverse qui:

  1. Il sistema di posta elettronica consente l'invio di e-mail su un canale crittografato e l'invio di e-mail lungo un canale crittografato quando il server di posta del destinatario lo supporta.
  2. Il sistema di posta elettronica crittografa il contenuto di una cassetta postale quando viene visualizzata al proprietario.

indirizzi gownfawr (1) bene.

Gmail crittografa per impostazione predefinita per (2) quindi quando si visualizza la posta, per impostazione predefinita viene eseguita tramite HTTPS, quindi uno snooper non sarà in grado di osservare Gmail che invia la posta al browser. Credo che gli altri non abbiano ancora seguito la suite. (Informativa completa, lavoro per Google).

Gmail è impostato per utilizzare l'impostazione "Usa sempre https" per impostazione predefinita, ...

"Rendi la tua webmail più sicura" contiene istruzioni per evitare letture di testo in chiaro di una casella di posta per un certo numero di grandi fornitori di webmail, ma non posso garantire che sia aggiornato.

10
Mike Samuel

Puoi testare tu stesso usando i siti web menzionati in Test configurazione STARTTLS del server SMTP . Assicurati di testare sia la ricezione che l'invio.

2
MrBrian