Scopri cos’è DKIM e come protegge le e-mail da spoofing e phishing. Una guida essenziale per migliorare la sicurezza della posta elettronica.
Negli ultimi anni, gli attacchi di phishing e lo spoofing delle email sono diventati sempre più sofisticati, sfruttando tecniche avanzate per ingannare utenti e sistemi di sicurezza. Le organizzazioni si trovano quindi a dover adottare strumenti di autenticazione robusti per proteggere la propria identità digitale e garantire l’integrità delle comunicazioni.

In tale contesto, DKIM è uno dei principali meccanismi per l’autenticazione delle e-mail. Esso consente di verificare che un messaggio provenga effettivamente dal dominio dichiarato. Se implementato insieme a SPF (Sender Policy Framework) e DMARC (Domain-based Message Authentication, Reporting & Conformance), DKIM rafforza la sicurezza della posta elettronica aziendale.
In questo articolo analizzeremo il funzionamento di DKIM, la sua importanza strategica nella protezione del dominio e le best practice per una corretta implementazione.
Definizione di DKIM
Il DomainKeys Identified Mail (DKIM) è uno standard tecnico aperto per la sicurezza delle e-mail, che consente alle organizzazioni di certificare la legittimità dei messaggi inviati. Attraverso esso, un’organizzazione può associare il proprio dominio alle e-mail in uscita, permettendo ai destinatari di verificare che i messaggi non siano stati alterati durante il transito.
Contrariamente a quanto si possa pensare, DKIM è indipendente dal DMARC (Domain-based Message Authentication, Reporting, and Conformance). Tuttavia, può venire impiegato da quest’ultimo per definire policy di autenticazione delle email. Attraverso l’implementazione efficace del DKIM, è possibile ridurre il rischio che gli utenti ricevano e-mail contraffatte, utilizzate a fini di phishing, o spoofing.
DKIM basa il suo funzionamento sulla crittografia a chiave pubblica. Il server del mittente utilizza una chiave privata per generare una firma digitale applicata a parti specifiche del messaggio, come alcuni header e, opzionalmente, il corpo dell’email. Il server del destinatario verifica la firma recuperando la chiave pubblica dal DNS del dominio del mittente. Se la verifica ha esito positivo, si conferma che il messaggio proviene da una fonte autorizzata e che il contenuto non è stato modificato.
Tuttavia, DKIM non garantisce automaticamente la consegna dell’e-mail, poiché la decisione finale spetta sempre alle policy del destinatario.
Analisi funzionale del DKIM
Il DomainKeys Identified Mail protegge l’autenticità delle e-mail attraverso un processo suddiviso in tre passaggi fondamentali. Vediamoli nel dettaglio uno per volta.
Il server di invio firma digitalmente il messaggio
Il server di posta in uscita applica una firma DKIM a determinati elementi dell’e-mail, come l’intestazione From e, opzionalmente, il corpo del messaggio. Questo garantisce che i destinatari possano verificare l’autenticità del messaggio.
Dal punto di vista tecnico, più dettagli vengono inclusi nella firma, più l’autenticazione sarà affidabile. Tuttavia, anche una minima modifica al messaggio durante il transito, come l’aggiunta di un forwarded by…, potrebbe invalidare la firma se il corpo è incluso nel calcolo dell’hash.
L’intero processo avviene in automatico, una volta che il server è stato configurato.
Creazione della firma e invio del messaggio
Quando un’email viene inviata, il server genera un hash delle parti firmate del messaggio, utilizzando principalmente l’algoritmo SHA-256. Questo hash viene poi cifrato con una chiave privata DKIM e incluso nell’intestazione dell’email come firma digitale.
Va precisato che ogni organizzazione può utilizzare più chiavi private per scopi diversi (e-mail di marketing, transazionali, ecc.), distinguendole tramite selettori DKIM, pubblicati nel DNS.
Verifica della firma dal server ricevente
Quando l’email raggiunge il server di destinazione, questo verifica la firma DKIM contenuta nell’intestazione. Per farlo, utilizza i campi d (dominio) e s (selettore) per recuperare dal DNS la chiave pubblica DKIM corrispondente. Con questa chiave in suo possesso, il server è in grado di decodificare la firma, ricostruire l’hash e confrontarlo con quello calcolato dal messaggio ricevuto. Se i valori corrispondono, il messaggio viene autenticato con successo.
Nel momento in cui il DKIM fallisce, l’e-mail non viene necessariamente scartata, ma potrebbe avere una probabilità maggiore di essere classificata come spam. Se il DMARC è attivo e impostato su p = quarantine, o p = reject, allora l’e-mail potrebbe essere del tutto respinta.
Perché utilizzare DKIM?
L’implementazione di DKIM, in congiunzione con SPF (Sender Policy Framework) e DMARC, è essenziale per garantire la sicurezza e l’affidabilità delle comunicazioni che avvengono tramite e-mail. In particolare, attraverso la protezione del dominio, DKIM impedisce ai cybercriminali di falsificare e-mail sfruttando il dominio del mittente.
I server riceventi considerano le e-mail firmate con DKIM più affidabili, riducendo il rischio che vengano contrassegnate come spam. Ciò contribuisce a migliorare considerevolmente la consegna delle e-mail ai rispettivi destinatari. In più, c’è da considerare l’incremento reputazionale del dominio stesso presso gli ISP (Internet Service Provider). Un’implementazione corretta del DKIM favorisce, infatti, un aumento della probabilità che le e-mail vengano recapitate correttamente nel lungo periodo.
Tre falsi miti sul DKIM
Nonostante il DKIM sia a conti fatti uno strumento essenziale per la sicurezza delle e-mail, è al tempo stesso molto frainteso. Ecco tre credenze errate e la realtà dietro ciascuna di esse.
“DKIM cripta le e-mail”
Questa affermazione risulta falsa. Il suo scopo principale è assicurare che il contenuto del messaggio non sia stato modificato durante il transito. Per farlo, genera degli hash crittografici visibili nei tag bh e b nell’intestazione, che proteggono il messaggio da alterazioni accidentali o intenzionali.
Va specificato che DKIM non protegge direttamente dagli attacchi di replay, in cui un’e-mail legittima viene reinviata per truffare i destinatari. Per contrastare queste minacce, è importante configurare correttamente il DMARC e implementare ulteriori misure di sicurezza.
“La firma DKIM può essere falsificata perché i suoi dettagli sono disponibili nei record DNS”
Un’altra affermazione falsa, in quanto DKIM si basa sulla crittografia asimmetrica, che rende impossibile la falsificazione della firma. Come spiegato precdentemente, il sistema fa uso di una coppia di chiavi:
- Chiave privata, che risulta segreta e conservata sui server del mittente. Viene usata per la firma delle e-mail.
- Chiave pubblica, che viene memorizzata nel DNS. Questa è accessibile a chiunque per verificare l’autenticità del messaggio.
C’è da dire che, anche se la chiave pubblica è visibile, non può essere usata per generare firme DKIM valide. Tuttavia, se un attaccante compromette il server di posta e ottiene la chiave privata, potrà firmare e-mail fraudolente. Per questo motivo la priorità è proteggere la chiave privata ad ogni costo.
“DKIM elimina definitivamente lo spam”
Anche quest’ultima affermazione risulta falsa, perché DKIM non è un filtro antispam. La firma DKIM garantisce solo che l’e-mail provenga da un dominio autorizzato e che il suo contenuto non risulti alterato durante il transito. Tuttavia, nulla impedisce a uno spammer di registrare un dominio legittimo, configurare un record DKIM e inviare e-mail indesiderate.
Ecco perché si ribadisce la necessità di usare DKIM in congiunzione con SPF e DMARC, in modo da ottenere accesso a filtri avanzati di analisi del contenuto e della reputazione del mittente.



