[ SPF ]

SPF Syntax: Mechanismen, Modifikatoren, Qualifizierer und Auswertungsreihenfolge

Lesen Sie eine SPF Richtlinie als evaluiertes Programm und nicht als eine Tüte genehmigter Domänen.

Vom EmailAuth Forschungsteam · 4 Minuten Lesezeit

[Wichtige Punkte]

  • Mechanismusqualifizierer bestimmen Ergebnisse nur, wenn sie übereinstimmen.
  • Modifikatoren haben eigene Regeln und verhalten sich nicht wie zusätzliche Mechanismen.
  • Überprüfen Sie den vollständigen Datensatz, bevor Sie repräsentative Pfade verfolgen.
Auf dieser Seite

Ein SPF Eintrag ist eine Folge von Tests mit expliziten Ergebnissen. Der Unterschied zwischen einem Doppelpunkt, einem Gleichheitszeichen und einem Qualifikationsmerkmal ist wichtig. Eine syntaktisch gültige Änderung kann auch ändern, wer berechtigt ist, welche DNS Abhängigkeiten erreicht werden oder wo die Verarbeitung stoppt.

Verwenden RFC 7208 §4.6, RFC 7208 §5.2 Und RFC 7208 §6 als Grammatik- und Bewertungsreferenz. Behandeln Sie die folgenden Beispiele als synthetische Vorrichtungen und nicht als Datensätze, die in die Produktion eingefügt werden sollen.

Trennen Sie Mechanismen von Modifikatoren

Ein Mechanismus fragt, ob eine Eingabe übereinstimmt: Beispiele sind „ip4“, „ip6“, „a“, „mx“, „include“, „exists“ und „all“. Ein an einen Matching-Mechanismus angehängter Qualifizierer bestimmt sein Ergebnis: + gibt Pass, - Fail, ~ softfail und ? neutral. Unter RFC 7208 §4.6.2, wenn das Qualifikationsmerkmal weggelassen wird, wird + impliziert.

Modifikatoren verwenden ein Gleichheitszeichen. redirect=policy.example.com delegiert die Auswertung, wenn kein Mechanismus übereinstimmt. exp=explain.example.com identifiziert erläuternden Text für bestimmte Fehlerergebnisse. Es handelt sich hierbei nicht um zusätzliche Matching-Mechanismen. Anerkannte Modifikatoren haben ihre eigenen Regeln; Syntaktisch gültige, nicht erkannte Modifikatoren werden ignoriert, während ein nicht erkannter Mechanismus ein Fehler ist.

Ein Rekord beginnt mit v=spf1 und wird als DNS veröffentlicht TXT Eintrag an der ausgewerteten Identität. Zwei separate SPF Einträge desselben Besitzers sind keine Möglichkeit, Absender zu kombinieren; Die Auswahl SPF -Datensatzes wird zurückgegeben permerror unter RFC 7208 §4.5. Mehrere in Anführungszeichen gesetzte Zeichenfolgen innerhalb eines TXT Datensatzes stellen eine unterschiedliche Darstellung dar und werden ohne eingefügte Leerzeichen darunter verkettet RFC 7208 §3.3.

Verfolgen Sie ein vollständiges Beispiel

Gehen Sie von einer gültigen Syntax, einem SPF -Eintrag für jeden Namen und einem erfolgreichen DNS Abruf aus. Angenommen, die Richtlinie ist v=spf1 ip4:192.0.2.20 include:service.example.net -all. Die enthaltene Richtlinie ist v=spf1 ip4:198.51.100.10 -all.

Für 192.0.2.20 stimmt der erste Mechanismus überein und gibt pass zurück. Das Include ist für diesen Auswertungspfad nicht erforderlich. Für 198.51.100.10 stimmt der erste Mechanismus nicht überein, die eingeschlossene Richtlinie gibt „Pass“ zurück und der äußere Include stimmt mit seinem Standardqualifikationsmerkmal + überein. Für 203.0.113.7 schlagen die enthaltenen Richtlinienrückgaben fehl; Das führt dazu, dass include nicht übereinstimmt und das äußere -all den endgültigen Fehler liefert.

Dieser Trace erklärt, warum include keine Textersetzung ist. Das enthaltene -all weist nicht sofort alle Adressen zurück, die die Richtlinie des Dienstes nicht eingehalten haben. Die übergeordnete Richtlinie wird nach einem nicht übereinstimmenden Einschlussergebnis fortgesetzt.

