[ SPF ]

SPF syntaxis: mechanismen, modifiers, kwalificaties en evaluatievolgorde

Lees een SPF beleid als een geëvalueerd programma, niet als een verzameling goedgekeurde domeinen.

Door het EmailAuth -onderzoeksteam · 4 minuten lezen

[ Kernpunten ]

  • Mechanismekwalificaties bepalen de resultaten alleen als ze overeenkomen.
  • Modifiers hebben verschillende regels en gedragen zich niet als extra mechanismen.
  • Valideer het volledige record voordat u representatieve paden traceert.
Op deze pagina

Een SPF record is een reeks tests met expliciete uitkomsten. Het verschil tussen een dubbele punt, een gelijkteken en een kwalificatie is van belang. Een syntactisch geldige wijziging kan ook veranderen wie geautoriseerd is, welke DNS afhankelijkheden worden bereikt of waar de verwerking stopt.

Gebruik RFC 7208 §4.6, RFC 7208 §5.2 En RFC 7208 §6 als grammatica- en evaluatiereferentie. Beschouw de onderstaande voorbeelden als synthetische armaturen, niet als platen die in productie moeten worden geplakt.

Scheid mechanismen van modifiers

Een mechanisme vraagt ​​of een invoer overeenkomt: voorbeelden hiervan zijn ip4, ip6, a, mx, include, exist en all. Een kwalificatie die aan een matchingmechanisme is gekoppeld, bepaalt het resultaat: + geeft pass, - fail, ~ softfail en ? neutrale. Onder RFC 7208 §4.6.2Als de kwalificatie wordt weggelaten, wordt + geïmpliceerd.

Modificatoren gebruiken een gelijkteken. redirect=policy.example.com delegeert evaluatie wanneer geen enkel mechanisme overeenkomt. exp=explain.example.com identificeert verklarende tekst voor bepaalde mislukte resultaten. Het zijn geen aanvullende matchingmechanismen. Erkende modifiers hebben hun eigen regels; syntactisch geldige niet-herkende modificatoren worden genegeerd, terwijl een niet-herkend mechanisme een fout is.

Een record begint met v=spf1 en wordt gepubliceerd als DNS TXT record bij de geëvalueerde identiteit. Twee afzonderlijke SPF records bij dezelfde eigenaar zijn geen manier om afzenders te combineren; SPF recordselectie keert terug permerror onder RFC 7208 §4.5. Meerdere tekenreeksen tussen aanhalingstekens binnen één TXT record zijn een andere weergave en worden aaneengeschakeld zonder tussengevoegde spaties eronder RFC 7208 §3.3.

Teken een compleet voorbeeld

Ga uit van een geldige syntaxis, één SPF -record voor elke naam en een succesvolle DNS ophaalactie. Stel dat het beleid dat is v=spf1 ip4:192.0.2.20 include:service.example.net -all. Het inbegrepen beleid is v=spf1 ip4:198.51.100.10 -all.

Voor 192.0.2.20 komt het eerste mechanisme overeen en retourneert het. De include is niet nodig voor dat evaluatiepad. Voor 198.51.100.10 komt het eerste mechanisme niet overeen, de opgenomen beleidsretouren gaan door en de buitenste include komt overeen met de standaard + kwalificatie. Voor 203.0.113.7 mislukken de opgenomen beleidsretouren; dat zorgt ervoor dat alles niet overeenkomt, en het uiterlijke -all zorgt voor de uiteindelijke mislukking.

Deze tracering verklaart waarom include geen tekstvervanging is. Het meegeleverde -all wijst niet onmiddellijk alle adressen af ​​die het beleid van de service hebben gemist. Het bovenliggende beleid wordt hervat na een niet-overeenkomend opnameresultaat.

Begrijp waar de verwerking stopt

Een matchingmechanisme maakt een einde aan de gewone mechanisme-evaluatie. Een fout uit een bereikte termijn kan ook het einde van de evaluatie betekenen. Het herschikken van termen kan daarom het resultaat of de afhankelijkheden die een ontvanger moet opvragen, veranderen.

