lu100101の日記

勉強の記録

5. 電子メールのセキュリティ

電子メールエージェント

  • MUA
    • Mail User Agent
    • メールクライアントのソフトウェア
  • MTA
    • Mail Transfer Agent
    • メール転送のソフトウェア
    • MUAでSMTP25番ポートを指定したとき
  • MSA
    • Mail Submission Agent
    • メール転送のソフトウェア
    • MUAでSMTP587番ポートを指定したとき
  • MDA
    • Mail Delivery Agent
    • メール配送のソフトウェア
    • メールボックスにメールを格納するソフトウェア
  • MRA
    • Mail Retrieval Agent
    • メール取出ソフトウェア
    • MUAがメールボックスからメールを取り出すときに通信するソフトウェア

電子メールに関連するプロトコル

  • SMTP
    • 25番
    • OP25Bでブロックしている場合はサブミッションポート587番
    • 送信時に認証機能を使うのがSMTP-AUTH
  • POP3
    • 110番
    • メールサーバに蓄積されたメールを取りに行く
    • USER/PASSで認証
    • パスワードを暗号化したい場合はAPOP
  • IMAP4
    • 143番
    • POP3との相違点はメールサーバでメールを蓄積管理すること」
    • クライアントにダウンロードしなくてよいので、モバイル端末の盗難や紛失対策に有効
  • MIME
    • 各国言語、テキストデータ、画像データなどの複数種類のデータを一つにまとめて電子メールで送受信するための仕様
  • S/MIME
    • MIME仕様にセキュリティ機能を組み込んだもの
    • 暗号化されるのは本文だけでヘッダ(FROM、TO、SUBJECT等)はされない
    • CA発行の電子証明書が必要
  • BASE64
    • 最も広く利用されているエンコード方式
    • バイナリデータを64種類(A-Z、a-z、0-9、+、/)の文字列に変換して送信し、受信側で戻す
    • 暗号化、圧縮はしない
    • データ量は1.3倍に増える

メールヘッダの解析

  • Return-path
    • エラーが発生した場合に送り返すアドレス
    • 送信者が自由に任意のアドレスを設定可能
  • Received
    • メールを中継したサーバの情報
    • メールが配送された経路がわかる
    • 下の方が送信元に近く、上の方が受信先に近い
    • from:この前に中継したサーバのホスト情報
    • by:中継したサーバのホスト情報(ドメイン名、ホスト名)
    • for:最終宛先。通常はToと同一  
    • 上位に記載されているものほど信用性が高い
    • fromの()内とby以後は詐称困難
  • From
    • メール送信者のメールアドレス
    • 詐称可能
  • To
    • メールの宛先アドレス
  • Subject(詐称可能)
    • メールの件名

迷惑メールへの対応

  • SMTPのオープンリレー(第三者リレー)の禁止
    • 外部から来た外部宛のメールを中継しないように設定する
  • 送信者認証
    • SMTP-AUTH
      • メールサーバとクライアントソフトの双方が対応している必要がある
      • 送信者認証時のパスワードを暗号化できる
    • POPbeforeSMTP
      • POPで受信者がログインしたときにユーザの正当性が認証されることを利用して、その後一定の時間に同一のIPアドレスからだけSMTP接続を受け付ける
      • クライアントには変更がなく容易に導入できるので現在はSMTP-AUTHに移行してきている
  • OP25B
    • Outbound Port 25 Blocking
    • ISPが自分の管理課にある契約者から外部に迷惑メールを送信できないようにする対策
    • ISPのメールサーバ経由でしか送信できないようにする
    • メールサーバで大量のメールの発信を制限したり、大量の同時セッションを一時的に拒否したりする
    • 外部ネットワークとの接続点で、送信元のIPアドレスが動的IPアドレスで25番ポートのメールをブロックする
    • 正当な理由で外部のメールサーバを利用したいときはサブミッションポート587やSMTP over SSL(445)を使う。いずれもSMTP-AUTHを使うことが前提
  • IP25B
    • Inbound Port 25 Blocking
    • 受信メールをブロックする
    • ブロック対象の判別はOP25Bと同じ
  • 送信ドメイン認証
    • 送信者のドメインを検証し、迷惑メールを見極める仕組み
    • 送信側のDNSサーバに対応する設定をする
    • 受信側はメールサーバに対応する設定をする
    • 受信側メールサーバが、メールを受け取ったら送信側のDNSサーバに問い合わせて当該メールの正当性を検証する
      • Pass:認証処理検証
      • Fail:認証情報を公開しているが認証に失敗
      • None:認証情報を公開しない
    • SPF
      • Sender Policy Framework
      • IPアドレス方式
      • 送信側DNSサーバにSPFレコードを登録
      • 受信側メールサーバは、受信したメールのドメイン名を基に、送信元のDNSサーバに問い合わせ、送信元IPアドレスSPFレコードのIPアドレスを比較
      • SPFに対応している別のメールサーバが間に入り、MAIL FROMコマンドのドメイン名を変えずにメールをそのまま転送する場合、認証が失敗する
    • DKIM
      • DomainKeys Identified Mail
      • ディジタル署名方式
      • 送信側DNSサーバに公開鍵を登録
      • 送信側で、ディジタル署名を作成し、DKIM-Signatureヘッダに付与してメール送信
      • 受信側メールサーバは送信元のDNSサーバから公開鍵を入手して署名を検証
      • 双方のサーバとも負荷が大きい
    • DMARK
      • Domain-based Message Authentication, Reporting & Conformance
      • SPFDKIMによる認証を補強する技術
      • 認証結果を受けて、そのメールをどう取り扱うかをDNSでポリシとして公開しておくことで送信者側で決めることができる
      • 処理結果を集計レポートとして送信者側が受け取ることもできる
    • これらはなりすまし対策であり、迷惑メールの送信者がドメインを正当に取得した場合は防げない

情報漏洩防止システム

  • メール誤送信防止システムの設置場所の例
    • アプライアンス製品(専用サーバ):メールサーバとインターネットとの間
    • ソフトウェア製品:メールサーバと同一サーバにインストール
    • プロバイダのサービスを利用する
  • 転送禁止機能
    • 受信メールの転送を禁止する
  • 暗号化機能
    • メール本文や添付ファイルを暗号化
  • キーワードフィルタリング機能
    • メール本文や添付ファイルの文字列を検索し、あらかじめ設定されている送信禁止キーワードが含まれていると自動的に送信をストップする
    • 故意にキーワードを避けたり当て字にすることですり抜けられる
    • キーワードを増やしすぎるとFalse Negativeが増える
    • 画像データにも無力
  • 管理者へのコピー送信機能
    • あらかじめ設定した上司にもコピーを自動送信する
    • 牽制効果になる
    • 承認を求める場合には、上司が過負荷にならないか、上司が不在の場合にどう処理するかに配慮する
  • 送信保留機能
    • 一定時間送信を保留する
    • 送信者本人や第三者に確認メールを転送し、返信があって初めて送信する
  • BCCへの強制書き換え機能
    • 一定数以上のメールアドレスをCCに記述していたら、送信時にBCCに変える
  • メールアーカイブシステム
    • 日々大量に発生するメールを圧縮し暗号化して安全に保管する
    • 独自の検索エンジンで高速検索できる