2 要素認証の種類: 長所と短所

2 要素認証にはどのような種類があり、どれが最も望ましい方法なのでしょうか?

前回の投稿では、2 要素認証とは何か、そしてなぜそれが必要なのかについて説明しました。一言で言えば、これは 2 つの本質的に異なる認証方法に依存するアクセス検証メカニズムです。

アカウントをより確実に保護するためには2 要素認証の使用が必須です。それぞれの認証方法は脆弱な面もありますが、複数併用すれば、アカウント乗っ取りがより困難になります。

この投稿では、利用可能な多要素認証の種類とそれぞれの長所と短所を念頭に置いて、アカウントを安全に保つために最も適切なものはどれか考えてみましょう。

SMS、電子メール、または音声通話のワンタイム コード

サインイン検証のための最も一般的な 2 要素認証メカニズムの 1 つは、ワンタイム コードです。これは通常、登録時に指定した電話番号にテキスト メッセージで送信されます。電子メールも使用できますが、あまり普及していません。主要なサービスでは、通常、登録時に指定した電話番号への音声通話のオプションも提供されています。

使われていチャネルが何であれ考え方は同じです。つまり、サービスにサインアップするときに指定した他のアカウントまたは登録されている電話番号にアクセスできるかどうかを確認するのです。携帯電話にアクセスできない人にパスワードを盗まれた場合、この保護の方法は効果的です。

最も一般的な 2 要素認証オプション: テキスト メッセージで配信されるワンタイム コード

最も一般的な 2 要素認証オプション: テキスト メッセージで配信されるワンタイム コード

ただし、この 2 要素認証メカニズムには欠点もあります。ログインの確認に電子メールが使用される場合、電子メールにログインするためのパスワードが、保護しようとしているアカウントのパスワードと同じであれば、セキュリティの強化は非常に限定的になります。アカウントのパスワードを知っている攻撃者は、必ずそのパスワードを使ってメールにサインインするのを試み、ワンタイム認証コードを取得します。

SMS であれ音声通話であれ、電話番号による認証の問題は何でしょうか。アクセスを失いやすいという点です。ユーザーが単に電話を紛失したり、番号を変更したりすることもあります。

犯罪者が、被害者のSIM カードを発行するよう、通信事業者側を説得し、それによって検証コードにアクセスすることも珍しくありません。また、テキストメッセージが傍受される事例もすでに報告されています

要約: この 2 要素認証のオプションは、十分な機能を果たしますが、最も貴重なアカウント、特にお金に関わるアカウントを保護するには、より信頼性の高いものを使用する方が良いでしょう。

2つ目の要素としてのパスワード

場合によっては、パスワードが 1 番目の要素ではなく 2 番目の要素になることもあります。これはメッセンジャーでよく行われています。デフォルトでは、サインインするには SMS からのワンタイム コードを入力するだけで十分です。通常、パスワードはオプションです。私に言わせれば、パスワードはオプションですが必要なものです。一度に多くの潜在的な問題から守ってくれるからです。

最も重要なのは、メッセンジャーサービスWhatsApp や Telegram登録時に使用した電話番号へのアクセスを失ったときの通信を保護することです。あなたが電話番号を変更し、古い SIM カードを引き出しに保管し、長期間料金を支払わなかったとします。しばらくしてオペレーターがその番号を再販売すると、新しい所有者があなたの名前でメッセンジャーにサインインできるようになります。もちろん、パスワードでさらに保護されていなければ、の話です。

パスワードを使えば、何らかの方法であなたの電話番号にアクセスしたハッカーからアカウントをある程度保護することができます。

事前に生成されたワンタイム コードのリスト

もう 1 つのオプションは、事前に生成されたワンタイム コードのリストを使うことです。銀行は取引を確認するためにそのようなリストを顧客に発行することがありますが、一部のインターネット サービス (Google など) ではアカウントの復元でこういったリストを使用できます。

これは信頼できるメカニズムだと言えます。このようなコードがユーザーに送信されることは非常にまれなので、傍受されるリスクを最小限に抑えられます。コードはランダム、つまりユニークなものなので、推測することはほとんど不可能です。

ただし、ストレージの問題があります。攻撃者が事前に生成されたコードのリストを盗むことができれば、アカウントをハイジャックしたり、そこからお金を盗んだりするのは非常に簡単です。

銀行取引の検証用に事前に生成されたワンタイム コードのリスト

銀行取引の検証用に事前に生成されたワンタイム コードのリスト

したがって、ワンタイム確認コードは StrongBox、またはそれに相当する電子的な方法で保管する必要があります。たとえば、カスペルスキー パスワードマネージャーには暗号化されたメモが含まれています。ワンタイム コードのリストをこのメモに保存すると、 カスペルスキー パスワードマネージャー自体に適切な一意のマスター パスワードを設定している限り、コードは安全に保護されます。

