[ DKIM ]

Einfache und entspannte DKIM Kanonisierung: Welche Veränderungen überleben können

Identifizieren Sie die Normalisierung, die eine Signatur zulässt, reproduzieren Sie sie auf erhaltenen Bytes und lokalisieren Sie Änderungen, die außerhalb ihres Schutzes bleiben.

Vom EmailAuth Forschungsteam

[Wichtige Punkte]

  • Header-/Body-Algorithmen separat lesen; Fehlt c, ist standardmäßig „simple/simple“ verwendet.
  • Gelockerte Regeln normalisieren bestimmte Leerzeichen, nicht wesentliche Nachrichtenänderungen.
  • Die Handhabung leerer Körper ist unterschiedlich: einfache Hashes CRLF; entspannte Hashes null Oktette.
Auf dieser Seite

DKIM Kanonisierung Definiert, wie Nachrichtenbytes für das Hashing und die Signaturüberprüfung vorbereitet werden. Es ermöglicht spezifische Normalisierungen; Es macht die willkürliche Bearbeitung von Nachrichten nicht unschädlich. Diagnostizieren Sie die Einstellungen und den Rohinhalt der tatsächlichen Signatur, bevor Sie die Konfiguration des Absenders ändern.

Lesen Sie die beiden Einstellungen separat

Die Unterschrift c= Tag-Namen, Header- und Body-Kanonisierung in dieser Reihenfolge. Zum Beispiel, entspannt/einfach Verwendet eine entspannte Verarbeitung für Header und eine einfache Verarbeitung für den Text. RFC 6376 §3.5 definiert „simple/simple“ als Standard, wenn das Tag fehlt; Wenn nur der Header-Algorithmus angegeben ist, ist der Body-Algorithmus standardmäßig auf „einfach“ eingestellt.

Aufzeichnen c=, die Liste der signierten Header h=, Die Körper-Hash bh= und jegliche Körperlängenbeschränkung l= neben d= Und s=. Eine Body-Hash-Diskrepanz, eine Header-Signatur-Diskrepanz und ein fehlender öffentlicher Schlüssel erfordern unterschiedliche Untersuchungen. Leiten Sie die Kanonisierungseinstellung nicht aus der Anzeige des E-Mail-Clients ab.

Verstehen Sie die zulässige Normalisierung

Bei der einfachen Header-Kanonisierung bleiben die Header-Felder so erhalten, wie sie dem Algorithmus präsentiert werden. Die entspannte Header-Verarbeitung schreibt Feldnamen in Kleinbuchstaben, entfaltet Fortsetzungszeilen und normalisiert angegebene Leerzeichen. Feldwerte werden nicht in Kleinbuchstaben geschrieben und es ist nicht gestattet, die Wörter eines Betreffs zu ändern.

Durch die einfache Kanonisierung des Textkörpers werden leere Zeilen am Ende entfernt und die erforderliche endgültige CRLF sichergestellt, während andere Textinhalte erhalten bleiben. Die entspannte Verarbeitung des Textkörpers reduziert außerdem Leerzeichen- und Tabulatorfolgen innerhalb einer Zeile und entfernt Leerzeichen an Zeilenenden, bevor nachgestellte Leerzeilen verarbeitet werden. Es kombiniert keine beliebigen Zeilen, schreibt keine URLs um, entfernt keine MIME Grenzen und ignoriert keinen hinzugefügten Text. RFC 6376 §3.4 Gibt die genaue Reihenfolge und Randfälle an, einschließlich der unterschiedlichen Behandlung eines leeren Körpers.

Für exakte Tests verwenden Sie eine konforme Implementierung. Eine von Hand bearbeitete Näherung, die Zeilenenden vor der Überprüfung ändert, kann zu dem Fehler führen, den sie untersuchen soll.

Wenden Sie ein kontrolliertes Beispiel an

Betrachten Sie die synthetische Körperlinie Zahlen Sie<SP><SP>jetzt<SP><CRLF>, wobei die Beschriftungen in Klammern Bytes und keinen wörtlichen Text bezeichnen. Entspannte Körperkanonisierung erzeugt Zahlen Sie<SP>jetzt<CRLF> für diese Zeile. Bei der einfachen Textverarbeitung bleiben die internen und nachfolgenden Leerzeichen erhalten. Eine solche Änderung, die nur auf Leerzeichen beschränkt ist, kann daher unter den beiden Hauptalgorithmen zu unterschiedlichen Ergebnissen führen.

Fügen Sie nun nach der signierten Nachricht einen neuen Satz hinzu. Durch die entspannte Bearbeitung wird dieser inhaltliche Zusatz nicht verworfen. Unter der Annahme einer Ganzkörperabdeckung und keiner weiteren Änderung im Test unterscheidet sich der kanonisierte Körper und auch sein erwarteter Körper-Hash. Eine Fußzeilenregel kann nicht allein deshalb als sicher erklärt werden, weil der Absender „relaxed/relaxed“ verwendet.

