Immagine desktop con email

A cosa servono i protocolli SPF, DKIM e DMARC

A cosa servono i protocolli SPF, DKIM e DMARC 700 460 Nicola Lapenta

I protocolli che rendono sicuri la posta elettronica

I protocolli di invio di posta elettronica SPF, DKIM e DMARC sono utilizzati per aumentare la sicurezza e la autenticità delle email inviate su internet. L’utilizzo di questi protocolli consente ai destinatari di avere maggiore fiducia nell’autenticità delle email e ai mittenti di proteggere la propria reputazione e l’immagine del proprio dominio.

Questo articolo approfondisce il funzionamento di questi protocolli per consentire ai destinatari di comprendere e verificare l’autenticità delle email ricevute, prevenire la posta indesiderata ed evitare che le email importanti non vengano erroneamente bloccate o segnalate come spam.

Contenuti 

Introduzione 

Il protocollo di invio posta elettronica SMTP (Simple Mail Transfer Protocol) è un protocollo utilizzato per inviare e-mail su Internet. Quando si invia un’e-mail, il software di posta elettronica utilizza SMTP per inviare il messaggio al server SMTP del destinatario, che a sua volta utilizza SMTP per inoltrare il messaggio al destinatario finale. Il processo è simile a come i messaggi vengono inviati attraverso la posta tradizionale, con il server SMTP che funge da “postino” digitale.

È stato ideato negli anni 80 con il presupposto che tutti i fruitori del servizio fossero affidabili ed è stato di conseguenza implementato senza nessuna configurazione in grado di convalidare l’identità degli utilizzatori.

Successivamente, per evitare attacchi informatici nel quale viene falsificato l’indirizzo IP del mittente (spoofing) l’organismo internazionale IETF (Internet Engineering Task Force) ha implementato alcuni protocolli in grado di funzionare con impatti minimi insieme al protocollo SMTP, che nel frattempo si è imposto come standard a livello mondiale.

Protocollo SPF

Il protocollo di sicurezza SPF (Sender Policy Framework) definisce quali server di posta sono autorizzati ad inviare e-mail per un dato dominio. In genere si tratta di server di posta elettronica di un’azienda, ma possono includere anche servizi di posta elettronica di terze parti.

L’SPF è un protocollo che permette di certificare che l’IP mittente abbia effettivamente il diritto d’inviare l’email ed è usato per prevenire l’uso fraudolento di un nome di dominio. Ciò permette di evitare che terzi si possano fingere come un domino proprietario ed è particolarmente efficace contro gli attacchi di phishing.

Immagine schema funzionamento spf
Figura 1 Schema di funzionamento protocollo SPF

Nella figura 1 è riportato lo schema di funzionamento. Qualora il servizio e-mail di ricezione non fosse in grado di confermare l’indirizzo IP come valido, contrassegnerà l’e-mail come spam.

Protocollo DKIM

Il protocollo di sicurezza crittografico DKIM (Domain Keys Identified Mail) è un altro meccanismo utilizzato per autenticare l’identità del mittente di un’email. È progettato per aggiungere una firma digitale (non visibile nè al mittente nè al destinatario) ad ogni messaggio inviato da un server di posta. Lo scopo di questa firma è di consentire ai sistemi destinatari di confermare che il messaggio proviene da un dominio autenticato.

Immagine schema funzionamento dkim
Figura 2 Schema di funzionamento protocollo DKIM

In questo modo il destinatario dell’email è sicuro che è stato davvero il mittente ad aver scritto l’email e che questa non è stata alterata durante la trasmissione. Questo protocollo è particolarmente efficace contro gli attacchi del tipo “man in the middle”. Nella figura 2 è riportato lo schema di funzionamento.

Protocollo DMARC

Il protocollo DMARC, (Domain-based Message Authentication, Reporting & Conformance) è un sistema di validazione dei messaggi di posta elettronica complesso sviluppato principalmente per contrastare l’email spoofing, una tecnica di attacco informatico ampiamente utilizzata nello spam e nel phishing. 

