コンテンツにスキップ

MTA-STS Misconfiguration

MTA-STSの設定ミス

説明

MTA-STSは、メールサーバーがTransport Layer Security (TLS)による安全なSMTP接続を受信する能力を宣言するためのセキュリティプロトコルです。MTA-STSの設定ミスは、メールセキュリティの侵害、配信の失敗、およびダウングレード攻撃のリスクを組織にもたらす可能性があります。MTA-STSの設定において、以下の領域が重要な懸念事項となります。

1. ポリシーファイルの形式 (Policy File Format)

MTA-STSポリシーはHTTPSを介して提供され、.well-known/mta-sts.txt に配置されている必要があります。一般的な設定ミスには以下のものがあります。 * 誤ったMIMEタイプ(text/plain である必要があります) * ポリシーファイル内の無効な構文

# 正しい形式
version: STSv1
mode: enforce
max_age: 604800
mx: mail.example.com
mx: backup-mail.example.com

2. DNSレコードの設定

_mta-sts TXTレコードは正しくフォーマットされている必要があります。設定ミスには以下のものがあります。 * 無効なレコード形式 * versionフィールドの欠落または誤り

# 正しい形式
_mta-sts.example.com. IN TXT "v=STSv1; id=20230101T123456"

3. モードの選択

モード選択の誤りは、組織をリスクにさらすか、不要なメール配信の失敗を引き起こす可能性があります。 * testing: 強制なし、レポートのみ * enforce: ポリシーの厳格な強制 * none: ポリシー無効

テストを行わずに直接 enforce モードに移行すると、メール配信の停止を招く可能性があります。

4. Max Ageの設定

不適切な max_age 値は、セキュリティと運用の効率に影響を与える可能性があります。 * 低すぎる場合(例: 300秒): 過剰なDNSルックアップとポリシーの取得 * 高すぎる場合(例: 31536000秒): インシデント発生時のポリシー更新の困難さ

# 推奨範囲: 1~2週間 (604800~1209600秒)
max_age: 604800

5. MXパターンマッチング

ポリシーファイル内の誤ったMXパターンは、正規のメールが拒否される原因となります。

# 寛容すぎる設定
mx: *.example.com

# 制限が厳しすぎる設定
mx: mail1.example.com

# より良いアプローチ - 明示的なリスト化
mx: mail1.example.com
mx: mail2.example.com
mx: backup.example.com

6. HTTPS設定

MTA-STSポリシーは有効なHTTPS接続を介して提供される必要があります。一般的な問題には以下のものがあります。 * 有効期限切れのSSL証明書 * 無効な証明書チェーン * SSL設定の欠落または誤り * HTTPからHTTPSへの機能しないリダイレクト


これらの設定ミスは、メール配信の失敗、セキュリティポスチャの低下、および中間者攻撃(man-in-the-middle attacks)に対する脆弱性の増加を招く可能性があります。MTA-STSを実装する組織は、enforce モードに移行する前に testing モードで設定を慎重にテストし、MTA-STSレポートを通じてポリシーの有効性を定期的に監視する必要があります。

推奨事項

MTA-STSの設定ミスに関連するリスクを軽減するために、以下の推奨事項を検討してください。

  • テストモードから開始する: メール配信に影響を与えることなく潜在的な問題を監視するために、testing モードでMTA-STSの実装を開始します。

    version: STSv1
    mode: testing
    max_age: 86400
    mx: mail1.example.com
    
  • 段階的なMax Age値の実装: 最初は短い max_age 値を使用し、徐々に増やします。推奨値は1~2週間です。

  • ポリシーの定期的な監視:

  • ポリシーの失敗についてMTA-STSレポートデータを監視する
  • SMTP TLS接続ログを確認する
  • HTTPS証明書の有効性を定期的に検証する
  • 権威サーバー間でDNSレコードの一貫性を確認する

  • セキュリティのベストプラクティス:

  • 強固なSSL証明書(2048ビットRSA以上)を使用する
  • ポリシー提供のためにHTTP/2を有効にする
  • ポリシーホストに適切なHSTSヘッダーを実装する
  • SPF、DKIM、およびDMARCの適切なアライメントを維持する

  • 運用手順:

  • DNS変更管理プロセスにMTA-STS設定を文書化する
  • MTA-STSに関連する問題のためのインシデント対応手順を作成する
  • ポリシー設定にバックアップメールサーバーを維持する
  • まずステージング環境でポリシーの更新をテストする

  • 計画的な変更戦略:

  • testing モードでポリシーを開始する
  • max_age 値を徐々に増やす
  • 問題についてレポートデータを監視する
  • テスト期間が成功した後、enforce モードに切り替える
  • すべての変更とその影響の文書を保持する

これらの推奨事項は、メール配信の中断リスクを最小限に抑えつつ、堅牢で安全なMTA-STS実装を確保するのに役立ちます。

リンク

基準

  • 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