Das Beispiel erklärt die erwartete Normalisierung, nicht einen erfassten Vorfall oder einen ausgeführten Test. Berücksichtigen Sie in der Produktion MIME -Codierung, signierte Header und die tatsächliche Längenbehandlung der Signatur. Zwei Nachrichten können identisch wiedergegeben werden, während sich ihre vorzeichenbehafteten Bytes unterscheiden.

Lokalisieren Sie die Transformation, bevor Sie die Richtlinie ändern

Bewahren Sie die ursprüngliche Rohnachricht auf und erhalten Sie dann autorisierte Vergleichsbeispiele vor und nach vermuteten Modifikatoren. Verwenden Sie Kopien zur Analyse. Vergleichen Sie einen ansonsten gleichwertigen Test mit und ohne die verdächtige Fußzeile, Link-Umschreibung oder Neukodierung und behalten Sie dabei den gleichen Transportweg bei.

Wenn die unterstützte Architektur dies zulässt, führen Sie erforderliche Inhaltsänderungen vor der entsprechenden endgültigen Signierungsphase durch. Wenn ein Vermittler erneut unterschreibt, bewerten Sie seine neue Identität und Ausrichtung. Deaktivieren Sie nicht die schützende Gateway-Verarbeitung und schwächen Sie die Domänenrichtlinie nicht, nur um einen Diagnosetest grün zu machen.

Als RFC 6376 §8.2 warnt, eine Körperlänge l= limit ändert, wie viel kanonisierter Körper abgedeckt wird. Es handelt sich nicht um eine allgemeine Problemumgehung für Änderungen nach dem Signieren und es kann dazu kommen, dass angehängte Inhalte außerhalb des signierten Teils verbleiben. Überprüfen Sie die Sicherheitsauswirkungen und die Anbieterunterstützung, anstatt sie hinzuzufügen, um einen Fehler zu unterdrücken.

Beweisen Sie den Fix auf Byte- und Routenebene

Behalten Sie den ursprünglichen Fehler, die Kanonisierungseinstellungen, den kontrollierten Vergleich und ein empfangenes Ergebnis der korrigierten Route bei. Wenn die Änderung der Kanonisierung die gewählte unterstützte Lösung ist, bestätigen Sie, dass der tatsächliche Änderungsvorgang innerhalb der zulässigen Transformationen liegt. Eine neue entspannte Signatur kann einige Leerzeichenänderungen tolerieren, bleibt aber anfällig für die ursprüngliche inhaltliche Neufassung. Schließen Sie das Problem nur, wenn die beobachtete Änderung und das Überprüfungsergebnis übereinstimmen.

Überprüfen Sie den Leerkörper-Randfall

Unter RFC 6376 §3.4.3, wird ein vollständig leerer oder fehlender Körper bei der einfachen Körperkanonisierung zu einem CRLF oder zwei Oktetten. Unter RFC 6376 §3.4.4Die Kanonisierung entspannter Körper erzeugt null Oktette für einen leeren Körper. Ein Tool, das CRLF in beiden Fällen hasht, stimmt nicht mit dem Standard überein, auch wenn beide Nachrichten leer erscheinen. Dies ist ein Spezifikationsbeispiel, keine vollständige DKIM Verifizierung oder ein ausgeführter Mail-Test.

DKIM Public-Key-Syntax: Identifizieren Sie abgeschnittene oder fehlerhafte DNS Werte · Mehrere DKIM -Signaturen: Finden Sie die ausgerichtete Passsignatur.

[ Wegbringen ]

Header-/Body-Algorithmen separat lesen; Fehlt c, ist standardmäßig „simple/simple“ verwendet. Gelockerte Regeln normalisieren bestimmte Leerzeichen, nicht wesentliche Nachrichtenänderungen. Die Handhabung leerer Körper ist unterschiedlich: einfache Hashes CRLF; entspannte Hashes null Oktette.

[Nach Rolle]

Was das für Sie bedeutet

Wählen Sie Ihre Rolle für praktische nächste Schritte.

IT-/Mail-Administrator

Vergleichen Sie Bytes unter dem tatsächlichen Algorithmus.

Der gerenderte Text reicht nicht aus, um Body-Hash-Fehler zu erklären.

Nächste Schritte

  1. Bewahren Sie Originalnachrichten auf.
  2. Notieren Sie c, h und l vor dem Test.
  3. Wiederholen Sie die betroffene Gateway-Transformation.

CISO / SecOps

Vermeiden Sie es, die Abdeckung zu schwächen, um einen Defekt zu verbergen.

