[ DKIM ]

Undersøg DKIM fejl, der involverer linjeafslutninger

Bevar det rå budskab, og skeln transportnormalisering fra ændringer i mellemrum tilladt ved kanonisering.

Af EmailAuth -forskningsteamet

[Nøglepunkter]

  • Normaliser lokale linjeseparatorer, før du underskriver den overførte formular.
  • Skelne transportændringer fra normalisering af eksportværktøj.
  • At matche en body-hash alene etablerer ikke en gyldig DKIM signatur.
På denne side

Et problem med linjeafslutning er et problem på byteniveau. At kopiere en besked til en editor, se de samme linjer og konkludere, at intet ændret er ikke en pålidelig DKIM undersøgelse. Bevar den originale fremstilling og identificer, om konverteringen fandt sted før underskrivelsen, under transport eller kun under bevisindsamling.

Etabler den forventede form

Internet-mail bruger CRLF linjeseparatorer. RFC 6376 §5.3 kræver, at en underskriver konverterer lokale blottede CR- eller LF-konventioner til SMTP-standard CRLF-sekvensen før signering. Konverteringen bør gælde for den transmitterede meddelelse, ikke kun for en privat kopi, der er videregivet til signeringsalgoritmen. At underskrive en erklæring og sende en anden inviterer til uenighed ved verifikation.

Kanonisering har snævrere regler end generel tekstnormalisering. Simpel krop kanonisering ignorerer efterfølgende tomme linjer og leverer den nødvendige endelige CRLF. Afslappet krop kanonisering fjerner også hvide mellemrum i slutningen af ​​linjen og komprimerer rækker af mellemrum eller tabulatorer inden for en linje. Det sletter generelt ikke meningsfulde linjeskift eller samler indpakket tekst. Overskrifts- og kropsalgoritmerne kan variere, så læs begge dele af c i stedet for at antage en enkelt tilstand.

Beskyt beviserne først

Indsaml rå beskedfiler fra underskriveren og modtageren ved hjælp af metoder, hvis transformationer du forstår. Behold skrivebeskyttede originaler og hashes af disse filer. I en arbejdskopi skal du undersøge CRLF-, bare LF- og bare CR-tællinger ved hjælp af et byte-bevidst værktøj. En tekstfremvisers visning er ikke tilstrækkelig: mange seere gengiver hver formular som et linjeskift.

Spørg hvordan prøven blev opnået. Et arkiv, shell-pipeline eller kildekontrolindstilling kan normalisere slutninger efter levering. En forskel i eksporterede filer fastslår ikke, at selve SMTP meddelelsen er ændret. Sammenlign, hvor det er muligt, uafhængige fangster ved samme grænse og behold eksportproceduren med beviserne.

Brug en lille kontrolleret sag

Illustrativt input: en krop består af alfa, en CRLF, beta, og en sidste CRLF. Tilføjelse af en tom CRLF-kun linje i slutningen normaliseres væk af standard kropsalgoritmerne. At erstatte linjeskiftet mellem alfa og beta med et mellemrum ændrer indholdet og er ikke den samme handling. Tilføjelse af mellemrum i slutningen af ​​alfalinjen adskiller sig ved simpel kropskanonisering, men normaliseres ved afslappet kropskanonisering.

Disse eksempler forklarer reglerne; de er ikke en erstatning for bekræftelse af en fuldstændig signatur. En gyldig kropshash er kun en del af DKIM verifikation. Udvælgelse af header, hentning af offentlig nøgle og den kryptografiske signatur skal også lykkes.

Find og ret den ansvarlige fase

Hvis underskriveren modtager LF-only lokale data, skal du inspicere serialiseringsstadiet før underskrivelse. Hvis underskriveroutput er korrekt, men en senere råoptagelse afviger, skal du undersøge den hops konverterings- eller genopbygningsadfærd. Hvis kun dine eksporterede beviser er forskellige, skal du reparere indfangningsmetoden i stedet for at ændre produktions- DNS eller nøgler.

Foretag en snævert ændring, der sikrer, at underskriveren og den transmitterede meddelelse bruger den samme normaliserede repræsentation. Opfind ikke en tilpasset verifikator, der accepterer vilkårlige linjetransformationer for at få prøven til at bestå. En sådan verifikator ville ikke længere teste de offentliggjorte DKIM regler.

Bekræft mere end én besked

Efter ændringen skal du sende en lille pakke, der dækker almindelig tekst, tomme efterfølgende linjer, HTML og vedhæftede filer. Registrer den valgte kanonisering, de indsamlede råfil-hashes og den betroede modtagers verifikationsresultat. Behold den forventede output-repræsentation som en regressionsarmatur. En nyttig løsning identificerer den ansvarlige konvertering og viser, at nye meddelelser når modtageren i den tilsigtede form.

Hold bytetal adskilt fra konklusioner

