[ DKIM ]

Canonicalizzazione DKIM semplice e rilassata: quali cambiamenti possono sopravvivere

Identificare la normalizzazione consentita da una firma, riprodurla su byte conservati e individuare le modifiche che rimangono al di fuori della sua protezione.

A cura del team di ricerca EmailAuth

[ Punti chiave ]

  • Leggere separatamente gli algoritmi di intestazione/corpo; assente c per impostazione predefinita è semplice/semplice.
  • Le regole rilassate normalizzano gli spazi bianchi specificati, non le modifiche sostanziali dei messaggi.
  • La gestione del corpo vuoto è diversa: hash semplici CRLF; hash rilassati zero ottetti.
In questa pagina

DKIM canonicalizzazione definisce il modo in cui i byte del messaggio vengono preparati per la verifica dell'hashing e della firma. Permette normalizzazioni specifiche; non rende innocua la modifica arbitraria dei messaggi. Diagnosticare le impostazioni effettive della firma e il contenuto non elaborato prima di modificare la configurazione del mittente.

Leggi le due impostazioni separatamente

Quella della firma c= canonicalizzazione dei nomi dei tag, intestazione e corpo, in quest'ordine. Per esempio, rilassato/semplice utilizza un'elaborazione rilassata per le intestazioni e un'elaborazione semplice per il corpo. RFC 6376 §3.5 definisce semplice/semplice come predefinito quando il tag è assente; se viene indicato solo l'algoritmo dell'intestazione, l'algoritmo del corpo viene impostato su semplice.

Documentazione c=, l'elenco delle intestazioni firmate h=, IL hash del corpo bh= e qualsiasi limite di lunghezza corporea l= accanto d= E s=. Una mancata corrispondenza dell'hash del corpo, una mancata corrispondenza dell'intestazione-firma e una chiave pubblica mancante richiedono indagini diverse. Non dedurre l'impostazione di canonicalizzazione da ciò che viene visualizzato dal client di posta.

Comprendere la normalizzazione consentita

La semplice canonicalizzazione dell'intestazione preserva i campi dell'intestazione come presentati all'algoritmo. L'elaborazione rilassata dell'intestazione riduce in minuscolo i nomi dei campi, spiega le righe di continuazione e normalizza gli spazi bianchi specificati. Non minuscola i valori dei campi né autorizza la modifica delle parole di un Oggetto.

La semplice canonicalizzazione del corpo rimuove le righe vuote alla fine e garantisce il CRLF finale richiesto, pur mantenendo gli altri contenuti del corpo. L'elaborazione rilassata del corpo riduce inoltre le sequenze di spazi e tabulazioni all'interno di una riga e rimuove gli spazi bianchi alle estremità della riga prima di gestire le righe vuote finali. Non combina linee arbitrarie, non riscrive URL, non rimuove i limiti MIME né ignora il testo aggiunto. RFC 6376 §3.4 specifica l'ordine esatto e i casi limite, incluso il diverso trattamento di un corpo vuoto.

Utilizzare un'implementazione conforme per test esatti. Un'approssimazione modificata manualmente che modifica le terminazioni di riga prima della verifica può creare l'errore su cui dovrebbe indagare.

Applicare un esempio controllato

Considera la linea del corpo sintetico Paga<SP><SP>ora<SP><CRLF>, dove le etichette tra parentesi indicano byte anziché testo letterale. Produce la canonicalizzazione del corpo rilassato Paga<SP>adesso<CRLF> per quella linea. La semplice lavorazione del corpo conserva gli spazi interni e finali. Una modifica di questo tipo basata solo sugli spazi può quindi avere risultati diversi con gli algoritmi dei due corpi.

Ora aggiungi una nuova frase dopo il messaggio firmato. Un'elaborazione rilassata non elimina tale aggiunta sostanziale. Supponendo la copertura di tutto il corpo e nessun altro cambiamento nel test, il corpo canonizzato è diverso e così anche l'hash corporeo previsto. Una regola del piè di pagina non può essere dichiarata sicura semplicemente perché il mittente utilizza rilassato/rilassato.

