Aller au contenu principal

5. Security Considerations (Considérations de sécurité)

Des précautions doivent être prises lors de l'affichage de messages sur un terminal ou un émulateur de terminal. Les terminaux puissants peuvent agir sur les séquences d'échappement et d'autres combinaisons de caractères de contrôle US-ASCII avec diverses conséquences. Ils peuvent remapper le clavier ou permettre d'autres modifications au terminal qui peuvent conduire à un déni de service ou même à des données endommagées.

Les visualiseurs de messages peuvent souhaiter supprimer les séquences d'échappement de terminal potentiellement dangereuses d'un message avant l'affichage. Cependant, d'autres séquences d'échappement apparaissent dans les messages à des fins utiles et ne doivent donc pas être supprimées sans discrimination.

Principales préoccupations de sécurité

1. Attaques par séquences d'échappement de terminal

Menace: Les séquences d'échappement malveillantes peuvent contrôler le comportement du terminal

Risques:

  • Remappage du clavier
  • Modification des paramètres du terminal
  • Exécution automatique de commandes
  • Impact sur les périphériques connectés (imprimantes)

Atténuation:

  • Filtrer les séquences d'échappement dangereuses avant l'affichage
  • Préserver les séquences d'échappement légitimes (ISO 2022, encodage MIME)
  • Utiliser des environnements d'affichage sandboxés ou restreints

2. Transmission d'objets non textuels

La transmission d'objets non textuels dans les messages soulève des problèmes de sécurité supplémentaires. Ces problèmes sont discutés dans RFC 2045, RFC 2046, RFC 2047, RFC 2049, RFC 4288 et RFC 4289.

Risques liés à MIME:

  • Pièces jointes exécutables
  • Injection de scripts
  • Débordements de tampon
  • Types de contenu malveillants

3. Divulgation d'informations du champ Bcc

De nombreuses implémentations utilisent le champ "Bcc:" (copie carbone invisible) décrit dans la Section 3.6.3 pour faciliter l'envoi de messages à des destinataires sans révéler les adresses d'un ou plusieurs destinataires aux autres destinataires. Une mauvaise gestion de cette utilisation de "Bcc:" a le potentiel de révéler des informations confidentielles.

Scénario 1: Suppression de la ligne Bcc

Si la première méthode décrite dans la Section 3.6.3 est utilisée, où la ligne "Bcc:" est supprimée du message, les destinataires en copie invisible n'ont aucune indication explicite qu'ils ont reçu une copie invisible, sauf dans la mesure où leur adresse n'apparaît pas dans la section d'en-tête du message.

Scénario 2: Conservation du champ Bcc

Lorsque la deuxième méthode de la Section 3.6.3 est utilisée, l'adresse du destinataire en copie invisible apparaît dans le champ "Bcc:" d'une copie séparée du message. Les implémentations doivent toujours être prudentes dans la gestion des réponses au message.

Meilleures pratiques de sécurité

Pour les visualiseurs de messages

PratiqueDescription
Filtrer les caractères de contrôleSupprimer ou échapper les caractères de contrôle potentiellement dangereux
Liste blanche des séquences d'échappementAutoriser uniquement les séquences d'échappement connues comme sûres
Rendu en sandboxRendre le contenu du message dans un environnement restreint
Avertir les utilisateursAlerter les utilisateurs sur le contenu potentiellement dangereux

Pour les clients de messagerie

PratiqueDescription
Gestion de BccImplémenter correctement la protection de la vie privée du champ Bcc
Gestion des réponsesEmpêcher l'exposition accidentelle des destinataires Bcc
Analyse des pièces jointesAnalyser les pièces jointes pour détecter le contenu malveillant
Validation du contenuValider les types de contenu et encodages MIME

Pour les serveurs de messagerie

PratiqueDescription
Filtrage du contenuFiltrer les modèles malveillants connus
Limites de tailleLimiter les tailles des messages et pièces jointes
Limitation du débitPrévenir le spam et les attaques DoS
AuthentificationImplémenter SPF, DKIM, DMARC

Résumé

Les considérations de sécurité lors de l'implémentation de RFC 5322 se concentrent sur trois domaines principaux:

  1. Sécurité d'affichage: Prévention des attaques par séquences d'échappement de terminal
  2. Protection de la vie privée: Gestion appropriée du champ Bcc
  3. Sécurité du contenu: Gestion sûre de MIME et des pièces jointes

Toutes les implémentations doivent adopter une stratégie de défense en profondeur, en mettant en œuvre des contrôles de sécurité à plusieurs niveaux.


Suivant: 6. IANA Considerations

Précédent: 4. Obsolete Syntax