Perché i trasferimenti di posta elettronica tra server di posta spesso non sono crittografati?


19

Gli utenti possono spesso scegliere se desiderano accedere al proprio provider di posta elettronica (come Gmail) utilizzando un canale sicuro (ad esempio tramite HTTPS).

Tuttavia, per quanto ne so, quando si tratta di comunicazioni da server di posta a server di posta, la maggior parte delle e-mail viene ancora trasferita in testo semplice e non crittografata, rendendo possibile a chiunque sulla rete di leggere il proprio contenuto.

Esistono tecnologie che offrono all'utente garanzie che le sue e-mail vengano inviate in modo sicuro da un capo all'altro? Perché non far sapere all'utente quando la crittografia non è supportata e fargli scegliere se desidera che la sua e-mail sia ancora recapitata?

Risposte:


19

Tuttavia, per quanto ne so, quando si tratta di comunicazioni da server di posta a server di posta, la maggior parte delle e-mail viene ancora trasferita in testo semplice e non crittografata, rendendo possibile a chiunque sulla rete di leggere il proprio contenuto.

Corretta. SMTP, come HTTP, è un testo normale per impostazione predefinita.

Oggigiorno molti server di posta supportano TLS (precedentemente noto come SSL) per SMTP. (Questo include Gmail.) Tuttavia, presenta gli stessi problemi di HTTP [S]: i certificati emessi da note autorità di certificazione costano denaro e quelli autofirmati sono privi di valore 1 per la protezione dagli attacchi MitM . Se il tuo server di posta esegue una rigorosa convalida del certificato del destinatario (come fanno i browser Web), potrebbe non riuscire a recapitare i messaggi ai server che utilizzano certificati autofirmati o CA interni. In caso contrario , non può essere sicuro che stia parlando con il server giusto e non con un impostore .

Inoltre, TLS è un'aggiunta relativamente recente a SMTP, quindi anche quando il server di posta del destinatario supporta TLS, il mittente potrebbe non esserlo o potrebbe essere disabilitato per impostazione predefinita.

1 (A meno che il server mittente non supporti DANE (TLSA) e l'amministratore del server ricevente si preoccupi di pubblicare i record TLSA in DNS. Questo è raramente fatto e in qualche modo noioso.)

Esistono tecnologie che offrono all'utente garanzie che le sue e-mail vengano inviate in modo sicuro da un capo all'altro?

Due standard di sicurezza e-mail più comuni:

  • OpenPGP , basato su web di fiducia e gratuito da usare. L'implementazione open source è GnuPG ( per Windows , per Thunderbird ) e il PGP originale si è evoluto nel PGP Desktop commerciale .

    Per i client di posta elettronica basati sul Web, FireGPG è una possibilità - dannazione

  • S / MIME , basato sull'infrastruttura X.509. Implementato dalla maggior parte dei client desktop (inclusi Outlook, Thunderbird, Mail.app). Tuttavia, relativamente impopolare a causa della stessa struttura basata sull'autorità di TLS / SSL: i certificati firmati costano denaro e quelli autofirmati non possono essere validati in modo affidabile.

In entrambi i casi, la crittografia richiede che il destinatario stia già utilizzando il sistema e abbia generato / ottenuto una coppia di chiavi. (Per la firma , viene utilizzata la coppia di chiavi del mittente . La prassi normale consiste nel firmare e crittografare i messaggi.)

Perché non far sapere all'utente quando la crittografia non è supportata e fargli scegliere se desidera che la sua e-mail sia ancora recapitata?

Di solito i messaggi inviati vengono messi in coda e né l'utente né l'MTA possono sapere se l'hop successivo supporta TLS o meno - fino a quando non viene inviato il messaggio , a quel punto non esiste un modo affidabile per chiedere conferma all'utente. (Possono essere AFK, offline, addormentati o uno script / programma. Se ho inviato il messaggio, voglio che venga recapitato il più presto possibile.)

Inoltre, con SMTP non sai mai se l'hop successivo è definitivo o se inoltrerà la posta altrove. Non è raro che un MX di backup si trovi su una rete completamente diversa.

Perciò. la sicurezza end-to-end è possibile solo quando entrambe le parti utilizzano OpenPGP o S / MIME.


2
Nota: sia la domanda che la mia risposta riguardano lo scambio di posta tra due server SMTP sulla porta 25. Non importa se esiste il supporto TLS sulle porte 587 o 465; questi sono puramente per l'invio di messaggi da parte di un utente [remoto].
user1686

2
Comprendevo che il più delle volte la connessione SMTP NON era crittografata. Puoi comunque ottenere certificati e-mail gratuiti (che convalidano) qui: instantssl.com/ssl-certificate-products/…
Andee

Aggiornamento: oggi l'interfaccia utente di Gmail ti avvisa quando il dominio di un destinatario non supporta la crittografia e le istruzioni suggeriscono di diffidare di inviare informazioni riservate.
Blaisorblade,

4

Il traffico e-mail effettivo è spesso crittografato (TLS) ma ci sono molti altri problemi:

  • Alcuni client di webmail che mostrano messaggi HTML potrebbero non essere sicuri sebbene utilizzino HTTPS, ad esempio non esiste una forte separazione tra codice e dati in HTML (elementi visivi e javascript -> attacchi di iniezione)

    • webmail mantiene inoltre la posta elettronica sul server anziché scaricarla e archiviarla sul computer locale
  • Non hai modo di sapere se TLS / SSL è stato utilizzato tra ogni passaggio, server molto piccoli NON HANNO certificati adeguati

    • il mittente dovrebbe almeno essere in grado di specificare se accettare o meno l'invio dell'e-mail utilizzando un canale non sicuro
  • Le e-mail si trovano su server non crittografati o crittografati dal server

    • dovrai fidarti di OGNI server tra te e il destinatario
  • Le e-mail possono essere trasferite utilizzando qualsiasi percorso, non è possibile specificare i server di cui ti fidi (intervalli di indirizzi IP, AS, paesi, domini ..)

  • I server di posta elettronica di grandi dimensioni non utilizzano più certificati diversi e non li cambiano abbastanza spesso (?)

    • forse vale la pena / è possibile forzarli brutalmente (come hanno provato USA / UK, ecc.)
  • seguendo il traffico sanno quando è stata inviata la posta elettronica e qualcosa sul destinatario (quali server comunicano tra loro)

    • le reti oscure nascondono queste correlazioni
  • L'implementazione di openssl era / è un casino

    • forse ci sono dei bug
  • devi fidarti delle autorità di certificazione che firmano i certificati


2

Loro sono. O molto spesso lo sono.

Tramite SSL o TLS .

--- 220 mail.ovalpowered.com ESMTP Exim 4.72 Sun, 20 Mar 2011 17:09:56 +0000
+++ EHLO test
--- 250-mail.ovalpowered.com Hello vpnhub.sqsol.co.uk [213.229.101.173]
--- 250-SIZE 52428800
--- -PIPELINING
--- -AUTH PLAIN LOGIN
--- -STARTTLS
--- HELP
+++ STARTTLS
--- 220 TLS go ahead

O se sei davvero paranoico c'è PGP o GPG.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.