Basandosi sui protocolli SPF e DKIM precedenti descritti, il DMARC conferma l’identità del mittente e garantisce che l’e-mail proviene da una fonte valida per quel dominio. Inoltre indica al server e-mail del destinatario cosa fare con le e-mail che non hanno superato il controllo. In figura 3 viene visualizzato lo schema di funzionamento completo.

Immagine schema funzionamento dmarc
Figura 3 Schema di funzionamento protocollo DMARC

Di fatto il protocollo DMARC rende il dominio del server di posta elettronica molto più sicuro combinando i protocolli SPF e DKIM che singolarmente contengono vari punti deboli. La sua implementazione aiuta infatti a ridurre i rischi per le aziende bloccando le e-mail malevoli prima che raggiungano gli utenti e scartando e segnalando quei messaggi fraudolenti o falsi che utilizzano in modo improprio i domini altrui.

Formato record

Il formato del record DMARC è una riga di testo normale. Il testo è un elenco di tag e valori DMARC, separati da punti e virgola. Alcuni tag sono obbligatori, mentre altri sono facoltativi. 

Di seguito un esempio di record del criterio DMARC. I tag v e p devono essere indicati per primi, mentre gli altri tag possono essere inseriti in qualsiasi ordine:

v=DMARC1; p=reject; rua=mailto:postmaster@solarmora.com,
mailto:dmarc@solarmora.com; pct=100; adkim=s; aspf=s

Nella tabella 1 vengono elencati i tag del record DMARC con una descrizione dei valori possibili.

Tabella 1 Tag del record DMARC

TagObbligatorio?Descrizione e valori
vObbligatorioVersione di DMARC. Deve essere DMARC1.
pObbligatorioIndica al server di posta di destinazione che cosa fare con i messaggi che non superano l’autenticazione.
none – non intraprendere alcuna azione sul messaggio e consegnalo al destinatario previsto. Registra i messaggi in un rapporto giornaliero. Il rapporto viene inviato all’indirizzo email specificato con l’opzione rua nel record.
quarantine – contrassegna i messaggi come spam e inviali alla cartella Spam del destinatario. I destinatari possono esaminare i messaggi di spam per identificare eventuali messaggi legittimi.
reject – rifiuta il messaggio. Con questa opzione, il server di destinazione in genere invia un avviso di mancato recapito al server mittente. Nota sullo standard BIMI: se il tuo dominio utilizza BIMI, l’opzione p di DMARC deve essere impostata su quarantine (quarantena) o su reject (rifiuta). BIMI non supporta i criteri DMARC con l’opzione p impostata su none (nessuno).
pctFacoltativoSpecifica la percentuale di messaggi non autenticati soggetti al criterio DMARC. Quando implementi gradualmente DMARC, potresti iniziare con una piccola percentuale dei tuoi messaggi. Man mano che i messaggi provenienti dal tuo dominio superano l’autenticazione presso i server di destinazione, aggiorna il record con una percentuale maggiore fino a raggiungere il 100%. Deve essere un numero intero compreso tra 1 e 100. Se non utilizzi questa opzione nel record, il criterio DMARC viene applicato al 100% dei messaggi inviati dal tuo dominio. Nota sullo standard BIMI: se il tuo dominio utilizza BIMI, il valore pct del criterio DMARC deve essere impostato su 100. BIMI non supporta i criteri DMARC con un’impostazione del valore pct inferiore a 100.
ruaFacoltativoIndirizzo email per ricevere i rapporti sull’attività di DMARC per il tuo dominio. L’indirizzo email deve includere mailto:  ad esempio:  mailto:dmarc-reports@solarmora.com Per inviare il rapporto a più indirizzi email, separa gli indirizzi con una virgola. Questa opzione potrebbe causare l’invio di un numero elevato di email di rapporti. Non è consigliabile utilizzare il tuo indirizzo email. Considera invece la possibilità di utilizzare una casella di posta dedicata, un gruppo o un servizio di terze parti specializzato nei rapporti DMARC.
rufNon supportatoGmail non supporta il tag ruf, utilizzato per inviare rapporti sulle operazioni non riuscite. I rapporti sulle operazioni non riuscite sono chiamati anche rapporti forensi.
spFacoltativoImposta il criterio per i messaggi provenienti dai sottodomini del tuo dominio principale. Scegli questa opzione se vuoi utilizzare un criterio DMARC diverso per i tuoi sottodomini.
none – Take no action on the message and deliver it to the intended recipient. Log messages in a daily report. The report is sent to the email address specified with the rua option in the policy .
quarantine – contrassegna i messaggi come spam e inviali alla cartella Spam del destinatario. I destinatari possono esaminare i messaggi di spam per identificare eventuali messaggi legittimi. reject
– rifiuta il messaggio. Con questa opzione, il server di destinazione dovrebbe inviare un avviso di mancato recapito al server mittente. Se non utilizzi questa opzione nel record, i sottodomini ereditano il criterio DMARC impostato per il dominio principale.
adkimFacoltativoImposta il criterio di allineamento per DKIM, che definisce in che misura le informazioni del messaggio devono corrispondere esattamente alle firme DKIM. Scopri come funziona l’allineamento. s – allineamento esatto. Il nome del dominio del mittente deve coincidere esattamente con il valore d=domainname corrispondente nelle intestazioni DKIM dei messaggi. r – Relaxed alignment (default). Allows partial matches. Any valid subdomain of d=domain in the DKIM mail headers is accepted.
aspfFacoltativoImposta il criterio di allineamento per SPF, che specifica in che misura le informazioni del messaggio devono corrispondere esattamente alle firme SPF. Scopri come funziona l’allineamento. s – allineamento esatto. L’intestazione From: (Da:) del messaggio deve corrispondere esattamente al nome del dominio nel comando SMTP MAIL FROM r – allineamento non rigido (impostazione predefinita). Consente corrispondenze parziali. Viene accettato qualsiasi sottodominio valido del dominio.

