S/MIME: Cos'è, perché dovrei preoccuparmene e come si collega a SparkPost?

S/MIME è un metodo consolidato per inviare email criptate e firmate, basato su standard pubblici di Internet. Ci imbattiamo regolarmente in requisiti per S/MIME, in particolare da settori regolamentati come banca, salute e finanza.

Autore

Uccello

Categoria

Email

S/MIME: Cos'è, perché dovrei preoccuparmene e come si collega a SparkPost?

S/MIME è un metodo consolidato per inviare email criptate e firmate, basato su standard pubblici di Internet. Ci imbattiamo regolarmente in requisiti per S/MIME, in particolare da settori regolamentati come banca, salute e finanza.

Autore

Uccello

Categoria

Email

S/MIME: Cos'è, perché dovrei preoccuparmene e come si collega a SparkPost?

S/MIME è un metodo consolidato per inviare email criptate e firmate, basato su standard pubblici di Internet. Ci imbattiamo regolarmente in requisiti per S/MIME, in particolare da settori regolamentati come banca, salute e finanza.

Autore

Uccello

Categoria

Email

S/MIME è un metodo ben consolidato per inviare email firmate e criptate, basato su standard pubblici di Internet. Ci imbattiamo regolarmente in requisiti per S/MIME, in particolare da settori regolamentati come la banca, la salute e la finanza. S/MIME è spesso richiesto quando si comunica tra imprese e agenzie governative, per esempio.

Un altro standard di email sicure, PGP (ironico è chiamato "Pretty Good Privacy"), è utilizzato più per comunicazioni sicure tra persone. È meno popolare ora perché le versioni consumer dei client di email web come Gmail e Outlook/Hotmail non sono in grado di visualizzare email criptate. Questa è una delle ragioni per cui gran parte della comunicazione personale che richiede privacy si è spostata su piattaforme come WhatsApp (e molte altre) che offrono una crittografia end-to-end nativa.

Sia PGP che S/MIME richiedono un client di posta che possa utilizzare chiavi e certificati. Molti client desktop e mobile, inclusi Apple Mail, Microsoft Outlook e Mozilla Thunderbird, soddisfano questa esigenza, così come le versioni aziendali di alcuni client web come Microsoft Office 365. Configurare le chiavi richiede lavoro, ma molte organizzazioni lo considerano comunque utile, nonostante le recenti dichiarazioni di vulnerabilità che richiedono rimedi per bloccare il caricamento di contenuti remoti.

S/MIME è presente dal 1995 ed è passato attraverso diverse revisioni; l'attuale versione è coperta da RFC 5751. Richiede lo scambio di chiavi pubbliche, un compito non triviale che spesso richiede il supporto di un team IT o di una risorsa simile. È qui che le soluzioni commerciali di aziende come SparkPost partner Virtru e Echoworkx intervengono, semplificando la sicurezza per la corrispondenza commerciale tra persone (vedi il nostro SparkPost/Echoworkx how-to per ulteriori informazioni).

Detto ciò, approfondiamo un po' S/MIME e vediamo cosa possiamo fare con esso.

Perché dovrei preoccuparmi?

In breve:

  • La crittografia ti offre privacy dei messaggi.

  • La firma ti offre autenticazione (del mittente), non ripudio di origine e controlli di integrità del messaggio.

  • S/MIME funziona in modo diverso rispetto a DKIM e DMARC e può coesistere con essi.

Privacy
Se i tuoi messaggi non contengono nulla di personale, privato o legalmente importante, probabilmente non sarà necessario pensare a S/MIME. I moderni sistemi di consegna email come SparkPost utilizzano già “TLS opportunistico” per garantire il trasporto del messaggio dal server di invio al server del destinatario.

Il fatto che sia “opportunistico” significa però che se il server di invio non riesce a negoziare una connessione sicura, invieremo l'email in testo semplice. Questo non è adatto se desideri forzare che il messaggio rimanga sicuro fino alla fine. Puoi dare un'occhiata a quali provider di caselle di posta dichiarano il supporto TLS e quali in realtà lo fanno. Supponendo che il server del destinatario supporti TLS, il tuo messaggio è protetto in questo modo:

TLS protegge le conversazioni tra i server di posta (ed è per questo che si chiama Sicurezza del Livello di Trasporto). MIME (incluso S/MIME) si occupa del contenuto del messaggio e del suo trattamento, e può essere considerato parte del "Livello di Presentazione".