L'esempio spiega la normalizzazione prevista, non un incidente catturato o un test eseguito. Nella produzione, tenere conto della codifica MIME , delle intestazioni firmate e del trattamento della lunghezza effettiva della firma. Due messaggi possono essere visualizzati in modo identico mentre i loro byte con segno differiscono.

Individuare la trasformazione prima di modificare la politica

Conservare il messaggio originale, quindi ottenere campioni di confronto autorizzati prima e dopo i sospetti modificatori. Utilizzare le copie per l'analisi. Confronta un test altrimenti equivalente con e senza il piè di pagina sospetto, la funzionalità di riscrittura o ricodifica del collegamento, mantenendo lo stesso percorso di trasporto.

Se l'architettura supportata lo consente, eseguire le modifiche necessarie al contenuto prima della fase di firma finale appropriata. Se un intermediario si rifirma, valutarne la nuova identità e allineamento. Non disabilitare l'elaborazione del gateway di protezione né indebolire la policy del dominio esclusivamente per rendere verde un test diagnostico.

COME RFC 6376 §8.2 avverte, una lunghezza del corpo l= limitare le modifiche alla quantità di corpo canonizzato coperto. Non si tratta di una soluzione generale per la modifica successiva alla firma e può lasciare il contenuto aggiunto all'esterno della parte firmata. Esaminare le implicazioni sulla sicurezza e il supporto del provider anziché aggiungerlo per eliminare un errore.

Dimostrare la correzione a livello di byte e percorso

Conservare l'errore originale, le impostazioni di canonicalizzazione, il confronto controllato e un risultato ricevuto dal percorso corretto. Se la modifica della canonicalizzazione è il rimedio supportato scelto, verificare che l'operazione di modifica effettiva rientri nelle trasformazioni consentite. Una nuova firma rilassata può tollerare alcune modifiche agli spazi bianchi pur rimanendo vulnerabile alla riscrittura sostanziale originale. Chiudere il problema solo quando il cambiamento osservato e il risultato della verifica coincidono.

Controllare il caso limite a corpo vuoto

Sotto RFC 6376 §3.4.3, un corpo completamente vuoto o mancante diventa un CRLF, o due ottetti, nella canonicalizzazione del corpo semplice. Sotto RFC 6376 §3.4.4, la canonicalizzazione del corpo rilassato produce zero ottetti per un corpo vuoto. Uno strumento che esegue l'hashing CRLF in entrambi i casi non sarà d'accordo con lo standard anche se entrambi i messaggi appaiono vuoti. Questo è un esempio di specifica, non una verifica DKIM completa o un test di posta eseguito.

Sintassi della chiave pubblica DKIM : identifica i valori DNS troncati o non corretti · Firme DKIM multiple: trova la firma di passaggio allineata.

[ Porta via ]

Leggere separatamente gli algoritmi di intestazione/corpo; assente c per impostazione predefinita è semplice/semplice. Le regole rilassate normalizzano gli spazi bianchi specificati, non le modifiche sostanziali dei messaggi. La gestione del corpo vuoto è diversa: hash semplici CRLF; hash rilassati zero ottetti.

[Per ruolo]

Cosa significa questo per te

Scegli il tuo ruolo per i prossimi passi pratici.

Amministratore IT/Posta

Confronta i byte con l'algoritmo reale.

Il testo visualizzato non è sufficiente per spiegare gli errori dell'hash del corpo.

Prossimi passi

  1. Conserva i messaggi originali.
  2. Registrare c, hel prima del test.
  3. Ripetere la trasformazione del gateway interessata.

CISO/SecOps

Evitare di indebolire la copertura per nascondere un difetto.

Un'eccezione della lunghezza del corpo modifica ciò che la firma protegge.

Prossimi passi

  1. Esaminare le identità di nuova firma.
  2. Approvare esplicitamente qualsiasi eccezione di copertura.
  3. Evitare di disabilitare l'elaborazione protettiva senza revisione.

