[ Rapporti e indagini ]

Ingestione sicura di file XML DMARC compressi

Ingresso separato degli allegati, decompressione limitata, analisi sicura e importazione transazionale in modo che un report ostile non possa corrompere l'analisi o esaurire il raccoglitore.

A cura del team di ricerca EmailAuth

[ Punti chiave ]

  • Tratta gli allegati dei report come non attendibili a ogni livello di importazione.
  • Byte espansi associati durante la decompressione, non dopo l'allocazione completa.
  • Impegna solo dati convalidati, gestiti in modo duplicato e preserva la diagnostica controllata.
In questa pagina

Una casella di posta di reporting è un limite di input, non un'origine dati attendibile. Un allegato può essere malformato, sovradimensionato o intenzionalmente costoso da elaborare. Costruire il percorso di inserimento in modo che l'accettazione del trasporto non significhi automaticamente l'accettazione del parser e l'accettazione del parser non significhi automaticamente che le attestazioni del report sono affidabili.

RFC 9990 descrive la consegna XML aggregata e avverte dell'esaurimento delle risorse e di informazioni false. La pipeline seguente è una raccomandazione di implementazione, non un'affermazione secondo cui un particolare prodotto fornisce già questi controlli.

Isolare l'assunzione dall'analisi

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

Assegnare un identificatore di arrivo e conservare un riferimento limitato e con accesso controllato all'allegato originale. Registra le sue dimensioni, l'impronta digitale, l'ora di arrivo e i metadati di trasporto. Applica controlli sulle risorse per coda e per origine in modo che un flusso non possa monopolizzare i lavoratori. Trattare l'indirizzo del mittente o il nome di file familiare come prova insufficiente di autenticità.

Mantieni il lavoratore con privilegi minimi e separato dalle credenziali del database utilizzate per pubblicare i parametri finali. Impedisce al contenuto dell'allegato di determinare comandi eseguibili o percorsi di destinazione. Gli input non riusciti appartengono a un percorso diagnostico controllato, non alle pagine di errore pubbliche o ai log senza restrizioni.

Decompressione vincolata durante l'esecuzione

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

RFC 9990 specifica XML e consiglia la compressione GZIP. Rileva il formato supportato e rifiuta i contenitori non supportati in base a una politica di compatibilità documentata. Se i formati di archivio più vecchi sono supportati deliberatamente, rivedi i rischi aggiuntivi relativi all'estrazione e al percorso invece di trattarli come equivalenti a un singolo flusso XML.

Imposta i limiti per byte compressi, byte espansi, tempo di elaborazione trascorso, memoria, conteggio dei record e concorrenza. Applica i limiti di dimensione estesa durante la lettura, non dopo aver allocato l'intero output. Le dichiarazioni sulle dimensioni all'interno di un contenitore non sostituiscono la misurazione della produzione effettiva. Interrompe l'elaborazione quando viene raggiunto un limite configurato.

Analizzare senza funzionalità non necessarie

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

Riferimento: Prevenzione di entità esterne OWASP XML, Guida generale.

Utilizzare un parser mantenuto con la sua configurazione di runtime effettiva rivista. Disabilita i tipi di documenti non necessari, la risoluzione di entità esterne, XInclude e il recupero di risorse esterne. Tratta le impostazioni di protezione avanzata non supportate come errori di configurazione e non come avvisi da ignorare. Utilizzare schemi locali attendibili dove è richiesta la convalida anziché seguire i percorsi dello schema forniti da un allegato. Applica limiti alla nidificazione e alle dimensioni del testo, nonché ai byte totali.

Convalidare la struttura del report prevista e la semantica dei campi separatamente dalla corretta formattazione dell'XML. Un documento può essere ben formato ma inutilizzabile come file DMARC rapporto. Preservare il motivo del rifiuto senza tradurre un errore del parser in un verdetto di autenticazione della posta.

Utilizzare un piccolo dispositivo delimitato

Configurazione di staging illustrativa: consente un input compresso di 64 KiB e un output espanso di 256 KiB per un addetto al test volutamente piccolo. Un innocuo dispositivo GZIP si espande fino a 300 KiB di testo di test ripetitivo. Il risultato previsto è un arresto di dimensioni espanse prima della completa materializzazione, nessuna riga del report impegnata e una diagnostica contenente il limite e il riferimento di input.

Questi numeri sono limiti dimostrativi, non consigli sul dimensionamento della produzione. Testare un piccolo report valido subito dopo per verificare che il lavoratore rimanga utilizzabile. Registrare le misurazioni effettive prima di dichiarare che il controllo funziona. Questo articolo descrive il comportamento di gestione temporanea richiesto, non un test del tenant eseguito. Il pacchetto di revisione registra anche una nuova dimostrazione GZIP Python limitata: rileva l'espansione oltre il limite di 256 KiB con al massimo un byte di rilevamento aggiuntivo, quindi gestisce con successo un piccolo flusso di testo XML valido. Ciò dimostra solo questa protezione di decompressione locale, non il rafforzamento del parser, l'isolamento della memoria o il comportamento del database.

Effettua il commit solo dei dati convalidati

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

