[ SPF ]

Składnia SPF : mechanizmy, modyfikatory, kwalifikatory i kolejność oceny

Przeczytaj politykę SPF jako oceniany program, a nie zbiór zatwierdzonych domen.

Przez zespół badawczy EmailAuth · 4 minuty czytania

[Kluczowe punkty]

  • Kwalifikatory mechanizmu określają wyniki tylko wtedy, gdy są zgodne.
  • Modyfikatory mają odrębne zasady i nie zachowują się jak dodatkowe mechanizmy.
  • Przed śledzeniem reprezentatywnych ścieżek zweryfikuj pełny rekord.
Na tej stronie

Jakiś Rekord SPF to sekwencja testów z wyraźnymi wynikami. Różnica między dwukropkiem, znakiem równości i kwalifikatorem ma znaczenie. Składniowo poprawna zmiana może również zmienić to, kto jest autoryzowany, jakie zależności DNS zostały osiągnięte lub gdzie przetwarzanie zostaje zatrzymane.

Używać RFC 7208 §4.6, RFC 7208 §5.2 I RFC 7208 §6 jako odniesienie do gramatyki i oceny. Poniższe przykłady traktuj jako syntetyczne urządzenia, a nie płyty do wklejenia do produkcji.

Oddziel mechanizmy od modyfikatorów

Mechanizm pyta, czy dane wejściowe pasują: przykłady obejmują ip4, ip6, a, mx, include, istnieje i wszystkie. Kwalifikator dołączony do mechanizmu dopasowującego określa jego wynik: + daje pass, - fiasko, ~ softfail i ? neutralny. Pod RFC 7208 §4.6.2, jeśli kwalifikator zostanie pominięty, sugeruje się +.

Modyfikatory używają znaku równości. redirect=policy.example.com deleguje ocenę, gdy żaden mechanizm nie pasuje. exp=explain.example.com określa tekst objaśniający dla niektórych wyników niepowodzenia. Nie są to dodatkowe mechanizmy dopasowujące. Rozpoznane modyfikatory mają swoje własne zasady; składniowo prawidłowe nierozpoznane modyfikatory są ignorowane, a nierozpoznany mechanizm jest błędem.

Rekord zaczyna się od v=spf1 i jest publikowany jako DNS Rekord TXT na ocenianą tożsamość. Dwa oddzielne rekordy SPF tego samego właściciela nie umożliwiają łączenia nadawców; Powraca wybór rekordu SPF permerror pod RFC 7208 §4.5. Wiele ciągów znaków w cudzysłowie w jednym rekordzie TXT stanowi inną reprezentację i są łączone bez wstawiania spacji RFC 7208 §3.3.

Prześledź pełny przykład

Załóż prawidłową składnię, jeden rekord SPF dla każdej nazwy i pomyślne pobranie DNS . Załóżmy, że taka jest polityka v=spf1 ip4:192.0.2.20 include:service.example.net -all. Załączona polisa jest v=spf1 ip4:198.51.100.10 -all.

W przypadku 192.0.2.20 pierwszy mechanizm dopasowuje i zwraca wynik pozytywny. Uwzględnienie nie jest potrzebne w przypadku tej ścieżki oceny. W przypadku 198.51.100.10 pierwszy mechanizm nie jest zgodny, dołączona zasada zwraca pass, a zewnętrzne dołączenie pasuje do jego domyślnego + kwalifikatora. W przypadku 203.0.113.7 uwzględnione zwroty zasad nie powiodą się; to sprawia, że ​​dołączenie nie jest zgodne, a zewnętrzne -all kończy się niepowodzeniem.

Ten ślad wyjaśnia, dlaczego dołączenie nie jest podstawieniem tekstu. Dołączone -all nie odrzuca natychmiast wszystkich adresów, które nie spełniają zasad usługi. Zasada nadrzędna zostaje wznowiona po niepasującym wyniku uwzględnienia.

Dowiedz się, gdzie kończy się przetwarzanie

Mechanizm dopasowujący kończy ocenę zwykłego mechanizmu. Błąd w osiągniętym terminie może również zakończyć ocenę. Zmiana kolejności terminów może zatem zmienić wynik lub zależności, o które odbiorca musi zapytać.