Het all-mechanisme komt altijd overeen, dus termen erna kunnen geen aanvullende autorisatie bieden. A omleidingsmodificator wordt genegeerd wanneer ergens in de record een all-mechanisme aanwezig is. Schrijven -all redirect= policy.example.com creëert geen noodterugval.

Onder RFC 7208 §4.7Als er geen mechanisme overeenkomt en er geen omleiding is, is het standaardresultaat neutraal. Maak het beoogde einde expliciet, zodat een andere beheerder niet hoeft te concluderen of de weglating opzettelijk was.

Controleer het pad en het volledige record

Voordat u publiceert, valideert u de volledige syntaxis, en niet alleen het gedeelte dat naar verwachting overeenkomt met een bekend IP-adres. Een ongeldige polis kan niet worden veiliggesteld door uit te gaan van een gunstige vroege match. Evalueer vervolgens geautoriseerde IPv4 en IPv6 -invoer, een ongeautoriseerde invoer en afhankelijkheden die mislukken of geen SPF record retourneren.

De belangrijkste geëvalueerde limieten DNS -termen zijn onder meer a, mx, ptr, exist en redirect-termen, inclusief recursie. Het gaat niet om een ​​telling van geciteerde TXT fragmenten. Houd een spoor bij waarin zowel het geselecteerde resultaat als de bereikte DNS voorwaarden worden weergegeven. Budget voor veranderingen in de afhankelijkheid van providers in plaats van een beleid te ontwerpen zonder speelruimte.

Breng een beoordeelbare wijziging aan

Schrijf het voorgestelde record naast het huidige record en leg het beoogde toestemmingsverschil in gewone taal uit. Behoud de eerdere waarde en TTL, controleer het resultaat bij gezaghebbende DNS en via een recursieve solver, en test vervolgens door representatief ontvangen berichten.

De acceptatievoorwaarde is niet simpelweg dat een parser de string accepteert. De beoogde afzenders moeten doorgaan voor de juiste identiteit, onbedoelde afzenders mogen geen toestemming krijgen en vereist zijn DMARC uitlijning intact moeten blijven.

De praktische afhaalmaaltijd

Lees elk SPF term per type, kwalificatie en positie. Een duidelijk evaluatiespoor maakt syntaxisbeoordeling tot een toestemmingsbeoordeling in plaats van tot een interpunctieoefening.

Houd de beslissing reproduceerbaar

In de armatuur met twee records gaat het lokale adres vóór opname door, het serviceadres gaat via de kinderpas en het niet-gerelateerde adres bereikt de uiteindelijke mislukking van de ouder. Als het kind in plaats daarvan geen SPF record heeft, retourneert de bereikte include permerror . Houd dat foutgeval gescheiden van het mislukte/niet-overeenkomende kind. Dit zijn analytische uitkomsten, geen uitgevoerde parser- of verifiertest.

[ Afhaalmaaltijden ]

Mechanismekwalificaties bepalen de resultaten alleen als ze overeenkomen. Modifiers hebben verschillende regels en gedragen zich niet als extra mechanismen. Valideer het volledige record voordat u representatieve paden traceert.

[ Per rol ]

Wat dit voor jou betekent

Kies jouw rol voor praktische vervolgstappen.

IT/Mailbeheerder

Test een padmatrix.

Syntaxiscontroles en resultaattraceringen beantwoorden verschillende vragen; bewaar beide.

Volgende stappen

  1. Valideer het volledige record.
  2. Voer geautoriseerde en ongeautoriseerde invoer uit.
  3. Neem gevallen van afhankelijkheidsfouten op.

CISO / SecOps

Controleer het beleid als code.

Volgorde en kwalificaties kunnen de machtigingen aanzienlijk uitbreiden, zelfs als de record geldig blijft.

