SSブログ

Eメールの脆弱性と対策 [情報セキュリティ]

SMTPの脆弱性


メールの利用に於いて、近年問題視されているのが、インターネット上を常に飛び交う膨大な量の迷惑メール(スパムメール)で、全世界で発信されるメールの80%がスパムメールといわれています。これほど横行する原因となっているのが、旧バージョンのメールサーバソフトウェアの仕様上の脆弱性です。

また、迷惑メールは宣伝や嫌がらせなどの目的で、不特定多数に大量に送信されるメール全般を指します。迷惑メールの多くが送信元を詐称して、第三者中継を許可している複数のサーバを経由して配信されるケースが多いようです。

【メールの投稿や中継が同じ仕組みで行われている】
旧バージョンのメールサーバソフトウェアでは、メール送信要求(メールの投稿)の処理も、メールサーバ間でのメール中継(転送)処理も区別なく、全て25番ポートで同様に処理していました。また、標準設定ではドメイン名などの制限がなく、だれからのメールであっても受け付けるようになっていました。

【ユーザ認証の仕組みがない】
旧バージョンのメールサーバソフトウェアでは、メール投稿時にユーザ認証する仕組みがありませんでした。そのため、送信元メールアドレスの詐称が横行し、本来受け付ける必要のない組織外からの第三者メールを、別の第三者に中継してしまいます。これを第三者中継と言います。また、第三者中継をオープンリレー、それを行うSMTPサーバをオープンリレーサーバと呼びます。

【暗号化機能が標準装備されていない】
SMTPにはメールの暗号化機能がないため、クライアントアプリケーション側で暗号化を行わない限り平文でネットワーク中を流れます。そのため、パケット盗聴によってメールの内容が漏洩したり、メール内容が改ざんされたりする可能性があります。

【メールアカウント情報が漏洩する可能性】
一般的なメール中継には、VRFYEXPNというコマンドが存在します。これらのコマンドを使用することで、そのサーバに於けるメールアカウントの有無や、メールの実際の配送先情報を確認することができてしまいます。

【BOF(バッファオーバフロー)攻撃を受ける脆弱性】
旧バージョンのメール転送機能の中には、非常に古くから使われているものがあり、BOF攻撃を受ける脆弱性など、数多くの脆弱性が報告されています。

SMTPの脆弱性への対策


【発信元メールアドレスの制限】
メール転送の設定によって、発信元メールアドレスとあて先メールアドレスのいずれにも自分のサイトのドメイン名が含まれていないメールを配信しないようにし、第三者中継を禁止します。

【SMTP-AUTH(SMTP Authentication)によるユーザ認証】
SMTPにユーザ認証機能を追加した方式で、双方がこの方式に対応している必要があります。

【POP before SMTPによるユーザ認証】
メール送信に先立ち、POP3によるユーザ認証を行い、認証に成功した場合のみ一定時間メールの送信を許可する方式です。IPアドレスのチェックのみであるため、IPアドレスの偽装によって不正なメール送信を許してしまう可能性があります。また、POPの脆弱性についても対処する必要があります。

OP25B(Outbound Port25 Blocking)によるメール投稿制限】
IPS(Internet Services Provider)のメールサーバを経由せずにインターネット方向(外向き)に出ていく25番ポートあてのパケット(SMTP)を遮断する方式です。多くのIPSで採用されています。

【IPアドレスによる送信者認証】
予め発信元ドメインのDNSサーバに正当なSMTPサーバのIPアドレス(SPFレコード)を登録しておくことで、発信元のSMTPサーバを認証する仕組みをSPF(Sender Policy Framework)と言います。
  • メールを受信したSMTPサーバは発信元のDNSサーバに問い合わせて、エンベロープ(SMTPプロトコルのMAIL FROM)のメールアドレスのドメインの正当性を検証する
  • 上記によって発信元のSMTPサーバの正当性が確認された場合のみメールを受入れ、それ以外のメールを排除する
また、SPFの機能に加えて、受信したメールのヘッダ情報(From:, Sender:など)のメールアドレスのドメインの正当性を検証する仕組みをSender ID(Sender ID Framework)と言います。

【ディジタル署名による送信者認証】
予め発信元ドメインのDNSサーバに正当なメールサーバの公開鍵を登録しておき、SMTPサーバが付したディジタル署名によって発信元のメールサーバの正当性を検証する仕組みを、DomainKeysと言います。
  • 発信元のSMTPサーバは、自身の秘密鍵を用いて送信するメールのDomainKey-Signature:ヘッダにディジタル署名を付す
  • メールを受信したSMTPサーバは、発信元のDNSサーバに問い合わせて公開鍵を入手し、DomainKey-Signature:ヘッダのディジタル署名の正当性を検証する
  • 上記によってディジタル署名の正当性が確認された場合のみメールを受入れ、それ以外のメールを排除する
また、公開鍵をメールのヘッダに添付する技術が追加されたDKIM(DmainKeys Identified Mail)という仕組みもあり、将来的にドメイン単位ではなく、ユーザ単位での署名および認証も可能となります。

名称メリットデメリット
SPF
  • 発信元情報の偽装を配送経路上で検知・排除できる
  • 導入が容易
  • 発信側の設定が不要
  • 発信側の負荷が比較的少ない
  • 発信元情報を偽装していないスパムメールは排除できない
  • DNSに未登録のサーバからのメールは正当なものでも受信できない
  • 直近のサーバを検証するため、複数サーバを経由したメールの検証が困難
