[ Rapporter og undersøgelser ]

Sikker indtagelse af komprimerede DMARC XML-filer

Separat vedhæftningsindtag, begrænset dekompression, sikker parsing og transaktionsimport, så én fjendtlig rapport ikke kan ødelægge analyser eller udmatte samleren.

Af EmailAuth -forskningsteamet

[Nøglepunkter]

  • Behandl rapportvedhæftede filer som upålidelige ved hvert indtagelseslag.
  • Bundet udvidede bytes under dekompression, ikke efter fuld allokering.
  • Bevis kun validerede, duplikatbehandlede data og bevar kontrolleret diagnostik.
På denne side

En rapporteringspostkasse er en inputgrænse, ikke en pålidelig datakilde. En vedhæftning kan være misformet, overdimensioneret eller bevidst dyr at behandle. Byg indtagelsesstien, så transportaccept ikke automatisk betyder parseraccept, og parseraccept betyder ikke automatisk, at rapportens påstande er troværdige.

RFC 9990 beskriver aggregeret XML-levering og advarer om ressourceudtømning og falsk information. Nedenstående pipeline er en implementeringsanbefaling, ikke en påstand om, at et bestemt produkt allerede leverer disse kontroller.

Isoler indtag fra analyse

Referencer: RFC 9990 §8.1, RFC 9990 §8.2.

Tildel et ankomst-id og bevar en afgrænset, adgangsstyret reference til den originale vedhæftede fil. Registrer dens størrelse, fingeraftryk, ankomsttid og transportmetadata. Anvend kø og ressourcekontrol pr. oprindelse, så én strøm ikke kan monopolisere arbejdere. Behandl en afsenderadresse eller et velkendt filnavn som utilstrækkeligt bevis på ægthed.

Hold arbejderen minimalt privilegeret og adskilt fra de databaselegitimationsoplysninger, der bruges til at udgive endelige metrics. Forhindrer vedhæftet indhold i at bestemme eksekverbare kommandoer eller destinationsstier. Mislykkede input hører hjemme i en kontrolleret diagnostisk sti, ikke i offentlige fejlsider eller ubegrænsede logfiler.

Bundet dekompression, mens den kører

Referencer: RFC 9990 §3.5.2, RFC 9990 §8.1.

RFC 9990 specificerer XML og anbefaler GZIP-komprimering. Find det understøttede format og afvis ikke-understøttede containere i henhold til en dokumenteret kompatibilitetspolitik. Hvis ældre arkivformater bevidst understøttes, skal du gennemgå deres yderligere udtræknings- og stirisici i stedet for at behandle dem som ækvivalente med en enkelt XML-strøm.

Indstil grænser for komprimerede bytes, udvidede bytes, forløbet behandlingstid, hukommelse, registreringsantal og samtidighed. Håndhæv udvidede størrelsesgrænser under læsning, ikke efter at have allokeret hele outputtet. Størrelsesdeklarationer inde i en beholder er ikke en erstatning for måling af faktisk output. Stop behandlingen, når en konfigureret grænse er nået.

Parse uden unødvendige muligheder

Referencer: RFC 9990 §3.1.1, RFC 9990 §8.1.

Reference: OWASP XML-forebyggelse af ekstern enhed, generel vejledning.

Brug en vedligeholdt parser med dens faktiske runtime-konfiguration gennemgået. Deaktiver unødvendige dokumenttyper, ekstern enhedsopløsning, XInclude og ekstern ressourcehentning. Behandl ikke-understøttede hærdningsindstillinger som konfigurationsfejl, ikke advarsler, der skal ignoreres. Brug betroede lokale skemaer, hvor validering er påkrævet i stedet for at følge skemaplaceringer leveret af en vedhæftet fil. Anvend grænser for indlejring og tekststørrelse samt samlede bytes.

Validerer den forventede rapportstruktur og feltsemantik adskilt fra XML-formenhed. Et dokument kan være velformet, men ubrugeligt som en DMARC rapport. Bevar årsagen til afvisningen uden at oversætte en parserfejl til en dom om mailgodkendelse.

Brug en lille afgrænset armatur

Illustrativ iscenesættelseskonfiguration: tillad 64 KiB komprimeret input og 256 KiB udvidet output for en bevidst lille testmedarbejder. En harmløs GZIP-armatur udvides til 300 KiB gentagen testtekst. Det forventede resultat er et stop i udvidet størrelse før fuldstændig materialisering, ingen indberetningsrækker og en diagnostik indeholdende grænsen og inputreferencen.