Eine Ausnahme mit Körperlänge ändert, was die Signatur schützt.

Nächste Schritte

  1. Überprüfen Sie neu signierende Identitäten.
  2. Genehmigen Sie jede Deckungsausnahme ausdrücklich.
  3. Vermeiden Sie es, die Schutzverarbeitung ohne Überprüfung zu deaktivieren.

Gründer / Nicht-technisch

Legen Sie die Verarbeitungsreihenfolge fest.

Ein geschäftlicher Haftungsausschluss kann legitim sein und dennoch die Signatur zerstören, wenn er an der falschen Stelle eingefügt wird.

Nächste Schritte

  1. Weisen Sie Gateway- und Senderbesitzer zu.
  2. Testen Sie die kundenorientierte Route.
  3. Genehmigen Sie die Verantwortung für die Signaturgrenze.

[ FAQs ]

Häufig gestellte Fragen

Was bedeutet c=relaxed/simple ?

Der Header verwendet eine entspannte Kanonisierung und der Text verwendet eine einfache Kanonisierung.

RFC 6376 §3.5

Was ist die Standardeinstellung, wenn c fehlt?

RFC 6376 definiert „simple/simple“ als Standardeinstellung.

RFC 6376 §3.5

Ist der Betrefftext locker in Kleinbuchstaben geschrieben?

Nein. Lockere Header-Verarbeitung von Feldnamen in Kleinbuchstaben, nicht von Feldwerten.

RFC 6376 §3.4.2

Wird eine entspannte Körperverarbeitung einen Haftungsausschluss ignorieren?

Nein. Eine hinzugefügte inhaltliche Fußzeile liegt außerhalb der gewöhnlichen Leerzeichen-Normalisierung und verändert einen vollständig abgedeckten Textkörper.

RFC 6376 §3.4.4

Können optisch identische Nachrichten unterschiedliche Hashes haben?

Ja. Beim Rendern können für DKIM relevante Byte-, Codierungs-, Zeilenende- und MIME Unterschiede ausgeblendet werden.

RFC 6376 §3.7

Erfolgt die Verarbeitung einfacher Körper vollständig Byte für Byte?

Es wendet weiterhin die definierte Behandlung abschließender Leerzeilen und des abschließenden CRLF an. Andere Körperinhalte bleiben erhalten.

RFC 6376 §3.4.3

Sollte ich l verwenden, um angehängte Inhalte zu tolerieren?

Verwenden Sie es nicht als allgemeine Reparatur. Es ändert die Abdeckung und erfordert eine spezifische unterstützte Design- und Sicherheitsüberprüfung.

RFC 6376 §8.2

Welche Beweise deuten auf eine schädliche Transformation hin?

Konservierte Rohproben rund um den vermuteten Hopfen, die genauen Signatureinstellungen und eine kontrollierte Wiederholung auf derselben Route.

[ Quellen ]

Quellen

  1. RFC 6376

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

[ Glossar ]

Glossar

DKIM
Eine domänenbezogene Signatur für ausgewählte Nachrichtenkopfzeilen und -textinhalte, überprüft mit Public-Key-Daten.

RFC 6376 §1

Kanonisierung
Definierte Vorbereitung von Headern oder Body vor DKIM -Hashing und der Verifizierung.

RFC 6376 §3.4

Körper-Hash
Der codierte Hash des kanonisierten Körpers mit anwendbarer Längenbehandlung, übertragen in bh.

RFC 6376 §3.5

Wähler
Der s-Wert, der mit der signierenden Domäne verwendet wird, um öffentliche Verifizierungsdaten zu finden.

RFC 6376 §3.5

Unternehmensherkunft

Warum Top-Finanzinstitute und Regierungen haben ihre E-Mail-Sicherheits-Dashboards eingestellt.

Herkömmliche E-Mail-Authentifizierungsplattformen verkaufen Ihnen ein Dashboard und bitten Ihre Techniker, die Arbeit zu erledigen. In Umgebungen mit hohem Risiko führt die manuelle Überwachung zu verzögerter Durchsetzung, Konfigurationsabweichungen und nicht überwachten Schattendomänen.

EmailAuth ist die Agenten-E-Mail-Herkunftsplattform. Unsere Agenten setzen durch p=reject, halten Sie die Absender von Drittanbietern auf dem Laufenden und verschieben Sie Ihre Domains auf voll RFC 9989 Compliance, der neue DMARC Standard, mit Human-in-the-Loop-Überprüfbarkeit.

Regierungen Große Unternehmen Tier-1-Finanzinstitute

SaaS · Dedizierte Mandantenfähigkeit · Air-Gap-On-Prem · BYOK-Verschlüsselung

Wissensdatenbank