Volgende stappen

  1. Bekijk de standaardpass-kwalificaties.
  2. Markeer onbereikbare termen.
  3. Onafhankelijke wijzigingsbeoordeling vereisen.

Oprichter / Niet-technisch

Vraag welke toestemming verandert.

Een syntaxiswijziging zou gepaard moeten gaan met een eenvoudige uitleg van welke verzendende services toegang krijgen of verliezen.

Volgende stappen

  1. Vereist het voor-en-na-beleid.
  2. Geef de betrokken workflows een naam.
  3. Bewaar een restauratieplan.

[ Veelgestelde vragen ]

Veelgestelde vragen

Wat betekent een ontbrekende kwalificatie?

De standaardkwalificatie is +, wat een pass oplevert als het mechanisme overeenkomt.

RFC 7208 §4.6.2

Is omleiden een mechanisme?

Nee. Het is een modifier die wordt gebruikt nadat er geen mechanismen zijn gevonden, onderworpen aan de specifieke regels ervan.

RFC 7208 §6.1

Kan ik één SPF record per dienst publiceren?

Nee. Meerdere SPF records bij één identiteit veroorzaken permerror . Combineer geautoriseerde services in één geldige polis.

RFC 7208 §4.5

Zijn twee TXT tekenreeksen tussen aanhalingstekens twee SPF records?

Niet noodzakelijkerwijs. Eén TXT record kan meerdere tekenreeksen bevatten, die SPF samenvoegt zonder spaties in te voegen.

RFC 7208 §3.3

Kan ik -all een dienst verlenen?

Het kan daar geen autorisatie toevoegen omdat alles eerst overeenkomt. Controleer de volledige bestelling vóór publicatie.

RFC 7208 §5.1

Wordt een inbegrepen -all mijn -all ?

Nee. Een opgenomen mislukt resultaat zorgt ervoor dat include niet overeenkomt; het uiterlijke beleid gaat door.

RFC 7208 §5.2

Wat gebeurt er zonder een matchingmechanisme of omleiding?

Het standaard SPF resultaat is neutraal.

RFC 7208 §4.7

Worden onbekende mechanismen genegeerd?

Nee. Onbekende mechanismen veroorzaken permerror . Syntactisch geldige onbekende modificatoren worden genegeerd; het volledige record heeft nog steeds syntaxisvalidatie nodig.

RFC 7208 §4.6 RFC 7208 §6

[ Bronnen ]

Bronnen

  1. RFC 7208

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

[ Glossarium ]

Glossarium

SPF
Autorisatie-evaluatie voor een verbindend IP-adres en de relevante SMTP identiteit.

RFC 7208 §2.4

SPF inbegrepen
Een recursieve pass zorgt ervoor dat de include overeenkomt; de kwalificatie bepaalt vervolgens het uiterlijke resultaat, terwijl fouten de gespecificeerde mapping volgen.

RFC 7208 §5.2

SPF omleiding
Fallback-evaluatie met het doel als huidig ​​domein en ongewijzigde IP/afzenderinvoer; elk mechanisme schakelt omleiding uit.

RFC 7208 §6.1

Herkomst onderneming

Waarom top financiële instellingen en overheden hebben hun e-mailbeveiligingsdashboards stopgezet.

Traditionele platforms voor e-mailauthenticatie verkopen u een dashboard en vragen uw technici om het werk te doen. In omgevingen waar veel op het spel staat, betekent handmatig toezicht vertraagde handhaving, configuratieafwijking en niet-gecontroleerde schaduwdomeinen.

EmailAuth is het agentische e-mailherkomstplatform. Onze agenten handhaven p=reject, houd externe afzenders op één lijn en verplaats uw domeinen naar vol RFC 9989 compliance, de nieuwe DMARC standaard, met 'human-in-the-loop'-auditeerbaarheid.

Regeringen Grote ondernemingen Tier-1 financiële instellingen

SaaS · Toegewijde huur · Air-gapped on-premise · BYOK-encryptie

Kennisbank