Disse tal er demonstrationsgrænser, ikke rådgivning om produktionsstørrelse. Test en gyldig lille rapport umiddelbart efter for at verificere, at arbejderen forbliver brugbar. Registrer faktiske målinger, før du hævder, at kontrollen virker. Denne artikel beskriver påkrævet iscenesættelsesadfærd, ikke en udført lejertest. Gennemgangspakken optager også en ny afgrænset Python GZIP-demonstration: den registrerer udvidelse ud over 256 KiB-grænsen med højst én ekstra detektionsbyte og håndterer derefter en lille gyldig XML-tekststrøm. Det viser kun denne lokale dekompressionsbeskyttelse, ikke parserhærdning, hukommelsesisolering eller databaseadfærd.

Send kun validerede data

Referencer: RFC 9990 §3.5.4, RFC 9990 §9.2.

Trin normaliserede registreringer og fuldfør importen atomisk efter validering og duplikathåndtering. En afbrudt fil bør ikke efterlade en delvis optælling i produktionsanalyse. Gør replay idempotent og behold beslutningen, der forbinder gentagne ankomster til den optalte rapport.

Overvåg afviste bytes, behandlingstid, køalder og gendannelsesresultater. Legitime rapporter kan overskride lokale grænser, så giv en kontrolleret gennemgang i stedet for automatisk at hæve hver grænse. Luk det operationelle design med navngivne ejere for indtag, parservedligeholdelse, opbevaringslagring og hændelsesrespons.

[ Takeaway ]

Bevis kun validerede, duplikatbehandlede data og bevar kontrolleret diagnostik.

[Efter rolle]

Hvad betyder det for dig

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

IT / Mail Admin

Håndhæv grænser for streamingudvidelse.

Valider før du begår metrics. Test replay og post-failure recovery.

Næste trin

  1. Håndhæv grænser for streamingudvidelse.
  2. Valider før du begår metrics.
  3. Test replay og post-failure recovery.

CISO / SecOps

Gennemgå medarbejderprivilegier og udgang.

Kræv målte ressourcetest. Hold fjendtlige input væk fra ubegrænsede logfiler.

Næste trin

  1. Gennemgå medarbejderprivilegier og udgang.
  2. Kræv målte ressourcetest.
  3. Hold fjendtlige input væk fra ubegrænsede logfiler.

Grundlægger / Ikke-teknisk

Tildel ejerskab for samlerens pålidelighed.

Hold indtagelsesafbrydelser adskilt fra mailfejl. Finansier en kontrolleret overdimensioneret rapportgennemgangssti.

Næste trin

  1. Tildel ejerskab for samlerens pålidelighed.
  2. Hold indtagelsesafbrydelser adskilt fra mailfejl.
  3. Finansier en kontrolleret overdimensioneret rapportgennemgangssti.

[ Ofte stillede spørgsmål ]

Ofte stillede spørgsmål

Er en vedhæftet fil betroet, fordi den ankom til rua?

Nej. Indtag skal behandle rapportindhold som upålideligt.

RFC 9990 §8.2

Hvilken komprimering anbefaler den aktuelle samlede RFC?

GZIP til XML-rapporten; yderligere ældre containere har brug for en eksplicit kompatibilitetspolitik.

RFC 9990 §3.5.2

Hvornår skal tjek af udvidet størrelse køre?

Under dekompression, før det fulde output er allokeret eller skrevet.

Er grænserne for komprimeret størrelse tilstrækkelige?

Nej. Udvidede bytes, tid, hukommelse og samtidighed kræver også kontrol.

RFC 9990 §8.1

Skal parser-skemaplaceringer udløse netværkshentninger?

Brug pålidelige lokale valideringsressourcer og forhindre vedhæftningsstyret hentning.

Er forkert udformet XML-bevis på forfalsket post?

Nej. Det er et behandlingsresultat, ikke et meddelelsesgodkendelsesresultat.

Hvad hvis en gyldig rapport overskrider en lokal grænse?

Sæt den i karantæne til kontrolleret gennemgang uden lydløst at svække hele pipelinen.

Hvordan skal en mislykket import genoprettes?

Udfør ingen delvise målinger, bevar en sikker diagnostik og bekræft de næste gyldige rapportprocesser normalt.

[ Kilder ]

Kilder

  1. RFC 9990

    Afsnit §3.1 · §3.1.1 · §3.5.2 · §3.5.4 · §8.1 · §8.2 · §9.2

  2. OWASP XML External Entity Prevention

    Afsnit Generel vejledning

[ Ordliste ]

Ordliste

Udvidet størrelse
Outputbytes produceret ved dekomprimering, uafhængig af komprimeret inputlængde.
Atomforpligtelse
Et lokalt lagerdesign, der afslører alle validerede importændringer sammen eller ingen af ​​dem.
Samlet rapport
Grupperede modtagerobservationer om DMARC -evaluering under et rapporteringsinterval.

RFC 9990 §3.1

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