Verstehen Sie, wo die Verarbeitung aufhört

Ein Matching-Mechanismus beendet die gewöhnliche Mechanismusbewertung. Auch ein Fehler aus einer erreichten Laufzeit kann die Auswertung beenden. Das Umordnen von Begriffen kann daher das Ergebnis oder die Abhängigkeiten verändern, die ein Empfänger abfragen muss.

Der All-Mechanismus stimmt immer überein, sodass nachfolgende Begriffe keine zusätzliche Autorisierung liefern können. A Umleitungsmodifikator wird ignoriert, wenn irgendwo im Datensatz ein All-Mechanismus vorhanden ist. Schreiben -all redirect= policy.example.com schafft keinen Notfall-Fallback.

Unter RFC 7208 §4.7Wenn kein Mechanismus übereinstimmt und keine Umleitung erfolgt, ist das Standardergebnis neutral. Machen Sie das beabsichtigte Ende deutlich, damit ein anderer Administrator nicht schließen muss, ob die Auslassung beabsichtigt war.

Überprüfen Sie den Pfad und den gesamten Datensatz

Überprüfen Sie vor der Veröffentlichung die gesamte Syntax und nicht nur den Teil, der voraussichtlich mit einer bekannten IP übereinstimmt. Eine ungültige Police kann nicht durch die Annahme eines günstigen frühen Matches abgesichert werden. Bewerten Sie dann autorisierte IPv4 und IPv6 Eingaben, eine nicht autorisierte Eingabe und Abhängigkeiten, die fehlschlagen oder keinen SPF Eintrag zurückgeben.

Zu den wichtigsten ausgewerteten DNS Begriffsbegrenzungen gehören die Begriffe a, mx, ptr, exist und redirect, einschließlich Rekursion. Es handelt sich nicht um eine Zählung der zitierten TXT Fragmente. Führen Sie einen Trace, der sowohl das ausgewählte Ergebnis als auch die erreichten DNS Bedingungen anzeigt. Budget für Änderungen der Anbieterabhängigkeit, anstatt eine Richtlinie ohne Spielraum zu entwerfen.

Nehmen Sie eine überprüfbare Änderung vor

Schreiben Sie den vorgeschlagenen Datensatz neben den aktuellen Datensatz und erläutern Sie den beabsichtigten Berechtigungsunterschied in normaler Sprache. Behalten Sie den vorherigen Wert und die TTL bei, überprüfen Sie das Ergebnis im autorisierenden DNS und über einen rekursiven Resolver und testen Sie dann die empfangenen Nachrichten des Vertreters.

Die Akzeptanzbedingung besteht nicht einfach darin, dass ein Parser die Zeichenfolge akzeptiert. Die beabsichtigten Absender sollten als korrekte Identität gelten, unbeabsichtigte Absender sollten keine Erlaubnis einholen und dies erforderlich sein DMARC Ausrichtung sollte intakt bleiben.

Der praktische Imbiss

Lesen Sie jeweils SPF Begriff nach Typ, Qualifikationsmerkmal und Position. Eine klare Auswertungsspur macht die Syntaxüberprüfung zu einer Berechtigungsüberprüfung und nicht zu einer Interpunktionsübung.

Halten Sie die Entscheidung reproduzierbar

In der Zwei-Datensatz-Befestigung wird die lokale Adresse vor dem Einschließen übergeben, die Dienstadresse wird über den untergeordneten Durchgang übergeben und die nicht verwandte Adresse erreicht den endgültigen Fehler des übergeordneten Datensatzes. Wenn das untergeordnete Element stattdessen keinen SPF Eintrag hat, gibt der erreichte Include permerror zurück. Halten Sie diesen Fehlerfall vom untergeordneten Fehler/Nichtübereinstimmung getrennt. Hierbei handelt es sich um analytische Ergebnisse, nicht um einen ausgeführten Parser- oder Verifizierertest.

[ Wegbringen ]

Mechanismusqualifizierer bestimmen Ergebnisse nur, wenn sie übereinstimmen. Modifikatoren haben eigene Regeln und verhalten sich nicht wie zusätzliche Mechanismen. Überprüfen Sie den vollständigen Datensatz, bevor Sie repräsentative Pfade verfolgen.

[Nach Rolle]

Was das für Sie bedeutet

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

IT-/Mail-Administrator