Mechanizm all zawsze pasuje, więc warunki następujące po nim nie mogą zapewniać dodatkowej autoryzacji. A modyfikator przekierowania jest ignorowany, jeśli w dowolnym miejscu rekordu występuje mechanizm all. Pismo -all przekierowanie= policy.example.com nie powoduje awaryjnego powrotu.

Pod RFC 7208 §4.7, jeśli żaden mechanizm nie pasuje i nie ma przekierowania, domyślny wynik jest neutralny. Wyjaśnij zamierzone zakończenie, aby inny administrator nie musiał wnioskować, czy pominięcie było zamierzone.

Sprawdź ścieżkę i cały rekord

Przed opublikowaniem sprawdź całą składnię, a nie tylko część, która ma pasować do znanego adresu IP. Nieważnej polityki nie można zabezpieczyć poprzez założenie korzystnego wczesnego dopasowania. Następnie oceń autoryzowane dane wejściowe IPv4 i IPv6 , nieautoryzowane dane wejściowe i zależności, które kończą się niepowodzeniem lub nie zwracają żadnego rekordu SPF .

Główne oceniane limity terminów DNS obejmują a, mx, ptr, terminy istniejące i przekierowania, w tym rekursję. Nie jest to liczba cytowanych fragmentów TXT . Zachowaj ślad pokazujący zarówno wybrany wynik, jak i osiągnięte terminy DNS . Budżet na zmiany zależności od dostawców zamiast projektowania zasad bez rezerwy.

Wprowadź zmianę, którą można sprawdzić

Zapisz proponowany zapis obok bieżącego rekordu i wyjaśnij zamierzoną różnicę w uprawnieniach w potocznym języku. Zachowaj poprzednią wartość i TTL, sprawdź wynik w autorytatywnym DNS i za pomocą rekursywnego mechanizmu rozpoznawania nazw, a następnie przetestuj otrzymane wiadomości przez przedstawiciela.

Warunkiem akceptacji nie jest po prostu to, że parser akceptuje ciąg znaków. Zamierzeni nadawcy powinni uchodzić za prawidłową tożsamość, niezamierzeni nadawcy nie powinni uzyskiwać pozwolenia i są wymagani DMARC wyrównanie powinien pozostać nienaruszony.

Praktyczne dania na wynos

Przeczytaj każdy SPF termin według typu, kwalifikatora i pozycji. Przejrzysty ślad oceny sprawia, że ​​przegląd składni jest przeglądem uprawnień, a nie ćwiczeniem interpunkcyjnym.

Zadbaj o powtarzalność decyzji

W przypadku dwóch rekordów adres lokalny przechodzi przed dołączeniem, adres usługi przechodzi przez przebieg podrzędny, a adres niepowiązany osiąga ostateczny błąd rodzica. Jeśli zamiast tego dziecko nie ma rekordu SPF , osiągnięte dołączenie zwraca permerror . Trzymaj ten przypadek błędu oddzielnie od przypadku niepowodzenia/niedopasowania podrzędnego. Są to wyniki analityczne, a nie wykonany test parsera lub weryfikatora.

[Na wynos]

Kwalifikatory mechanizmu określają wyniki tylko wtedy, gdy są zgodne. Modyfikatory mają odrębne zasady i nie zachowują się jak dodatkowe mechanizmy. Przed śledzeniem reprezentatywnych ścieżek zweryfikuj pełny rekord.

[ Według roli ]

Co to oznacza dla Ciebie

Wybierz swoją rolę, aby uzyskać praktyczne dalsze kroki.

Administrator IT / poczty

Przetestuj macierz ścieżki.

Kontrole składni i ślady wyników odpowiadają na różne pytania; zatrzymaj oba.

Kolejne kroki

  1. Zatwierdź cały zapis.
  2. Wykonywanie autoryzowanych i nieautoryzowanych wejść.
  3. Uwzględnij przypadki błędów zależności.

CISO / SecOps

Przejrzyj zasady jako kod.

Kolejność i kwalifikatory mogą istotnie poszerzyć uprawnienia nawet wtedy, gdy rekord pozostaje ważny.