S/MIME cripta il contenuto del messaggio fino alla fine (“end to end”) dall'origine del messaggio fino al client di posta del destinatario, incapsulando il corpo del messaggio.

S/MIME cripta il corpo del messaggio con la chiave pubblica del destinatario. Il corpo non può essere decifrato senza la chiave privata del destinatario, non da alcuna “persona nel mezzo” come il tuo ISP, SparkPost, o il server di posta del destinatario.

La chiave privata non viene mai divulgata; è mantenuta in possesso esclusivo del destinatario. Il messaggio criptato viaggia su Internet verso il server di posta ricevente. Quando arriva nella casella di posta del destinatario, viene (di solito automaticamente) decrittato con la sua chiave privata e diventa leggibile.

Alcuni problemi da tenere a mente con S/MIME:

S/MIME ha come effetto collaterale l'impossibilità di scansionare i messaggi in arrivo basati su server per malware poiché il payload del messaggio è in forma criptata e quindi non identificabile.


Nota che le intestazioni del messaggio (Da:, A:, Oggetto:, ecc.) non sono criptate, quindi il contenuto della riga dell'oggetto deve essere creato tenendo conto di questo.

 

Firma – autenticazione
S/MIME consente anche al destinatario di verificare che l'identità del mittente del messaggio sia realmente ciò che dicono di essere.

L'email del mittente ha un certificato allegato, che, analogamente al certificato su un sito web sicuro, può essere ricondotto a un'autorità di emissione. C'è una descrizione completa del processo di firma qui.

Adotteremo l'approccio di firmare prima l'email e poi criptarla, così il processo appare così.


Non ripudio
Un altro utile vantaggio della firma per il destinatario è il non ripudio di origine. Considera una situazione in cui un messaggio email viene utilizzato per approvare un contratto. Il destinatario riceve il contratto in un messaggio dal mittente. Se il mittente cerca poi di dire: "No, non ho mai inviato quel messaggio a te", allora il messaggio ricevuto mostra che il certificato del mittente è in effetti stato utilizzato.

Integrità del messaggio
Il processo di firma crea un'impronta del messaggio sorgente non cifrato (nota come digest del messaggio), cripta il digest usando la chiave privata del mittente, e lo include nel messaggio consegnato. Il client di posta del destinatario può dire se il corpo del messaggio è stato manomesso.

Forse potresti dire: "Pensavo che DKIM mi desse i controlli di integrità del messaggio!" Beh sì, DKIM fornisce controlli di integrità del corpo del messaggio e delle intestazioni del messaggio – garanzie anti-manomissione. Tuttavia, un fallimento (o assenza) di DKIM non porterà solitamente a far sì che il messaggio in arrivo venga contrassegnato come completamente non valido,… a meno che non sia in vigore una politica DMARC di `p=reject` (maggiori informazioni su DMARC qui). DKIM è uno dei tanti fattori utilizzati dall'ISP per la corretta assegnazione della reputazione a un dominio ed è, ovviamente, una parte essenziale del tuo stack di messaggistica.

Il tuo client di posta ti mostrerà in modo evidente se un messaggio S/MIME fallisce i controlli di firma:


Riepilogo: end-to-end (S/MIME) vs server-to-server (DKIM, DMARC, TLS)
S/MIME è una funzionalità del livello di presentazione che può funzionare tra due utenti finali email (con certificati/chiavi validi) senza alcuna azione da parte dell'amministratore delle email. S/MIME fornisce crittografia e firma ed è personale per ciascun utente.

S/MIME è legato all'intero indirizzo di invio (parte locale e parte dominio), quindi, ad esempio, alice@bigcorp.com e bob@bigcorp.com avrebbero bisogno di avere certificati diversi. Al contrario, DKIM convalida che l'email provenga dal dominio firmatario. DKIM è un intero argomento a sé stante; questo articolo è un buon punto di partenza.

La configurazione di DKIM e DMARC viene effettuata dal tuo amministratore email (lavorando sul server di posta e nei record DNS). Una volta configurate, sono attive per i domini, piuttosto che per singoli utenti.

Come si collega questo a SparkPost?

I sistemi di posta per la messaggistica tra persone, come Microsoft Exchange Server, hanno a lungo supportato S/MIME.