Testen Sie eine Pfadmatrix.

Syntaxprüfungen und Ergebnis-Traces beantworten unterschiedliche Fragen; behalte beides.

Nächste Schritte

  1. Validieren Sie den gesamten Datensatz.
  2. Nehmen Sie autorisierte und unautorisierte Eingaben vor.
  3. Schließen Sie Fälle von Abhängigkeitsfehlern ein.

CISO / SecOps

Überprüfen Sie die Richtlinie als Code.

Reihenfolge und Qualifizierer können die Berechtigungen erheblich erweitern, selbst wenn der Datensatz gültig bleibt.

Nächste Schritte

  1. Überprüfen Sie die Standard-Pass-Qualifikationsmerkmale.
  2. Markieren Sie nicht erreichbare Begriffe.
  3. Erfordern eine unabhängige Überprüfung der Änderungen.

Gründer / Nicht-technisch

Fragen Sie, welche Berechtigung sich ändert.

Eine Syntaxänderung sollte mit einer einfachen Erklärung einhergehen, welche Sendedienste Zugriff erhalten oder verlieren.

Nächste Schritte

  1. Fordern Sie die Vorher-Nachher-Richtlinie an.
  2. Benennen Sie die betroffenen Workflows.
  3. Bewahren Sie einen Wiederherstellungsplan auf.

[ FAQs ]

Häufig gestellte Fragen

Was bedeutet ein fehlendes Qualifikationsmerkmal?

Das Standardqualifikationsmerkmal ist +, das bei einer Übereinstimmung des Mechanismus ein „Pass“ ergibt.

RFC 7208 §4.6.2

Ist die Umleitung ein Mechanismus?

Nein. Es handelt sich um einen Modifikator, der nach seinen spezifischen Regeln verwendet wird, wenn kein Mechanismus übereinstimmt.

RFC 7208 §6.1

Kann ich einen SPF Eintrag pro Dienst veröffentlichen?

Nein. Mehrere SPF -Einträge bei einer Identität verursachen permerror . Kombinieren Sie autorisierte Dienste in einer gültigen Richtlinie.

RFC 7208 §4.5

Sind zwei TXT Strings in Anführungszeichen zwei SPF Einträge?

Nicht unbedingt. Ein einzelner TXT Eintrag kann mehrere Zeichenfolgen enthalten, die SPF ohne das Einfügen von Leerzeichen verkettet.

RFC 7208 §3.3

Kann ich doch einen Service in -all nehmen?

Es kann dort keine Autorisierung hinzugefügt werden, da alle Übereinstimmungen zuerst vorliegen. Überprüfen Sie die gesamte Bestellung vor der Veröffentlichung.

RFC 7208 §5.1

Wird ein inbegriffenes -all zu meinem -all ?

Nein. Ein eingeschlossenes Fehlerergebnis führt dazu, dass das Einschließen nicht übereinstimmt. Die äußere Politik geht weiter.

RFC 7208 §5.2

Was passiert ohne einen Matching-Mechanismus oder eine Weiterleitung?

Das Standard- SPF ist neutral.

RFC 7208 §4.7

Werden unbekannte Mechanismen ignoriert?

Nein. Unbekannte Mechanismen verursachen permerror . Syntaktisch gültige unbekannte Modifikatoren werden ignoriert; Der vollständige Datensatz muss noch einer Syntaxvalidierung unterzogen werden.

RFC 7208 §4.6 RFC 7208 §6

[ Quellen ]

Quellen

  1. RFC 7208

    Abschnitte §2.4 · §3.1 · §3.3 · §4 · §4.5 · §4.6 · §4.6.2 · §4.6.4 · §4.7 · §5.1 · §5.2 · §6 · §6.1 · §6.2

[ Glossar ]

Glossar

SPF
Berechtigungsauswertung für eine Verbindungs-IP und die entsprechende SMTP Identität.

RFC 7208 §2.4

SPF enthalten
Ein rekursiver Durchlauf sorgt für die Include-Übereinstimmung; Sein Qualifikationsmerkmal bestimmt dann das äußere Ergebnis, während Fehler der angegebenen Zuordnung folgen.

RFC 7208 §5.2

SPF Umleitung
Fallback-Auswertung mit dem Ziel als aktuelle Domäne und unveränderten IP-/Absender-Eingaben; Jeder All-Mechanismus deaktiviert die Umleitung.

RFC 7208 §6.1

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