Sender ID
DomainKeys
  • 発信元情報の偽装を配送経路上で検知・排除できる
  • 複数サーバを経由したメールの検証が可能
  • 双方のサーバがこの方式に対応している必要がある
  • 双方のサーバに掛かる負荷が高い
  • メーリングリストや広告が挿入されている無料メールなど、配送経路で内容が変更されるメールは検証が困難
DKIM


SMTPSによる暗号化及びユーザ認証】
SSLもしくはTLSを用いてSMTP通信を暗号化する方式に、SMTP over SSLSMTP over TLSがあります。但し、暗号化の範囲はクライアントから発信元(自分のサイト内)のメールサーバまでの通信のみで、インターネット上は平文で流れてしまいます。

この方式では、暗号化に加えて、ディジタル証明書によるユーザ認証を行うことも可能です。そのためには各ユーザがディジタル証明書を取得している必要があります。

また、後述のようにSSLとTLSでは使用するポートが異なるので注意が必要です。
  • SMTP over SSL(SMTPS):465/TCP
  • SMTP over TLS(SMTPS): 25/TCP

S/MIMEPGPによる暗号化】
これらのソフトウェアを用いてアプリケーション層でメールを暗号化し、全ての通信経路に於いてメールを秘匿化することができます。

【不要なコマンドの無効化】
メール中継で使用されるVRFYEXPNなど、不要なコマンドを無効とするように設定しておくなどの対策です。

【その他の対策】
  • メールソフトのバージョンを最新化し、パッチを適用する
  • ウィルス対策ソフトウェアを導入し、中継するメールに添付されたウィルスを駆除する
  • インターネットと内部メールサーバの間に中継専用のメールサーバ(外向けサーバ)をDMZに上に設置する
  • 外向けメールサーバと同じDMZセグメント上にゲートウェイ型ウィルス対策サーバを設置し、メールに添付された不正なコードを駆除する

POP3の脆弱性


POP3(Post Office Protocol Version3)はサーバからメールを受信するための代表的なプロトコルとして、広く使用されています。POP3では、メールの受信時に、メールサーバとの間でユーザ認証を行う仕組みになっていますが、その仕様に幾つかの脆弱性が存在します。

【認証情報が平文でネットワーク中を流れる】
標準的なPOP3では、USER/PASSコマンドによってユーザ認証を行いますが、その際にユーザIDとパスワードは平文のままネットワーク中を流れてしまうため、経路上でパケットの盗聴が行われると、ユーザの認証情報が盗まれてしまう可能性があります。そのため、インターネットからのインバウンド通信に於いてPOP3を使用することは望ましくありません。

【受信データ(メール)が平文でネットワーク中を流れる】
POP3では、認証情報だけでなく、メールの内容自体も平文のままネットワーク中を流れてしまうため、経路上でのパケット盗聴によって、メールの内容が漏洩したり、内容が改ざんされる可能性があります。

POP3の脆弱性への対策


【認証情報の秘匿化】
APOP(Authenticated Post Office Protocol)は、チャレンジレスポンス方式によるユーザ認証を行うことで、認証情報が平文のままネットワーク中を流れてしまうのを防ぐことができます。

APOPでは、サーバから送られてくる文字列(チャレンジ)とパスワードを連結した文字列からMD5を用いてメッセージダイジェストを生成し、それをレスポンスとしてサーバに返すことで認証を行います。パスワードそのものがネットワーク中を流れることはないため、認証プロセスが盗聴されても問題ありません。秘匿化されるのは認証情報のみであるため、APOPを用いてもメールそのものは、平文のままネットワーク中を流れるため注意が必要です。

POP3Sによる暗号化】
SSLもしくはTLSを用いてPOP3通信(認証情報から受信するメールまで全て)を暗号化する方式です。但し、暗号化されるのはあくまでも直接通信するPOP3サーバからクライアント間の通信のみです。POP3Sは通常のPOP3とは異なり、いずれも995/TCPポートを使用します。POP3サーバでは995/TCPポートへのアクセス要求を自身の110/TCPにポートフォワーディングします。

なお、インターネット側からPOP3Sで社内のサーバに接続して、メールを受信するためには、クライアント側の設定に加えて、995/TCPの通信を許可するようにファイアウォールに設定する必要があります。

【SSHのポートフォワーディング機能】
SSH(Secure SHell)ポートフォワーディング機能を用いて、POP3通信(認証情報から受信するメールまで全て)を暗号化する方式です。但し、POP3Sと同様、暗号化されるのは直接通信するサーバからクライアント間の通信のみなので注意が必要です。

SSHのポートフォワーディング機能とは、暗号化機能を備えていないアプリケーションの通信を、SSHが間に入って中継することによって暗号化することを指します。この機能を用いることで、POP3、FTPをはじめ、通信データの暗号化機能を備えていないアプリケーションによる通信を暗号化することが可能になります。

なお、SSHポートフォワーディング機能を用いる場合は、通常のポートとは異なり、22番ポート(TCP)を使用します。そのため、インターネット側からファイアウォールを介してSSHで社内のサーバからメールを受信するためには、SSHの設定に加えて、22/TCPの通信を許可するようにファイアウォールに設定する必要があります。




情報処理教科書 情報セキュリティスペシャリスト 2014年版 (EXAMPRESS)

情報処理教科書 情報セキュリティスペシャリスト 2014年版 (EXAMPRESS)

  • 作者: 上原 孝之
  • 出版社/メーカー: 翔泳社
  • 発売日: 2013/09/13
  • メディア: 単行本(ソフトカバー)



この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。