Se stai usando SparkPost per inviare a destinatari specifici con client di posta che possono leggere S/MIME, potrebbe avere senso firmare le tue email con S/MIME. La firma S/MIME offre ulteriore garanzia che il messaggio provenga effettivamente da te (o dal tuo sistema), e non sia stato manomesso, il che può essere prezioso in alcuni casi d'uso. Tutto ciò di cui hai bisogno è la tua chiave e un software gratuito che dimostreremo nella parte 2 di questo articolo.

Utilizzare la crittografia S/MIME è una scelta separata da fare. Avrai bisogno della chiave pubblica per ciascuno dei tuoi destinatari. Ottenerla potrebbe essere semplice come farli inviare a te (o alla tua app) un'email firmata. Esploreremo uno strumento pratico per inviare email firmate e criptate S/MIME tramite SparkPost in un post successivo.

Quali client supportano S/MIME?

Gmail Consumer
Il normale client web di Gmail visualizza le firme delle email in arrivo (vedi sotto), ma non è configurato per mantenere la tua chiave privata per leggere i messaggi criptati. Anche se fosse possibile tramite plugin di terze parti, caricare la tua chiave privata non è una grande idea dal punto di vista della sicurezza.

Non sono riuscito a far decodificare le firme nei messaggi da Yahoo! Mail.

La versione consumer degli account Microsoft Outlook/Hotmail ti avvisa della presenza di una firma S/MIME, ma non ti dà accesso completo per visualizzare o controllare il certificato.


Email aziendale ospitata
Per le organizzazioni con email ospitata, Microsoft Office 365 e G Suite Enterprise hanno supporto per S/MIME.

Client di posta Outlook
Il client Microsoft Outlook basato su desktop (ad es. 2010 per Windows) funziona:

Cliccando sulle icone otterrai maggiori informazioni:

Su Outlook 2010 / Windows, la memoria dei certificati è accessibile tramite File / Opzioni / Centro sicurezza / Impostazioni del centro sicurezza / Sicurezza email / Importa / Esporta.

Thunderbird – multipiattaforma e gratuito
Se stai cercando un client gratuito, Mozilla Thunderbird risponde alle tue esigenze. È disponibile su PC, Mac e Linux e supporta S/MIME su tutte queste piattaforme. Ecco come appare un messaggio su Mac. L'icona della “busta sigillata” indica che il messaggio è firmato, e il lucchetto indica che è stato criptato.

Cliccando sulla busta/lucchetto viene visualizzata info sul messaggio:

Thunderbird ha il proprio deposito delle chiavi, accessibile in modi simili su ogni piattaforma:
Mac tramite Preferenze / Avanzate / Certificati / Gestisci certificati
PC: menu (“hamburger” in alto a destra), Avanzate / Certificati / Gestisci certificati
Linux: menu (“hamburger” in alto a destra), Preferenze / Avanzate / Gestisci certificati

Mac Mail
Mac Mail supporta anche S/MIME. Si basa sulla tua chiave Mac per conservare le tue chiavi.

Email iOS
Per prima cosa, importa il certificato del tuo account email in questo modo, poi puoi visualizzare email firmate e criptate S/MIME. Non sembrano davvero diverse sullo schermo di visualizzazione.

Android
Alcuni dispositivi e app supportano S/MIME; c'è molta varietà. Samsung ha una guida.

Infine…

Questa è la nostra breve panoramica degli usi pratici di S/MIME. Se desideri ottenere i tuoi certificati email, c'è un elenco di fornitori qui. Ho trovato Comodo che funziona bene (gratuito per uso non commerciale – apri questo in Firefox, non in Chrome).

Nella parte 2, esploreremo come applicare la firma e la crittografia S/MIME ai messaggi che consegni tramite SparkPost.

Approfondimenti
Microsoft ha un buon articolo introduttivo su S/MIME qui.

Per ulteriori informazioni sulla vulnerabilità EFAIL e su come è stata affrontata, questo è il sito definitivo. Altre spiegazioni semplici da seguire sono qui e qui.

Sign up

La piattaforma alimentata dall'IA per Marketing, Supporto e Finanza

Cliccando su "Richiedi una demo" accetti di Bird's

Sign up

La piattaforma alimentata dall'IA per Marketing, Supporto e Finanza

Cliccando su "Richiedi una demo" accetti di Bird's

Sign up

La piattaforma alimentata dall'IA per Marketing, Supporto e Finanza

Cliccando su "Richiedi una demo" accetti di Bird's

Channels

Grow

Engage

Automate

APIs

Resources

Company

Socials

Crescere

Gestire

Automatizzare

Crescere

Gestire

Automatizzare