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

パスワードと電話番号を使用した認証システム「2要素認証(2FA)」は果たして安全なのでしょうか?
今回は二要素認証の脆弱性について調べてみました。

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

二段階認証とは「二つの段階を経て認証を行う」ことを指す。異なる要素を組み合わせる場合もあるが、同じ要素である二つの情報を用いて二段階で認証する場合もある。複数の段階で認証を行うことによって、認証を破られる確率が乗算的に低くなる。その分、ユーザーによる認証の手間は増えるものの、認証強度は高まるという理屈だ。例えば、パスワードに加え、秘密の質問による認証も組み合わせれば、ブルートフォース攻撃や総当たり攻撃などによる認証突破のリスクを低減できる。

二要素認証とは「認証の三要素の中から、異なる二つの要素を組み合わせて行う認証」のことだ。一般的に採用されることが多いのは、パスワードによる知識要素と、所有要素もしくは生体要素を組み合わせるものだ。二要素認証の場合は、先述の知識要素のみの組み合わせのように、ただ単に「知っている」だけでは認証が成功せず、「持っている」ことや「身体的特徴」の提示が必要となるため、より厳密に個人を識別できる。

例えば、会員制Webサイトにログインする際に、パスワードで認証を行う。その認証後に手持ちのスマホに送付される、ワンタイムコードを入力して認証する。この場合、ログイン時のパスワードは知識要素、手持ちのスマホを用いることは所有要素に該当する。知識要素と所有要素という二つの要素を用いるため、二要素認証ということになる。

二要素認証は異なる二つの認証要素を用いるので、必然的に二段階の認証となる。このため、異なる要素を使った2回の認証は、二要素認証でもあり、二段階認証でもあるのだ。混同しやすい点ではあるが、厳密にはそれぞれ異なる認証の仕組みであることについては正しく理解しておきたい。

https://eset-info.canon-its.jp/malware_info/special/detail/210311.html

二段階認証は
第1段階にIDとパスワードで認証
第2段階で秘密の質問での認証
ログインといった流れだ。

二要素認証は
第1段階に第1段階にIDとパスワードで認証
第2段階で手持ちのスマホ宛にSMSや二要素認証用のワンタイムコード等が送られる
ログインの流れになる。

二要素認証をハッカーが回避する手段

これは一例だが下記のような手段を用いて、二要素認証を突破するとのこと。

・2FAの認証コードを総当たりで特定する
・通信の間に割り込んで認証コードを盗み取る
・認証コードをハッカーのデバイスに送るよう仕向ける
・なりすましなどの手口で認証コードを被害者から直接入手する
・2FAのセッショントークンを盗んで2FAが済んだことにしてしまう
・2FAトークンが期限切れにならないといったシステムのバグを利用する

https://gigazine.net/news/20211212-bypassing-2fa/

この記事が気に入ったらサポートをしてみませんか?