Kolejne kroki

  1. Przejrzyj kwalifikatory przebiegu domyślnego.
  2. Oznacz warunki nieosiągalne.
  3. Wymagaj niezależnego przeglądu zmian.

Założyciel / Nietechniczny

Zapytaj, jakie zmiany uprawnień.

Zmiana składni powinna obejmować proste wyjaśnienie, które usługi wysyłające uzyskują, a które tracą dostęp.

Kolejne kroki

  1. Wymagaj polityki przed i po.
  2. Nazwij przepływy pracy, których to dotyczy.
  3. Zachowaj plan renowacji.

[ Często zadawane pytania ]

Często zadawane pytania

Co oznacza brak kwalifikatora?

Domyślnym kwalifikatorem jest +, który generuje pass, gdy mechanizm pasuje.

RFC 7208 §4.6.2

Czy przekierowanie jest mechanizmem?

Nie. Jest to modyfikator stosowany w przypadku, gdy żaden mechanizm nie pasuje, z zastrzeżeniem jego specyficznych zasad.

RFC 7208 §6.1

Czy mogę opublikować jeden rekord SPF na usługę?

Nie. Wiele rekordów SPF w jednej tożsamości powoduje permerror . Połącz autoryzowane usługi w jedną ważną polisę.

RFC 7208 §4.5

Czy dwa cytowane ciągi TXT są dwoma rekordami SPF ?

Nie koniecznie. Pojedynczy rekord TXT może zawierać wiele ciągów znaków, które SPF łączy bez wstawiania spacji.

RFC 7208 §3.3

Czy mimo -all mogę umieścić usługę?

Nie można tam dodać autoryzacji, ponieważ wszystkie pasują jako pierwsze. Przejrzyj całe zamówienie przed publikacją.

RFC 7208 §5.1

Czy zawarte -all staje się moim -all ?

Nie. Uwzględniony wynik niepowodzenia powoduje, że uwzględnienie nie jest zgodne; polityka zewnętrzna jest kontynuowana.

RFC 7208 §5.2

Co się stanie bez mechanizmu dopasowującego lub przekierowania?

Domyślny wynik SPF jest neutralny.

RFC 7208 §4.7

Czy nieznane mechanizmy są ignorowane?

Nie. Nieznane mechanizmy powodują permerror . Składniowo poprawne nieznane modyfikatory są ignorowane; pełny rekord nadal wymaga sprawdzenia składni.

RFC 7208 §4.6 RFC 7208 §6

[ Źródła ]

Źródła

  1. RFC 7208

    Sekcje §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

[ Słowniczek ]

Słowniczek

SPF
Ocena autoryzacji dla łączącego adresu IP i odpowiedniej tożsamości SMTP .

RFC 7208 §2.4

Zawiera SPF
Przejście rekurencyjne powoduje dopasowanie dołączenia; jego kwalifikator określa następnie wynik zewnętrzny, podczas gdy błędy następują po określonym mapowaniu.

RFC 7208 §5.2

Przekierowanie SPF
Ocena zastępcza z docelową domeną jako bieżącą domeną i niezmienionymi danymi wejściowymi adresu IP/nadawcy; dowolny mechanizm wyłącza przekierowanie.

RFC 7208 §6.1

Pochodzenie przedsiębiorstwa

Dlaczego najlepsze instytucje finansowe i rządy wycofali swoje panele bezpieczeństwa poczty e-mail.

Tradycyjne platformy uwierzytelniania poczty e-mail oferują pulpit nawigacyjny i proszą inżynierów o wykonanie pracy. W środowiskach o dużej stawce ręczny nadzór oznacza opóźnione egzekwowanie, zmianę konfiguracji i niemonitorowane domeny-cienie.

EmailAuth to platforma agentowego pochodzenia wiadomości e-mail. Nasi agenci egzekwują p=reject, dostosuj zewnętrznych nadawców i przenieś swoje domeny do pełnych adresów RFC 9989 zgodność, nowy standard DMARC , z możliwością kontroli przez człowieka.

Rządy Duże przedsiębiorstwa Instytucje finansowe poziomu 1

SaaS · Dedykowany najem · Lokalne rozwiązanie typu air-gapped · Szyfrowanie BYOK

Baza wiedzy