メール送信での認証技術に POP before SMTP と SMTP-AUTH

前回の勉強内容

ponsuke-tarou.hatenablog.com

むかしむかし、SMTPには認証の仕組みがありませんでした。

それに伴い、大量のメールを送り付ける「迷惑メール」が流行りました。
そこでメール送信時の認証技術として、「POP before SMTP」「SMTP-AUTH」ができました。

電子メールを送信・転送するプロトコルであるSMTPには、

  1. 送信処理と転送処理を同一の仕組みで扱っている
  2. メールの投稿をするユーザを認証する仕組みがない
  3. 暗号化機能が標準で実装されていないため通信経路上を平文のメッセージが流れる

などの脆弱性があり、特に1,2の原因によって複数のメールサーバの第三者中継を利用した迷惑メールの温床となっていました。
平成18年秋期問74 SMTP-AUTH認証はどれか|応用情報技術者試験.com

POP before SMTPは、メールを送信する前にPOP3認証を行って認証できたらメールを送信する仕組みです。

SMTPに認証の仕組みはないけれど、メール受信で使うPOP3にはIDとパスワードによる認証の仕組みがあります。

https://asahi-net.jp/support/guide/mail/img/0598-1.gif
POP before SMTP方式|プロバイダ ASAHIネット

http://www.tku.ac.jp/~densan/local/mail/popbeforesmtp.gif
メールの利用:メールソフト編

利用者が別のPOP3認証された後、一定時間に限ってメールの送信を許可する仕組みです。

POP3認証をしてから数分間は、認証なしで送信し放題なのでスパムメールが送信できるかもしれません。
複数のPCで同じIPアドレスを使用するNAT環境下では認証を通った人と違う人がメールを送信できちゃいます。

SMTP-AUTHが実装されていない旧バージョンのメールサーバソフトにおいて、メール送信の際のユーザ認証を実現するために使用されていました。
平成26年秋期問21 POP before SMTP|ネットワークスペシャリスト.com

SMTP-AUTHは、メールサーバがメール送信者をIDとパスワードで認証してからメールを送信する仕組みです。

  • 別名:SMTP Authentication(認証)
  • 規定:RFC 2554

SMTP-AUTHの特徴はどれか。

  1. ISP管理下の動的IPアドレスからの電子メール送信について,管理外ネットワークのメールサーバへSMTP接続を禁止する。
  2. PCからメールサーバへの電子メール送信時に,ユーザアカウントとパスワードによる利用者認証を行う。
  3. PCからメールサーバへの電子メール送信は,POP接続で利用者認証済の場合にだけ許可する。
  4. 電子メール送信元のサーバが,送信元ドメインDNSに登録されていることを確認して,電子メールを受信する。

平成27年春期問16 SMTP-AUTHの特徴はどれか|情報処理安全確保支援士.com

https://www.tiki.ne.jp/security/img/spam_fig2.gif
SMTP認証について セキュリティ - TikiTikiインターネット

https://www.cuenote.jp/img/sr-s/feature/smtp_auth-image.gif
パスワード認証(SMTP AUTH)対応|メール配信エンジン・メールリレーサーバー Cuenote SR-S

クライアントがSMTPサーバにアクセスするときにユーザ認証を行い、許可されたユーザだけから電子メールを受け付けます。

SMTP-AUTHにおける認証の動作を説明したものはどれか。

ア. SMTPサーバは,クライアントがアクセスしてきた場合に利用者認証を行い,認証が成功したとき電子メールを受け付ける。
平成26年秋期問37 SMTP-AUTHにおける認証の動作|応用情報技術者試験.com

SMTP-AUTHの特徴はどれか。

ウ. メールクライアントからメールサーバへの電子メール送信時に,ユーザアカウントとパスワードによる利用者認証を行う。
平成28年秋期問16 SMTP-AUTHの特徴はどれか|情報処理安全確保支援士.com

認証方法には種類があります。

f:id:ponsuke_tarou:20180913234047j:plain

認証方法 方法 説明
PLAIN 暗号化しないでユーザー名/パスワードをそのまま送る仕組み パスワードが平文で流れているので危険な方式
LOGIN 標準化されておらず独自の実装をしているメールサーバーもあって互換性が低い方式 ユーザー名/パスワードはBASE64に変換される
ユーザー名/パスワードを別々に送信したり一緒に送信したりする(やり方はそれぞれ)
CRAM-MD5 パスワード文字列がそのままネットワークを流れることがないように、暗号化が施される
MD5を使用してチャレンジ-レスポンス認証を行い、パスワードそのものは暗号化された状態でも送信はしない
流れ
1. サーバーとクライアントが共通に知っているパスワードを用意
2. サーバーは、クライアントに対し任意の文字列(Challenge文字列)を送る
3. クライアントはそのChallenge文字列と共通パスワードを使い、MD5で計算処理を行う
4. 結果をサーバーに返す
5. クライアントからの返答が傍受されても、ここからパスワードを復元するのは困難
6. サーバーは、自分でも同じ処理を行ない、結果が一致すれば相手が正しくパスワードを知っているとして認証する
DIGEST-MD5 CRAM-MD5の拡張版で、辞書攻撃や総当り攻撃などに対する耐性を高めたもの

サブミッションポートを合わせて使います。

e-words.jp

スパムメール対策として,サブミッションポート(ポート番号587)を導入する目的はどれか。

エ. SMTP-AUTHを使用して,メール送信者を認証する。
平成28年春期問44 サブミッションポートの導入目的|応用情報技術者試験.com

OP25Bでポート25番を使えないようにして、送信専用ポートとしてサブミッションポート587番を使います。
送信専用となったポート587番にアクセスしたユーザをSMTP-AUTHで認証します。
ponsuke-tarou.hatenablog.com

f:id:ponsuke_tarou:20180913233607j:plain

次回の勉強内容

ponsuke-tarou.hatenablog.com