Email Security

L’era del Pc ha completamente stravolto la comunicazione prima con l’avvento delle chat e poi con l’arrivo dei social network. Tuttavia rimane ancora oggi la mail lo strumento preferito per comunicare e pertanto non va assolutamente trascurato in termini di sicurezza.
L’aspetto più delicato della sicurezza parlando di email è quello relativo al social engineering: in questo ambito, attraverso l’uso degli ormai familiari phishing trick, l’attacco viene portato convincendo utenti poco smaliziati a cliccare su URL dannosi oppure su allegati contenenti codice malevolo.
Torniamo a parlare di sicurezza informatica questa volta in particolare di uno dei servizi più diffusi in assoluto su internet: la posta elettronica, attraverso la lettura di un’articolo pubblicato da Julian Evans Google+ su “Hackin9” (n° 9, 2010).
I servizi mail si contraddistinguono in due gruppi principali: email client e webmail.
Se la vostra mail è @gmail oppure @hotmail vuol dire che stiamo parlando di una webmail, nel caso in cui invece state utilizzando programmi come Microsoft Outlook piuttosto che Windows Live Mail o Mozilla Thurnderbird per gestire le vostre mail stiamo parlando di email client. Entrambi i servizi nascono per inviare e ricevere mail, ma mentre la webmail nasce per operare tramite internet e il browser senza la necessità di nessun software aggiuntivo, la email client richiede un programma installato in una macchina locale.
Lo sviluppo di servizi mobili, come gli smartphone, ha spinto la maggior diffusione delle webmail perché permette la lettura di messaggi contemporaneamente da più dispositivi lasciando il corpo del messaggio nello spazio cloud messo a disposizione. Il protocollo utilizzato dalle webmail è l’IMAP, mentre per i mail client si parla di POP3 (Post Office Protocol version 3): in entrambi i casi i dati sono inviati senza criptazione. La mancanza di elevate misure di sicurezza unita al fatto che le webmail contengono al loro interno tutti i dati dei messaggi rendono le email contenuti appetibili per i pirati informatici ed è quindi necessario disporre di adeguate contromisure.
Il protocollo di comunicazione più usato dai mail client è sicuramente SMTP (Simple Mail Transfer Protocol) il linguaggio che si occupa di comunicare con un server mail tramite un ISP oppure un corporate service provider. L’SMTP è un protocollo del server mail in uscita che si occupa principalmente di tre funzioni: 1- verificare la configurazione e le credenziali dell’account; 2- inviare un messaggio a una destinazione definita; 3- occuparsi di tracciare il successo dell’operazione. Ogni server SMTP ha un suo indirizzo identificativo ad esempio parlando di hotmail il codice smtp sarà smtp.hotmail.com. Per ciò che riguarda invece la ricezione delle mail, il protocollo di comunicazione usato è il POP3. La funzione principale di questo linguaggio è quella di permettere il download di un messaggio inviato da un server SMTP. Anche in questo caso l’utente deve avere a disposizione un software come Outlook oppure Thunderbird configurato con un identificativo che nel caso di hotmail è del tipo mail.hotmail.com. Nel caso di client mail il messaggio rimane all’interno del server mail fino a che non viene scaricato nel computer locale pertanto l’aspetto critico di questo metodo è sicuramente il backup delle mail che deve essere fatto dal client. Un client configurato correttamente in termini di codici di SMTP e POP3 è in grado, utilizzando un software di posta elettronica, di inviare e ricevere mail, un esempio di un identificatore potrebbe essere helios1@hotmail.it.
Una comunicazione SMTP completa potrebbe essere del tipo:
Server: 220 smtp.attraversolospecchio.com ESMTP Postfix
Client: HELO relay.attraversolospecchio.org
S: 250 Hello relay.attraversolospecchio I am glade to meet you
C: MAIL FROM:
S: 250 Ok
C: RCP TO:
S: 250 Ok
C: DATA
S: 354 End data with
C: From: “Bob Attraversolospecchio”
C: To “Alice Attraversolospecchio”
C: Cc: theboss@attraversolospecchio.com
C: Date: Tue, 27 Dec 2011 16:02:43 -0500
C: Subject: Test message
C:
C: Hello Alice
C: This is a test message with 5 header fields and 4 lines in the message body.
C: Your friend,
C: Bob
C:
S: 250 Ok queued as 12345
C: Quit
S: Bye
{The server closes the connection}
Analizzando il contenuto completo del messaggio va evidenziato: 1- l’indirizzo del mittente che è indicato all’interno del comando MAIL FROM; 2- l’indirizzo dei riceventi; nell’esempio riportato la mail è inviata a due mailbox appartenenti allo stesso server SMTP e i riceventi sono identificati dagli headers To e Cc; 3- l’avvenuta ricezione del messaggio che è indicata dal comando RCPT TO; 4- il codice identificativo di ogni operazione eseguita che nell’esempio è 250 Ok che sta ad indicare operazione eseguito con risultato positivo; 5- il corpo del messaggio è riportato all’interno del comando DATA che viene trasmesso in linea per linea; 6-fine trasmissione con il comando QUIT.
Per ciò che concerne invece le webmail il portocollo più utilizzato è l’IMAP. L’idea che supporta questo protocollo è quella di permettere ad un singolo account di leggere le mail presenti nello spazio cloud. In altre parole il protocollo IMAP permette di accedere tramite diverse interfacce web alle stesse mail che rimangono nel server fino a quando non vengono cancellate.
Questa sua caratteristica spiega la sua diffusione nell’era dei smartphone dando la possibilità di accedere agli stessi contenuti in modalità diverse.
Poichè però IMAP mantiene le mail nel server e permette l’accesso ai contenuti da diversi dispositivi richiede una maggiore attenzione dal punto di vista della sicurezza.
Il problema nasce dal fatto che l’SMTP non cripta i contenuti dei messaggi anche se il server supporta la criptazione TLS (Trasport Layer Security). Le credenziali di identificazione come account e password non sono crittografate e nel caso in cui la richiesta dei dettagli di login degli utenti viene accettata dal server – cosa che ahimè capita spesso – vengono inviate le credenziali in formato testo. I messaggi tramite SMTP includono inoltre informazioni sul dispositivo utilizzato per la richiesta. Una possibile soluzione dal punto di vista della difesa dei contenuti potrebbe essere sicuramente quello di utilizzare software specifici di criptazione come PGP, per chi voglia saperne di più rimando al post cloud-computing-vs-security (giugno 2010). Rimane però da risovere nel caso di webmail il discorso del protocollo di criptazione dei dati di accesso al portale web. In tal senso esistono protocolli criptografici del tipo TLS o SSL: in entrambi i casi il fine è quello di prevenire le intrusioni e la falsificazione delle comunicazioni client server tramite TCP/IP. Il metodo prevede di verificare
l’autenticità dell’indirizzo tramite scambio di certificati, che nella maggior parte dei casi è unidirezionale. Il sistema si basa sull’univocità del certificato rilasciato contenente l’URL verificato che essendo criptato non può essere falsificato. In altre parole l’uso del protocollo TLS ci permette: 1- la cifratura di tutto il traffico (messaggio e password) tra il vostro client e server di posta; 2- autenticazione del server, per cui si verrà avvertiti nel caso in cui il collegamento non avvenga con il server originale; 3- prevenzione dello spam.
In ultima analisi vorrei mettere in luce quanto sia importante prestare attenzione nell’uso delle mail e quante falle di sicurezza si possono celare dietro questo servizio che usiamo quotidianamente. Il protocollo TLS non può assicurare la riservatezza dei nostri messaggi dal momento che sarebbe necessario che tutti i server di transito utilizzassero TLS. Inoltre va ricordato che all’interno del server i messaggi sono leggibili quindi è necessarioi intervenire con strumenti a livello di messaggio come già citato PGP oppure S/MIME. Alcuni fornitori di servizi webmail propongono servizi di sicurezza complementari come quello proposto da gmail che propone una identificazione tramite codice inviato per SMS. Quest’ultimo caso è emblematico perché testimonia l’esigenza di fare di più in tal senso. Tuttavia voglio in conclusione come sempre ricordare che il primo strumento vero di sicurezza è l’utente che deve essere cosciente delle azioni che intraprende.