今回は、電子メールの脆弱性についてとなりますが、
そもそもメールの仕組みについてから説明していきます。
電子メールの仕組み
【前提用語】メールの各機能について
MUA(Mail User Agent)
・・・メールの発信、受信するプログラム ex)Outlook,ThunderBird
MSA(Message Submission Agent)
・・・メールの送信時に接続、ユーザ認証を行うプログラム ex)sendmail,postfix
MTA(Mail Transfer Agent)
・・・メールを中継(転送)するプログラム ex)sendmail,postfix
MDA(Mail Delivery Agent)
・・・メールボックスへ配信するプログラム(MTAが兼ねる場合もあり) ex)mail.local,Qpopper
MRA(Mail Retrieval Agent)
・・・メールを取り出す際のプログラム(MTAが兼ねる場合もあり) ex)Qpopper
① メール発信者がメーラーによってメールを作成し、内部のメールサーバへSMTPで発信する。
② 内部メールサーバのMSAにて、メール送信者の認証を行い、MTAにメールの送信を依頼する。
③ MTAは外部メールサーバにSMTPで中継する。アンチウイルス、アンチスパムなどのサーバを経由することも多い。
④ 送信側ドメインの外部メールサーバ(MTA)から、受信側ドメインの外部メールサーバ(MTA)へSMTPでメールを中継する。
⑤ 受信側ドメインの外部メールサーバ(MTA)から、内部メールサーバへSMTPでメールを中継する。
⑥ 内部メールサーバ(MTA)はMDAにメールを送る。
⑦ 内部メールサーバのMDAは受け取ったメールを宛先のメールボックスへ送る。
⑧ メール受信者のメーラー(MUA)にてPOP3でメール受信要求を行うと、内部メールサーバのMRAにて受信者のユーザ認証を行う。ユーザ認証が成功すれば、メールボックスからメール受信者のメーラー(MUA)にメールが送られる。
⑨ メール受信者はメーラー(MUA)にて受信されたメールを読むことができるようになる。
参照:
http://ascii.jp/elem/000/000/431/431263/
SMTPの脆弱性と対策
SMTPの脆弱性を用いて、主に2つのリスクがあります。
・スパムメールの中継とされる可能性
・平文でのメール送信により盗聴される可能性
後者の方はそのままの意味ですが、前者について少し詳しく説明しておきます。
スパムメールの中継とされる可能性とは
スパムメールの中継をしてしまうことを第三者中継(オープンリレー)と呼びます。
本来、メールの中継を行うMTAという仕組みは、自分宛の受信メールまたは自分発信の送信メールのみを中継すれば良いはずです。
しかし、SMTPの脆弱性をつくことにより、全く関係ない発信元(第三者)のメールも中継してしまうことがあります。
それを悪用し、発信元メールアドレスを偽装したスパムメールを送りつけるということにつながっています。
スパムメールの中継とされる可能性の対策
「MTAの設定」
MTAの設定で、自分のドメインが入っていないメールを中継しないという設定ができます。
「SMTP-AUTHの使用」
SMTP-AUTH(TCP番ポート)によりユーザ名とパスワードでユーザ認証を行ってから、メールの中継を行うこともできます。
「POP before SMTPの使用」
POP before SMTPとはメールの送信前に、POP3によるユーザ認証を行ってから、メール送信を許可する方式です。
平文でのメール送信により盗聴される可能性の対策
「SMTP over SSL/TLS(SMTPS)」
SSL,TLSを用いてSMTP通信を暗号化します。ただし、暗号化されるのはメーラー(MUA)から発信元のメールサーバまでです。
その後のインターネット内では平文になります。
SMTP over SSL(SMTPS):TCP465番ポート
SMTP over TLS(SMTPS):TCP25番ポート
「S/MIME,PGP等の使用」
S/MIME,PGP等のメール暗号化用のソフトウェアを使用しすることで、すべてのメール通信を暗号化することができます。
POP3の脆弱性と対策
こちらのプロトコルにおいても、通信が平文で行われるため、
メールサーバ間のユーザ認証やメールデータを盗聴される可能性があります。
そのため、データの暗号化を行い、機密性を高めます。
暗号化の方法として以下のような種類があります。
「APOP(Authenticated Post Office Protocol)」
ユーザ認証情報をMD5を用いて暗号化します。ただし、メールデータは平文のままです。
「POP3 over SSL/TLS(POP3S)」
SSL,TLSを用いてPOP3通信を暗号化します。これはどちらもTCP995番ポートを使用します。ユーザ認証情報、メールデータともに暗号化しますが、暗号化されるのはPOP3サーバからクライアント(MUA)間の通信のみです。
「SSHのポートフォワーディング機能」
これは暗号化できないプロトコルの間に入って、SSHが暗号化したデータを送ることができる機能です。これもユーザ認証情報、メールデータともに暗号化しますが、暗号化されるのはPOP3サーバからクライアント(MUA)間の通信のみです。
コメント