Til den syntetiske krop alfa<CRLF>beta<CRLF>, netværksformens krop er 13 oktetter: fem bogstaver, to separatoroktetter, fire bogstaver og to sidste separatoroktetter. En LF-kun eksport af de samme synlige linjer er 11 oktetter. Denne tælleforskel er en grund til at undersøge indsamling eller serialisering, ikke bevis for, at den sendte post var beskadiget. Behold de originale filer og indsamlingsmetoder, og sammenlign derefter med en pålidelig optagelse ved den relevante grænse. CRLF-etiketten i parentes repræsenterer bytes, ikke bogstavelig tekst.

[ Takeaway ]

Normaliser lokale linjeseparatorer, før du underskriver den overførte formular. Skelne transportændringer fra normalisering af eksportværktøj. At matche en body-hash alene etablerer ikke en gyldig DKIM signatur.

[Efter rolle]

Hvad betyder det for dig

Vælg din rolle for praktiske næste trin.

IT / Mail Admin

Bevar oktetter

Bestem, om ændringen skete i transport eller eksport.

Næste trin

  1. Hash originale filer.
  2. Undersøg normalisering før underskrift.

CISO / SecOps

Undgå at svække verifikationen

At acceptere vilkårlige transformationer skjuler integritetsændringer.

Næste trin

  1. Behold standardbaseret verifikation.
  2. Gennemgå fastholdelse af optagelse.

Grundlægger / Ikke-teknisk

Bed om en reproducerbar rettelse

Et skærmbillede eller redigeret prøve er ikke bevis på, at afsenderruten er repareret.

Næste trin

  1. Anmod om en ny leveringstest.
  2. Hold kundedata ude af inventar.

[ Ofte stillede spørgsmål ]

Ofte stillede spørgsmål

Hvad er CRLF?

Det er to-byte vognretur- og linjefeed-sekvensen, der bruges til adskillelse af internetpostlinjer.

RFC 2045 §2.1

Er et LF-kun eksportbevis for brudt levering?

Nej. Eksportværktøjet kan have normaliseret filen efter levering. Tjek optagelsesmetoden.

Ignorerer afslappet tilstand alle newlines?

Nej. Det bevarer en meningsfuld linjestruktur, mens den anvender specificerede blanktegn og efterfølgende-tom linje-regler.

RFC 6376 §3.4.4

Bryder ekstra tomme linjer i slutningen altid DKIM ?

Standardkropsalgoritmerne ignorerer efterfølgende tomme linjer. Andre ændringer kræver stadig særskilt evaluering.

RFC 6376 §3.4.3 RFC 6376 §3.4.4

Er kanonisering af header og krop identiske?

Nej. c-tagget kan vælge forskellige algoritmer til overskrifter og brødtekst, og deres regler er forskellige.

RFC 6376 §3.5

Skal vi dreje nøglen først?

Ikke for en påvist repræsentationsmismatch. Ret serialiseringsgrænsen; en ny nøgle kan ikke gendanne ændrede bytes.

Er matching bh nok til at bevise DKIM pas?

Nej. Header-signaturen og andre verifikationstjek skal også lykkes.

RFC 6376 §6.1.3

Hvad skal regressionsarmaturen indeholde?

Et kendt rå input, forventet normaliseret output, kanoniseringsvalg og pålidelige verifikationsresultater for nye testmeddelelser.

[ Kilder ]

Kilder

  1. RFC 6376

    Afsnit §1 · §3.4 · §3.4.1 · §3.4.2 · §3.4.3 · §3.4.4 · §3.5 · §5.3 · §6.1.3

  2. RFC 2045

    Afsnit §2.1

  3. RFC 8601

    Afsnit §1.2

[ Ordliste ]

Ordliste

CRLF
Carriage-retur og line-feed-parret, to oktetter, der bruges til adskillelse af internet-postlinje.

RFC 2045 §2.1

Kanonisering
Defineret klargøring af overskrifter eller brødtekst før DKIM hashing og verifikation.

RFC 6376 §3.4

Kropshash (bh)
Den kodede hash af den kanoniserede krop med enhver gældende længdegrænse.

RFC 6376 §3.5

Rå besked beviser
En indsamlet serialiseret meddelelse, hvis opsamlingsmetode og bevaringshistorik skal bevares.

Virksomhedens herkomst

Hvorfor top finansielle institutioner og regeringer pensionerede deres e-mailsikkerhedsdashboards.

Traditionelle e-mail-godkendelsesplatforme sælger dig et dashboard og beder dine ingeniører om at gøre arbejdet. I miljøer med høj indsats betyder manuel overvågning forsinket håndhævelse, konfigurationsdrift og uovervågede skyggedomæner.

EmailAuth er den agentiske e-mail-herkomstplatform. Vores agenter håndhæver p=reject, hold tredjepartsafsendere på linje og flyt dine domæner til fuld RFC 9989 compliance, den nye DMARC standard, med menneskelig auditabilitet.

regeringer Store virksomheder Tier-1 finansielle institutioner

SaaS · Dedikeret lejemål · Air-gapped on-prem · BYOK-kryptering

Vidensbase