パスワードだけではもう不十分
これは以前から言われていることで、それは本当です。パスワードだけでは、アカウントを保護するのに弱い方法です。
人々はサイト間で再利用します。推測しやすいものを選びます。データ侵害では何百万もの認証情報が一度に漏洩します。そしてフィッシング攻撃は、人々に自らパスワードを渡すように騙します。
二要素認証(2FA)は、優れたパスワードでも侵害される可能性があるために存在します。アイデアはシンプルです:アクセスを許可する前に、2つ目の証明を要求します。
知っているもの、持っているもの
認証要素は3つのカテゴリーに分類されます:
- 知っているもの - パスワード、PIN、セキュリティ質問の答え
- 持っているもの - スマートフォン、ハードウェアキー、認証アプリ
- あなた自身 - 指紋、顔認証、その他の生体情報
標準的なログインは1つの要素を使用します:あなたのパスワード(知っているもの)。二要素認証は2つ目を追加します。通常は持っているものです。したがって、誰かがパスワードを盗んだとしても、物理的なデバイスを持っていなければログインできません。
これが全体のコンセプトです。2つの独立した証明、2つの独立したカテゴリーから。
2FAの種類
すべての2番目の要素が同じように機能するわけではありません。最も一般的なものを紹介します。
SMSコード
サービスが数字のコードを含むテキストメッセージをあなたのスマートフォンに送信します。それを入力してログインを完了します。これは最も広く利用可能な2FAの形態で、設定が最も簡単です。スマートフォン番号さえあればよいからです。
欠点はSMSには既知のセキュリティ上の弱点があることです。テキストメッセージは傍受でき、攻撃者はSIMスワッピングで電話番号を乗っ取ることができます。2FAなしよりはましですが、より強力な選択肢があります。
認証アプリ(TOTP)
Google Authenticator、Authy、1Passwordなどのアプリは、あなたのデバイスで一時的なコードを生成します。これらのコードは30秒ごとに変わり、共有された秘密と現在時刻を使って計算されます。テキストメッセージも、ネットワーク接続も不要です。
これはTOTP、つまりTime-Based One-Time Passwordと呼ばれます。SMSより安全です。なぜなら、コードはネットワークを経由して送信されることがないからです。ローカルで生成され、ローカルで使用されます。仕組みの詳細について知りたい場合は、TOTPとは?に詳細な説明があります。
ハードウェアセキュリティキー
YubiKeyやGoogle Titan Keyなどの物理的デバイスは、コンピューターのUSBポートに接続されます(またはNFC、Bluetoothで接続)。ログイン時にプロンプトが表示されたら、キーをタップして認証します。
ハードウェアキーは最も強力な2FAの形態とされています。暗号化プロトコルを使用してキーがウェブサイトと直接通信するため、フィッシングに耐性があります。攻撃者がそれを使うには、物理的にキーを盗む必要があります。
トレードオフはコスト(通常1キーあたり25〜50ドル)と、デバイスを持ち歩く必要があることです。
プッシュ通知
一部のサービスは、ログイン試行を承認または拒否するよう求めるプッシュ通知をスマートフォンに送信します。「承認」をタップすればログインできます。Microsoft AuthenticatorやDuoがこの手法を使用しています。
便利ですが、プッシュベースの2FAは「MFA疲労」攻撃の標的になっています。これは攻撃者がユーザーが通知を止めるために承認するまで、繰り返しログイン試行をトリガーするものです。一部の実装では、これを防ぐため画面に表示される数字を入力する必要があるようになりました。
なぜ2FAが重要か
数字が明確な理由を示しています。Googleは報告しました。任意の形態の2FAを追加すると、自動化されたボット攻撃の100%、一括フィッシング攻撃の99%、標的型攻撃の66%を阻止します。Microsoftも同様の結果を発見しました:2FAを有効にしたアカウントが侵害される可能性は99.9%低くなります。
これらはセキュリティベンダーのマーケティング主張ではありません。実際のアカウントにおける数十億のログイン試行のデータに基づいています。
すべてのアカウントに強力で固有のパスワードを使用しているとしても(そしてほとんどの人はそうではありません)、2FAは安全網を提供します。パスワードは侵害で表示される可能性があります。キーロガーでキャプチャされる可能性があります。フィッシングサイトを通じて漏洩する可能性があります。2番目の要素は攻撃者が実際に侵入するのを阻止します。
設定方法
2FAの設定はサービスによって若干異なりますが、一般的なプロセスは同じです:
- アカウントのセキュリティ設定に移動します
- 「二要素認証」「2段階認証」「多要素認証」を探します
- 方法を選択します(認証アプリを推奨)
- 認証アプリを使用する場合、サービスが表示するQRコードをスキャンします
- アプリからのコードを入力して動作を確認します
- サービスが提供するバックアップコードを、パスワードとは別の安全な場所に保存します
全体で、アカウントあたり約1分かかります。
優先すべきアカウント
おそらく何十ものオンラインアカウントを持っているでしょう。最も重要なものから始めましょう:
- メール(誰かがメールに侵入すると、他のすべてのパスワードをリセットできます)
- 銀行と金融サービス
- クラウドストレージ(Google Drive、iCloud、Dropbox)
- ソーシャルメディアアカウント
- パスワードマネージャー(対応していれば。していて当然です)
一般的な懸念
「スマートフォンをなくしたらどうするの?」 これが最も一般的な心配です。それがバックアップコードの用途です。2FAを設定すると、サービスは一度だけ使用できる復旧コードを提供します。印刷するか、安全な場所に保存してください。一部の認証アプリはクラウドバックアップも提供しています。
「面倒じゃない?」 少しは。ログインに10秒追加でかかります。多くのサービスはデバイスを30日間記憶するため、毎回コードを入力する必要はありません。不便さは、侵害されたアカウントを処理するのに比べれば些細なものです。
「私は標的にされるほど重要じゃない。」 ほとんどのアカウント侵害は標的型ではありません。自動化されています。攻撃者は漏洩した認証情報リストを購入し、何千ものサイトで試行します。2FAはこれらの一括攻撃を完全に阻止します。
始めましょう
これを後回しにしていた場合は、今すぐ1つのアカウントを選んでください。メールから始めるのが良いでしょう。そして2FAを有効にしてください。プロセスは迅速で、リスクを実質的に減らせます。
設定前にTOTPコードの生成を試したい場合は、2fa.zipで実験できます。ブラウザ内で動作し、サーバーに何も保存せず、認証コードの仕組みを感じることができます。