Aller au contenu

MTA-STS Misconfiguration

Mauvaise configuration MTA-STS

Description

MTA-STS est un protocole de sécurité qui permet aux serveurs de messagerie de déclarer leur capacité à recevoir des connexions SMTP sécurisées via Transport Layer Security (TLS). Des mauvaises configurations dans MTA-STS peuvent compromettre la sécurité des e-mails, entraîner des échecs de distribution et exposer les organisations à des attaques par repli (downgrade attacks). Les domaines suivants sont des préoccupations majeures dans la configuration de MTA-STS :

1. Format du fichier de politique (Policy File)

Les politiques MTA-STS doivent être servies sur HTTPS et situées à .well-known/mta-sts.txt. Les mauvaises configurations courantes incluent : * Type MIME incorrect (doit être text/plain) * Syntaxe invalide dans le fichier de politique

# Format correct
version: STSv1
mode: enforce
max_age: 604800
mx: mail.example.com
mx: backup-mail.example.com

2. Configuration de l'enregistrement DNS

L'enregistrement TXT _mta-sts doit être correctement formaté. Les mauvaises configurations incluent : * Format d'enregistrement invalide * Champ de version manquant ou incorrect

# Format correct
_mta-sts.example.com. IN TXT "v=STSv1; id=20230101T123456"

3. Sélection du mode

Une sélection de mode incorrecte peut soit exposer l'organisation à des risques, soit provoquer des échecs de distribution d'e-mails inutiles : * testing : Aucune application, seulement des rapports * enforce : Application stricte de la politique * none : Politique désactivée

Passer directement au mode enforce sans test peut entraîner des interruptions de la distribution des e-mails.

4. Paramètre d'âge maximal (Max Age)

Des valeurs max_age inappropriées peuvent avoir un impact sur la sécurité et l'efficacité opérationnelle : * Trop faible (par ex. 300 secondes) : Recherches DNS et récupérations de politique excessives * Trop élevé (par ex. 31536000 secondes) : Difficulté à mettre à jour la politique lors d'incidents

# Plage recommandée : 1 à 2 semaines (604800-1209600 secondes)
max_age: 604800

5. Correspondance de modèle MX

Des modèles MX incorrects dans le fichier de politique peuvent entraîner le rejet d'e-mails légitimes :

# Trop permissif
mx: *.example.com

# Trop restrictif
mx: mail1.example.com

# Meilleure approche - liste explicite
mx: mail1.example.com
mx: mail2.example.com
mx: backup.example.com

6. Configuration HTTPS

La politique MTA-STS doit être servie via une connexion HTTPS valide. Les problèmes courants incluent : * Certificats SSL expirés * Chaîne de certificats invalide * Configuration SSL manquante ou incorrecte * Redirection de HTTP vers HTTPS non fonctionnelle


Ces mauvaises configurations peuvent entraîner des échecs de distribution des e-mails, une réduction du niveau de sécurité et une vulnérabilité accrue aux attaques de l'homme du milieu (man-in-the-middle). Les organisations qui implémentent MTA-STS doivent tester soigneusement les configurations en mode testing avant de passer en mode enforce, et surveiller régulièrement l'efficacité de la politique grâce aux rapports MTA-STS.

Recommandation

Pour atténuer les risques associés aux mauvaises configurations de MTA-STS, considérez les recommandations suivantes :

  • Commencer par le mode de test : Commencez l'implémentation de MTA-STS en mode testing pour surveiller les problèmes potentiels sans affecter la distribution des e-mails :

    version: STSv1
    mode: testing
    max_age: 86400
    mx: mail1.example.com
    
  • Implémenter des valeurs Max Age progressives : Utilisez des valeurs max_age plus courtes au début et augmentez progressivement, la valeur recommandée est de 1 à 2 semaines.

  • Surveillance régulière de la politique :

  • Surveillez les données de rapport MTA-STS pour les échecs de politique
  • Examinez les journaux de connexion TLS SMTP
  • Vérifiez régulièrement la validité des certificats HTTPS
  • Vérifiez la cohérence des enregistrements DNS sur les serveurs faisant autorité

  • Meilleures pratiques de sécurité :

  • Utilisez des certificats SSL robustes (RSA 2048 bits ou supérieur)
  • Activez HTTP/2 pour le service de politique
  • Implémentez des en-têtes HSTS appropriés sur l'hôte de la politique
  • Maintenez un alignement correct pour SPF, DKIM et DMARC

  • Procédures opérationnelles :

  • Documentez la configuration MTA-STS dans votre processus de gestion des modifications DNS
  • Créez des procédures de réponse aux incidents pour les problèmes liés à MTA-STS
  • Maintenez des serveurs de messagerie de secours dans la configuration de la politique
  • Testez d'abord les mises à jour de politique dans un environnement de pré-production (staging)

  • Stratégie de modifications planifiées :

  • Commencez avec la politique en mode testing
  • Augmentez progressivement la valeur max_age
  • Surveillez les données de rapport pour détecter les problèmes
  • Passez en mode enforce après une période de test réussie
  • Conservez la documentation de toutes les modifications et de leurs impacts

Ces recommandations aident à garantir une implémentation MTA-STS robuste et sécurisée tout en minimisant le risque d'interruptions de la distribution des e-mails.

Liens

Normes

  • SOC2_CONTROLS:
    • CC_5_3
    • CC_6_1
    • CC_6_6
    • CC_6_7
    • CC_8_1
    • CC_9_1
  • GDPR:
    • ART_25
    • ART_32
  • OWASP_ASVS_L3:
    • V10_3_3
    • V1_1_5
  • PCI_STANDARDS:
    • REQ_1_3
    • REQ_4_1
    • REQ_12_2
  • HIPAA_CONTROLS:
    • SECURITY212
    • SECURITY213