ただし、この認証方法で不便なのは、頻繁に検証が必要な場合、事前に生成されたコードがすぐに足りなくなってしまうことです。つまり、新しいコードをもっと生成して保存する必要が生じます。複数のアカウントを管理している場合は、リストが多くて紛らわしくなります。そのため、主要な認証方法としての事前生成コードは、必要に応じて要求があれば生成されるコードに置き換えられました。

認証アプリからのワンタイム コード

ワンタイム コードの「オンザフライ」生成は、認証システムによって行われます。現在のコードを表示する小さな画面を備えたスタンドアロン型デバイスが使われる場合もあります。このような認証システムを顧客に提供している銀行もあります。

しかし最近では、スタンドアロン型デバイスよりもスマホにダウンロードできる認証アプリの方が人気です。これについては、次のような投稿が多数あります。

この認証方法がどのように機能するのか、また、認証アプリの選択方法、認証アプリを入手した後に留意すべき点について情報をお探しの場合は、上記のリンクをご利用ください。ここでは、認証アプリは利便性とセキュリティの最適なトレードオフを提供し、認証アプリの人気がますます高まっていると簡単に述べておきます。

Google Authenticator: 最もよく知られていますが、ほかにも様々な認証アプリがあります

生体認証: 指紋、顔、声

少し前までは、ほとんどの人にとって生体認証は珍しいものでした。しかし、状況は急変し、最近ではほとんどのスマホに指紋または顔認識による認証機能が備わっています。これは驚くことではありません。

音声、虹彩、歩行、タイピングの習慣に基づく認証など、珍しい生体認証方法もあります。最も独創的なものとしては、匂いに基づく認証の研究などもあります (ただし、あまりうまく機能しません)!

生体認証には、いくつかの重大な欠点があります。まず、依存するすべての特性がユーザーの永続的な特質だということです。漏洩したパスワードは変更でき、安全のために何度でも変更することができます。しかし、登録された指紋は限られた回数しか変更できません。試行回数は文字通り両手の指で数えられるほどです。

2つ目の重要な問題は、生体認証データの機密性が非常に高いということです。変更不可能で、ユーザーを認証するだけでなく、個人を特定することもできるのです。そのゆえ、このデータの収集とサービス運営側への転送には細心の注意を払う必要があります。

生体認証データが通常、ローカル認証に使用され、どこにも送信されないようにデバイス上で保存・処理されるのはこのためです。リモート生体認証の場合、デジタル サービスはデバイス ベンダーを信頼しなくてはなりませんが、通常、これは望ましくありません。要約すれば、こういうことになります。フルバリューのリモート生体認証メカニズムを備えているのは Apple だけです。同社はソフトウェア開発からデバイスの製造に至るまで、自社のエコシステムを完全に制御しているためです。

指紋によるサインイン: 最近では一般的になっています

指紋によるサインイン: 最近では一般的

しかし、生体認証には、欠点を補う重要な利点が 1 つあります。適切に実装されれば、ユーザーの生活をもっとシンプルにできるということです。入力する必要がなく、センサーに指を押すか、カメラに顔を向けるだけで済みます。また、適切に実装されていれば、信頼性もかなり高くなります。

位置情報

もう 1 つのユーザー認証タイプは位置情報です。この方法をONにする必要はありません。デフォルトでオンになっています。そのため、通常は気付かれず、失敗した場合、つまり、予期されていない場所からサインイン試行が行われた場合にのみ警告が通知されます。そうなると、追加の検証方法の使用が必要になるかもしれません。

もちろん、位置情報は認証要素としてあまり信頼できるものではありません。まず、場所はそれほど特異的な情報ではありません。いつでも多くの人が同じ場所にいる可能性があります。また、とても簡単にごまかせます (特に適切な GPS 地理位置情報ではなく、IP ベースの位置情報の場合)。ただし、位置情報は認証要素の 1 つとして使用することができ、多くのサービスで利用されています。

ハードウェア キー FIDO U2F (別名 YubiKey)

これまで説明した認証オプションには大きな欠点が 1 つあります。ユーザーの認証は許可されても、サービスの認証が許可されないということです。そのため、MitM (中間者) 攻撃に対して脆弱になります。

攻撃者は、実際のサービスのサインイン メカニズムによく似た偽のページを作成する可能性があります。ユーザーがログイン名とパスワードを送信すると、犯罪者はすぐにそれを使って実際の Web サイトにサインインします。次にユーザーが入力を求められるのは確認コードですが、これはすぐに使われ、被害者のアカウントが乗っ取られてしまいます。