Metti in scena i record normalizzati e completa l'importazione in modo atomico dopo la convalida e la gestione dei duplicati. Un file interrotto non dovrebbe lasciare un conteggio parziale nell'analisi della produzione. Rendi il replay idempotente e mantieni la decisione che collega gli arrivi ripetuti al report conteggiato.

Monitora i byte rifiutati, il tempo di elaborazione, la durata della coda e i risultati del ripristino. Le segnalazioni legittime possono superare i limiti locali, quindi fornisci un percorso di revisione controllato anziché aumentare automaticamente ogni limite. Chiudere la progettazione operativa con proprietari nominati per l'assunzione, la manutenzione del parser, la conservazione dello storage e la risposta agli incidenti.

[ Porta via ]

Impegna solo dati convalidati, gestiti in modo duplicato e preserva la diagnostica controllata.

[Per ruolo]

Cosa significa questo per te

Scegli il tuo ruolo per i prossimi passi pratici.

Amministratore IT/Posta

Applica i limiti di espansione dello streaming.

Convalidare prima di confermare le metriche. Test di riproduzione e ripristino post-errore.

Prossimi passi

  1. Applica i limiti di espansione dello streaming.
  2. Convalidare prima di confermare le metriche.
  3. Test di riproduzione e ripristino post-errore.

CISO/SecOps

Esaminare i privilegi e l'uscita del lavoratore.

Richiedono test delle risorse misurate. Mantieni gli input ostili fuori dai registri senza restrizioni.

Prossimi passi

  1. Esaminare i privilegi e l'uscita del lavoratore.
  2. Richiedono test delle risorse misurate.
  3. Mantieni gli input ostili fuori dai registri senza restrizioni.

Fondatore / Non tecnico

Assegnare la proprietà per l'affidabilità del raccoglitore.

Mantieni le interruzioni di acquisizione distinte dagli errori di posta. Finanzia un percorso di revisione controllato di report di grandi dimensioni.

Prossimi passi

  1. Assegnare la proprietà per l'affidabilità del raccoglitore.
  2. Mantieni le interruzioni di acquisizione distinte dagli errori di posta.
  3. Finanzia un percorso di revisione controllato di report di grandi dimensioni.

[ Domande frequenti ]

Domande frequenti

Un allegato è attendibile perché è arrivato a rua?

No. L'assunzione deve considerare il contenuto del report come non attendibile.

RFC 9990 §8.2

Quale compressione consiglia l'attuale RFC aggregato?

GZIP per il report XML; i contenitori legacy aggiuntivi necessitano di una policy di compatibilità esplicita.

RFC 9990 §3.5.2

Quando dovrebbero essere eseguiti i controlli delle dimensioni estese?

Durante la decompressione, prima che venga allocato o scritto l'intero output.

I limiti di dimensione compressa sono sufficienti?

No. Anche i byte espansi, l'ora, la memoria e la concorrenza necessitano di controlli.

RFC 9990 §8.1

Le posizioni dello schema del parser dovrebbero attivare i recuperi di rete?

Utilizza risorse di convalida locali affidabili e impedisci il recupero diretto dagli allegati.

Il formato XML non valido è una prova di posta contraffatta?

No. È un risultato dell'elaborazione, non un risultato dell'autenticazione del messaggio.

Cosa succede se un report valido supera un limite locale?

Mettilo in quarantena per una revisione controllata senza indebolire silenziosamente l'intera pipeline.

Come dovrebbe essere ripristinata un'importazione non riuscita?

Non impegnare metriche parziali, conservare una diagnostica sicura e verificare che il successivo report valido venga elaborato normalmente.

[ Fonti ]

Fonti

  1. RFC 9990

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

  2. OWASP XML Prevenzione entità esterne

    Sezioni Guida generale

[ Glossario ]

Glossario

Dimensioni espanse
I byte di output prodotti dalla decompressione, indipendenti dalla lunghezza dell'input compresso.
Impegno atomico
Una progettazione di archiviazione locale che espone tutte le modifiche di importazione convalidate insieme o nessuna di esse.
Rapporto aggregato
Osservazioni del ricevitore raggruppate sulla valutazione DMARC durante un intervallo di reporting.

RFC 9990 §3.1

Provenienza aziendale

Perché le principali istituzioni finanziarie e i governi hanno ritirato le dashboard di sicurezza della posta elettronica.

Le tradizionali piattaforme di autenticazione e-mail ti vendono una dashboard e chiedono ai tuoi ingegneri di fare il lavoro. Negli ambienti ad alto rischio, la supervisione manuale comporta un’applicazione ritardata, deviazioni della configurazione e domini ombra non monitorati.

EmailAuth è la piattaforma di provenienza della posta elettronica degli agenti. I nostri agenti applicano p=reject, mantieni allineati i mittenti di terze parti e sposta i tuoi domini al massimo RFC 9989 conformità, il nuovo standard DMARC , con verificabilità human-in-the-loop.

Governi Grandi imprese Istituti finanziari di primo livello

SaaS · Locazione dedicata · Air-gapped on-premise · Crittografia BYOK

Base di conoscenza