【セキュリティ】メールって二要素認証じゃないんですよ

  • セキュリティ
  • MFA

Sponsored

「ログイン時にメールで認証コードが届くから、うちのサービスは二要素認証に対応してます」

こんな説明を見たことはありませんか?

実は、これは厳密には正しくありません。

メールを使った認証は「二段階認証」ではありますが、「二要素認証」ではないのです。

今回は、混同されがちなこの2つの用語の違いと、なぜメール認証が二要素認証とは言えないのかについて解説します。

二段階認証と二要素認証の違い

まず、用語の定義を整理しましょう。

二段階認証(2-Step Verification)

認証プロセスを2回行うこと。

単純に認証のステップが2つあれば二段階認証です。

例えば

  • パスワード入力 → メールで届いた認証コード入力
  • パスワード入力 → SMS認証コード入力

二要素認証(2-Factor Authentication, 2FA)

異なる要素を2つ組み合わせて認証すること。

ここでいう「要素」とは、認証の三要素を指します。

認証の三要素

セキュリティの世界では、認証要素は以下の3つに分類されます。

要素区分内容説明
知識要素(Something you know)パスワード、PIN、秘密の質問の答え「知っているもの」で認証
所持要素(Something you have)スマートフォン、セキュリティキー、ICカード「持っているもの」で認証
生体要素(Something you are)指紋、顔、虹彩、声紋「自分自身」で認証

二要素認証とは、この3つの要素のうち異なる2つを組み合わせた認証方法を指します。

なぜメール認証は二要素認証ではないのか

ここで冒頭の話に戻りましょう。 メールを使った認証プロセスを分解してみます。

  1. パスワードを入力(知識要素)
  2. メールで届いた認証コードを入力(???)

問題は2番目のステップです。

メールで届いた認証コードを入力するという行為は、一見すると「メールアカウントを持っている(所持要素)」ように見えます。

しかし、メールアカウント自体もパスワード(知識要素)で保護されているだけなら、結局のところ、

  • サービスAのパスワード(知識要素)
  • メールアカウントのパスワードで保護された認証コード(知識要素)

という構造になり、両方とも知識要素です。

これは二段階認証ではありますが、二要素認証ではありません。

メール認証のセキュリティリスク

この問題は単なる用語の違いではなく、実際のセキュリティリスクにつながります。

リスク1: パスワード漏洩の連鎖

攻撃者がメールアカウントのパスワードを入手できれば、そのメールアドレスで登録されているすべてのサービスで認証コードを受け取れてしまいます。

リスク2: メールの盗聴

メールは経路上で傍受される可能性があります。

特に暗号化されていないメールサーバーを経由する場合、認証コードが第三者に読まれるリスクがあります。

リスク3: メールアカウントの乗っ取り

メールアカウント自体が二要素認証で保護されていない場合、フィッシングやパスワードリスト攻撃によって容易に乗っ取られる可能性があります。

まとめ

「メールで認証コードが届く」というのは、確かに何もしないよりは安全です。

しかし、厳密には二要素認証とは呼べず、セキュリティ上の脆弱性も存在します。

より安全な認証を実現するためには、真の意味での二要素認証が必要です。

認証アプリ(TOTP)、セキュリティキー(FIDO2/WebAuthn)、生体認証など、異なる要素を組み合わせた認証方法が推奨されます。

今の時代、セキュリティは正しく理解していないと、一瞬で突破されかねないので怖いです。

Sponsored