この種の脅威に対処するために、FIDO U2F キーが作成されました。最も人気の高いモデル、YubiKey の名前でも知られています。この方法の主なメリットは、登録中にサービスと U2F キーが各サービスおよび各ユーザーに固有の特定の情報を記憶するという点です。その後の認証では、特定のリクエストがキーに送信され、キーは、このリクエストが正しい場合にのみ応答します。

コミュニケーションの両側で、正当なものかどうかを把握するのです。さらに、この認証メカニズムはオープン キー暗号化に基づいているため、プロセス全体が改ざん、傍受、および同様の脅威から十分に保護されます。

FIDO U2F キー: Yubico YubiKey および Google Titan (Feitian ePass)

FIDO U2F キーのペア: Yubico YubiKey (左) と Google Titan (右)

さらに、もう 1 つメリットがあります。このテクノロジーはかなり高度で「内部」で本格的な暗号化が使用されているにもかかわらず、ユーザーから見ると、すべてが非常にシンプルなのです。キーを USB ソケットに差し込み (またはスマートフォンをかざします。このようなキーは多くの場合、 をサポートしています)、キーのセンサー パッドを指でタッチするだけで認証が完了します。

U2F ハードウェア キーの使用は、現在利用できる最も信頼性の高い認証方法であり、貴重なアカウントで推奨されるオプションです。Google では、これを活用しています。同社の全従業員は 5 年以上にわたって企業アカウントでこのキーを使っています。

FIDO パスキー: パスワードのない未来の姿

簡単ではありませんが、組織内の全従業員に認証でハードウェア キーを使ってもらうことは可能です。しかし、この方法は何百万もの通常のインターネット ユーザーには適していません。一般の人は、特別な機器にお金を払うことはおろか、2 要素認証という概念自体にイライラするでしょう。

U2F キーの作成者でもある FIDO Alliance が、パスワードの代わりに「パスキー」を使用する新たな認証標準を開発したのはこのためです。簡単に言えば、このテクノロジーは U2F キーとほぼ同じですが、認証データを保存するための特別なデバイスは必要ありません。

パスキーは基本的にどこにでも保存できます。スマートフォン、コンピュータ、ブラウザのユーザー プロファイル、または昔ながらの方法で USB キーを使うこともできます。クラウド経由で同期でき、独自のパスコード モードを選択する場合はまったく同期しないことも可能です。

多数のストレージ オプションのせいで、パスキーの安全性は明らかに若干低下します。どれだけ低下するかは、使用する機器とサービスの組み合わせによって異なります。

ただし、これを補う貴重なメリットがあります。パスキーはアカウントのパスワードを補完するものではなく、これに置き換わるものだという点です。さらに、この認証は依然として多要素です。パスキーを保存するためのデバイスを所有することに加え、このデバイスをロック解除するには生体認証 (対応可能な機器の場合) または PIN を使用してサインインを検証する必要があるためです。 ご覧のとおり、完全にパスワードレスでない場合もありますが、少なくともパスキーを使用するとパスワードの数を大幅に減らせます。

この取り組みの主要な問題は、今のところ、パッチワーク状態であることです。プラットフォームやサービスが異なれば、データ ストレージ、ユーザー認証、セキュリティ全体に対するアプローチも大きく異なります。1 つの方法だけではなく、信頼性という点で大きく異なる多数のさまざまな方法が使用されています。

そのため、パスキーに完全に切り替えるのは少し時期尚早だと言えます。ただし、試してみることはできます。少し前に、Google は Google アカウントによるパスキーの完全なサポートを発表しました。興味があれば、誰でも実際にこれがどのように機能するのか確認できます。

どの 2 要素認証方法が優れているか、およびその他の留意点

結論として、重要なポイントは次のとおりです。

  • 2023 年の現時点で、2 要素認証はもはや不可欠なものです。可能な限り使用してください。
  • 認証システムアプリは双方向認証に最適です。
  • FIDO U2F ハードウェア キー (Yubico、YubiKey、Google Titan など) はさらに良い選択肢です。特に価値の高いアカウントの保護に使用をお勧めします。
  • すでにパスキーを試すことはできますが、このテクノロジーを完全に受け入れるのは少し早いようです。
  • そのため、パスワードを慎重に使用することが依然として重要です。複雑なパスワードを使用し、複数のサービスでパスワードを再利用せず、パスワード マネージャーを使用して安全に保管してください。
  • もちろん、ほとんどの 2 要素認証方法 (U2F とパスキー以外) は、フィッシングに対して脆弱であることを忘れないでください。そのため、カスペルスキー プレミアムなど、この脅威を自動的に除去する信頼性の高いソリューションもご使用ください。

 

ヒント