Esempio reale: Gmail

Per controllare se un provider di posta gestisce correttamente i protocolli di sicurezza descritti verranno utilizzati di seguito due esempi reali tratti da un account di posta Gmail.

Verifica e-mail

Per verificare se le configurazioni dei protocolli di sicurezza di un account Gmail sono state implementate correttamente occorre visualizzare i principali parametri dell’intestazione dell’email. Per fare questo basta cliccare sui 3 puntini in alto a destra di una qualunque email e verranno visualizzati gli esiti dei controlli dei tre protocolli descritti come mostrato in figura 4.

Immagine esempio gmail verifica email
Figura 4 Esempio di verifica intestazione Gmail

Verifica report

Se il provider di posta utilizzato lo prevede è possibile ricevere via email il report completo che visualizza tutti i risultati dei controlli eseguiti in formato xml. Un esempio di questo report di un indirizzo Gmail è mostrato in figura 5 dove vengono visualizzati la sequenza dei controlli eseguiti. In verde sono stati evidenziati gli esiti dei controlli.

Immagine esempio gmail report email
Figura 5 Esempio report DMARC Gmail

Conclusioni

La configurazione del protocollo DMARC aiuta a proteggere il proprio business e la reputazione da attacchi fraudolenti, tramite l’attività di reporting permette inoltre di monitorare l’uso legittimo del proprio dominio.

Data la criticità dell’affidabilità delle comunicazioni di posta elettronica è di fondamentale importanza assicurarsi che il protocollo DMARC sia configurato correttamente per permettere la verifica affidabile e puntuale dell’identità del mittente. 

Per ottenere questo risultato occorre richiedere al proprio provider di posta l’attivazione dei necessari protocolli e verificarne la corretta configurazione. Se vuoi approfondire l’argomento prenota un appuntamento telefonico nella sezione contatti, ti aiuterò a mettere in sicurezza tutte le comunicazioni via email della tua attività.

Se vuoi sapere di più sulla sicurezza dei siti Web potresti leggere questo articolo: Come configurare i siti con il protocollo sicuro https.

Pubblicato da: Nicola Lapenta

Credits: Global Cyber Alliance, IETFWikipedia, Guida di Amministratore di Google Workspace

Photo by: Stephen Phillips – Hostreviews.co.uk on Unsplash, Global Cyber Alliance