Fondatore / Non tecnico

Correggere l'ordine di elaborazione.

Una dichiarazione di non responsabilità aziendale può essere legittima e tuttavia compromettere una firma se inserita nella fase sbagliata.

Prossimi passi

  1. Assegnare i proprietari del gateway e del mittente.
  2. Testare il percorso rivolto al cliente.
  3. Approvare la responsabilità per il confine della firma.

[ Domande frequenti ]

Domande frequenti

Cosa significa c=relaxed/simple ?

L'intestazione utilizza la canonicalizzazione rilassata e il corpo utilizza la canonicalizzazione semplice.

RFC 6376 §3.5

Qual è l'impostazione predefinita quando c è assente?

RFC 6376 definisce semplice/semplice come impostazione predefinita.

RFC 6376 §3.5

Il testo dell'oggetto in minuscolo è rilassato?

No. L'elaborazione semplificata dell'intestazione rende minuscoli i nomi dei campi, non i valori dei campi.

RFC 6376 §3.4.2

L'elaborazione del corpo rilassato ignorerà una dichiarazione di non responsabilità?

No. Un piè di pagina sostanziale aggiunto è al di fuori della normale normalizzazione degli spazi bianchi e modifica un corpo completamente coperto.

RFC 6376 §3.4.4

I messaggi visivamente identici possono avere hash diversi?

SÌ. Il rendering può nascondere differenze di byte, codifica, fine riga e MIME rilevanti per DKIM .

RFC 6376 §3.7

L'elaborazione del corpo semplice è completamente byte per byte?

Applica ancora la gestione definita delle righe vuote finali e il CRLF finale. Gli altri contenuti del corpo vengono preservati.

RFC 6376 §3.4.3

Dovrei usare l per tollerare il contenuto aggiunto?

Non utilizzarlo come riparazione generica. Cambia la copertura e richiede una progettazione specifica supportata e una revisione della sicurezza.

RFC 6376 §8.2

Quali prove individuano una trasformazione dannosa?

Campioni grezzi conservati attorno al luppolo sospetto, impostazioni esatte della firma e ripetizione controllata attraverso lo stesso percorso.

[ Fonti ]

Fonti

  1. RFC 6376

    Sezioni §1 · §3.4 · §3.4.1 · §3.4.2 · §3.4.3 · §3.4.4 · §3.5 · §3.7 · §6.1.3 · §8.2

[ Glossario ]

Glossario

DKIM
Una firma associata al dominio sulle intestazioni dei messaggi selezionati e sul contenuto del corpo verificato con dati a chiave pubblica.

RFC 6376 §1

Canonicalizzazione
Preparazione definita delle intestazioni o del corpo prima dell'hashing e della verifica DKIM .

RFC 6376 §3.4

Hashish corporeo
L'hash codificato del corpo canonizzato, con il trattamento della lunghezza applicabile, riportato in bh.

RFC 6376 §3.5

Selettore
Il valore s utilizzato con il dominio di firma per individuare i dati di verifica pubblici.

RFC 6376 §3.5

Provenienza aziendale

Perché le principali istituzioni finanziarie e i governi hanno ritirato le dashboard di sicurezza della posta elettronica.

Le tradizionali piattaforme di autenticazione e-mail ti vendono una dashboard e chiedono ai tuoi ingegneri di fare il lavoro. Negli ambienti ad alto rischio, la supervisione manuale comporta un’applicazione ritardata, deviazioni della configurazione e domini ombra non monitorati.

EmailAuth è la piattaforma di provenienza della posta elettronica degli agenti. I nostri agenti applicano p=reject, mantieni allineati i mittenti di terze parti e sposta i tuoi domini al massimo RFC 9989 conformità, il nuovo standard DMARC , con verificabilità human-in-the-loop.

Governi Grandi imprese Istituti finanziari di primo livello

SaaS · Locazione dedicata · Air-gapped on-premise · Crittografia BYOK

Base di conoscenza