Passa al contenuto principale

5. Security Considerations (Considerazioni sulla sicurezza)

È necessario prestare attenzione quando si visualizzano messaggi su un terminale o emulatore di terminale. I terminali potenti possono agire su sequenze di escape e altre combinazioni di caratteri di controllo US-ASCII con varie conseguenze. Possono rimappare la tastiera o permettere altre modifiche al terminale che possono portare a denial of service o persino dati danneggiati.

I visualizzatori di messaggi potrebbero voler rimuovere sequenze di escape di terminale potenzialmente pericolose da un messaggio prima della visualizzazione. Tuttavia, altre sequenze di escape appaiono nei messaggi per scopi utili e quindi non dovrebbero essere rimosse indiscriminatamente.

Principali preoccupazioni di sicurezza

1. Attacchi tramite sequenze di escape del terminale

Minaccia: Le sequenze di escape dannose possono controllare il comportamento del terminale

Rischi:

  • Rimappatura della tastiera
  • Modifica delle impostazioni del terminale
  • Esecuzione automatica di comandi
  • Impatto su dispositivi collegati (stampanti)

Mitigazione:

  • Filtrare le sequenze di escape pericolose prima della visualizzazione
  • Preservare le sequenze di escape legittime (ISO 2022, codifica MIME)
  • Utilizzare ambienti di visualizzazione sandboxed o ristretti

2. Trasmissione di oggetti non testuali

La trasmissione di oggetti non testuali nei messaggi solleva ulteriori problemi di sicurezza. Questi problemi sono discussi in RFC 2045, RFC 2046, RFC 2047, RFC 2049, RFC 4288 e RFC 4289.

Rischi relativi a MIME:

  • Allegati eseguibili
  • Iniezione di script
  • Overflow del buffer
  • Tipi di contenuto dannosi

3. Divulgazione di informazioni del campo Bcc

Molte implementazioni utilizzano il campo "Bcc:" (copia carbone nascosta) descritto nella Sezione 3.6.3 per facilitare l'invio di messaggi ai destinatari senza rivelare gli indirizzi di uno o più destinatari agli altri destinatari. Una gestione errata di questo uso di "Bcc:" ha il potenziale di rivelare informazioni riservate.

Scenario 1: Rimozione della riga Bcc

Se viene utilizzato il primo metodo descritto nella Sezione 3.6.3, dove la riga "Bcc:" viene rimossa dal messaggio, i destinatari in copia nascosta non hanno un'indicazione esplicita di aver ricevuto una copia nascosta, tranne per il fatto che il loro indirizzo non appare nella sezione di intestazione del messaggio.

Scenario 2: Conservazione del campo Bcc

Quando viene utilizzato il secondo metodo dalla Sezione 3.6.3, l'indirizzo del destinatario in copia nascosta appare nel campo "Bcc:" di una copia separata del messaggio. Le implementazioni devono comunque prestare attenzione nella gestione delle risposte al messaggio.

Migliori pratiche di sicurezza

Per i visualizzatori di messaggi

PraticaDescrizione
Filtrare i caratteri di controlloRimuovere o escapare i caratteri di controllo potenzialmente pericolosi
Whitelist delle sequenze di escapeConsentire solo sequenze di escape note come sicure
Rendering in sandboxRenderizzare il contenuto del messaggio in ambiente ristretto
Avvisare gli utentiAvvisare gli utenti di contenuti potenzialmente pericolosi

Per i client di posta elettronica

PraticaDescrizione
Gestione BccImplementare correttamente la protezione della privacy del campo Bcc
Gestione rispostePrevenire l'esposizione accidentale dei destinatari Bcc
Scansione allegatiScansionare gli allegati per contenuti dannosi
Validazione contenutoValidare i tipi di contenuto e le codifiche MIME

Per i server di posta elettronica

PraticaDescrizione
Filtraggio contenutoFiltrare pattern dannosi noti
Limiti di dimensioneLimitare le dimensioni di messaggi e allegati
Limitazione della velocitàPrevenire spam e attacchi DoS
AutenticazioneImplementare SPF, DKIM, DMARC

Le considerazioni sulla sicurezza nell'implementazione di RFC 5322 si concentrano su tre aree principali:

  1. Sicurezza della visualizzazione: Prevenzione degli attacchi tramite sequenze di escape del terminale
  2. Protezione della privacy: Gestione appropriata del campo Bcc
  3. Sicurezza del contenuto: Gestione sicura di MIME e allegati

Tutte le implementazioni dovrebbero adottare una strategia di difesa in profondità, implementando controlli di sicurezza su più livelli.


Successivo: 6. IANA Considerations

Precedente: 4. Obsolete Syntax