このブログはこちらの英語ブログの機械翻訳です。
ワンタイムパスワードは、ユーザーの身元を確認するために1回のみ使用できる安全な認証コードであり、有効期限が短いため、複数アカウントでのパスワードの再利用のリスクを排除します。
重要なポイント
- 多層防御:ワンタイムパスワード(OTP)は、標準的なログイン認証情報に加えて、固有の一時的なコードを要求することで、多要素認証(MFA)の一部としてセキュリティを強化できます。
- 時間依存のセキュリティ:ほとんどの実装では、30〜60秒間のみ有効なコードを生成する時間ベースのアルゴリズム(TOTP)を使用しており、潜在的な攻撃の機会を減らしています。
- 最新の認証の状況:認証アプリは現在OTP配信の標準ですが、組織はセキュリティを強化するためにWebAuthnとパスキーをますます採用しています。
- 実装の柔軟性: OTP配信方法には、ハードウェアトークン、モバイルアプリ、ブラウザベースのソリューションが含まれており、セキュリティ要件とユーザーエクスペリエンス(UX)のバランスを取っています。
- SMSの脆弱性:SMSで配信されるOTPは、SIMスワップ、フィッシング攻撃、およびネットワークレベルの傍受に対して脆弱です。
動的認証の威力を理解する
ワンタイムパスワード(OTP)は、1回のログイン試行またはトランザクションのためにユーザーを認証する動的に生成された文字列または数値です。システムは、時間ベースのデータ、デバイスの指紋、またはトランザクションのコンテキストなど、さまざまなセキュリティ要素を考慮した高度なアルゴリズムを使用して、ワンタイムパスワードを生成します。大規模組織でのエンタープライズOTPの展開から、リモートワークフォース向けのOTPセキュリティまで、ワンタイムパスワードは柔軟な実装オプションを提供します。
OTPは、二要素認証(2FA/MFA)の広く使用されているコンポーネントであり、従来のパスワードに加えて、追加のセキュリティレイヤーを提供します。組織は通常、パスワードレス認証フローや、リスクレベルに基づいてセキュリティ要件を調整するアダプティブ認証システムの一部としてそれらを使用します。
認証システムは通常、次の3つの独立した要素に依存しています。
- 知識:ユーザーが知っている情報(パスワード、PIN)
- 所持: ユーザーが所持しているもの(認証アプリ、FIDO2セキュリティキー、モバイルデバイス(OTPを含む))
- 生体認証: ユーザーの固有の特性(指紋、顔認識、行動パターン、継続的な認証シグナル)
セキュリティチームは通常、既存のユーザーデバイスを活用するために、トークンやプッシュ通知を通じて OTP を配布します。
OTP認証はどのように機能しますか?
OTP認証プロセスでは、ワンタイムパスワードが作成され、OTPアプリと認証サーバー間の共有シークレットを使用して検証されます。一部のシステムでは、代替の配信方法として、電子メールで送信される秘密のリンクも使用される場合があります。
時間ベースのワンタイムパスワード(TOTP)
Time-based OTP (TOTP) は最も広く使用されている OTP のタイプで、デバイスと認証サーバー間の同期されたデジタルロックのように機能します。Time-based OTP の機能:
- 共有シークレット:デバイスとサーバーは共有の暗号化キーを保持します
- 時刻同期: 両当事者は正確なタイムスタンプを使用します
- アルゴリズム処理: システムは SHA-1 または SHA-256 ハッシュ関数を適用して、シークレットと現在の時刻を組み合わせます
- コード生成: 一時的な(通常は6桁の)コードを生成します
- 検証期間: コードは30〜60秒間有効で、サーバーは通常、わずかなクロック同期の問題を考慮して、隣接する時間枠からのコードを受け入れます
HMAC-based one-time password (HOTP)
最新の実装では TOTP ほど一般的ではありませんが、HOTP は時間の代わりに増分カウンターを使用します。HMAC-based OTP の機能:
- 共有シークレット:デバイスとサーバーは共有の暗号化キーを保持します
- カウンターの同期:両当事者は、インクリメントするカウンター値を追跡します
- アルゴリズム処理:システムは、HMAC-SHA-1ハッシュ関数を適用して、シークレットとカウンターを結合します
- コード生成: 一時的な(通常は6桁の)コードを生成します
- 先読みウィンドウ:サーバーは、見逃したコードを処理し、同期の問題を防ぐためのウィンドウを維持します
ワンタイムパスワードの例:
- 銀行および金融取引:オンラインバンキングログイン、電信送金、支払い認証、取引承認
- エンタープライズセキュリティとVPNアクセス:リモートアクセスシステム、VPN、特権アカウント、内部ネットワーク
- Eコマースとオンライン決済: チェックアウト時の認証、カード非提示取引、デジタルウォレット、SCAコンプライアンス
- アカウントの回復とパスワードのリセット: パスワードの回復、アカウントの確認、Identityの確認
- 政府および市民サービス:税務ポータル、社会保障アカウント、公共サービスプラットフォーム
- ヘルスケアおよび医療記録へのアクセス:電子医療記録、患者ポータル、処方箋システム
ワンタイムパスワードと永続パスワードを比較する方法を理解することは、組織が情報に基づいたセキュリティの意思決定を行うのに役立ちます。
ワンタイムパスワード(OTP)のメリット
OTPは、強力な認証を実装する組織にいくつかの利点をもたらします:
動的な生成によるセキュリティの強化
従来のパスワードとは異なり、OTP(ワンタイムパスワード)はリプレイ攻撃に耐性があり、送信中に認証データを傍受する可能性のある悪意のある攻撃者から保護します。ただし、攻撃者がフィッシングを通じてOTP(ワンタイムパスワード)を傍受した場合、OTP(ワンタイムパスワード)は本質的にリアルタイムの中間者(MITM)攻撃を防ぐことはできません。
OTPの追加のセキュリティ上の利点:
- 高度なアルゴリズム保護:OTP は「真の」ランダム性ではなく、暗号論的擬似乱数ジェネレーター (PRNG) を使用します。これにより、安全な PRNG と暗号化アルゴリズム (HMAC-SHA1、HMAC-SHA256 など) の組み合わせからセキュリティが提供されます。これらのアルゴリズムは通常、タイムスタンプやデバイス識別子などの複数の動的要素を統合します。
- 時間制限付きの公開: 有効期間が数秒に制限されているため、攻撃者は盗まれた認証情報を悪用できる時間が限られています。この制約は、自動化された攻撃ツールに対して特に効果的です。
- パスワードの再利用の軽減:クレデンシャルスタッフィング攻撃が複数のサービスで侵害されたパスワードを公開した場合でも、OTPは追加の認証要素を要求することにより、アカウントの乗っ取りを防ぐことができます。
- レート制限と適応型セキュリティ:多くのOTP実装では、検証ウィンドウを動的に調整したり、失敗した試行パターンに基づいて段階的な遅延を実装したりするなど、適応型セキュリティ対策が使用されています。
コンプライアンスとリスク管理
によるとNIST Special Publication 800-63B Digital Identity Guidelines、OTPは、MFAシステムの一部として実装された場合、組織がAuthenticator Assurance Level 2(AAL2)の要件を満たすのに役立ちます。ただし、OTPだけではAAL3を満たすことはできません。AAL3には、ハードウェアベースの認証が必要です。
主なコンプライアンス上の利点:
- 規制コンプライアンスのためのMFA要件への対応
- ゼロトラストアーキテクチャの実装のサポート
- 強力な認証を必要とするGDPR、PSD2、およびその他の規制への準拠の促進
- 認証試行の監査証跡の提供
統合と採用のメリット
OTPは保護を提供しますが、その成功はシームレスな実装とユーザーの採用にかかっています。
OTPを組み込んだ認証ソリューションは、以下を提供します。
- 合理化された統合: 組織は、OATH TOTP/HOTP などの標準化されたプロトコルを通じて、ワンタイムパスワードジェネレーター APIとOTP 検証サービスを活用できます。これらは、モバイルおよび Web アプリケーション向けの REST API および SDK を提供します。
- ユーザーフレンドリーな実装:スマートフォンと認証アプリはユビキタスであり、ほとんどのユーザーにとってOTPの導入は馴染みのあるものになっています。
- 柔軟なデプロイメントオプション:セキュリティ要件とユーザーの好みに基づいて、 組織は複数の配信方法から選択し、段階的なロールアウトを許可し、さまざまなユーザーの技術的な快適レベルに対応できます。
- 費用対効果の高いセキュリティ:従来のハードウェアトークンや複雑な生体認証システムと比較して、OTPソリューションは、多くの場合、MFAを実装するためのより費用対効果の高いアプローチを提供します。多くのソリューションは、ユーザーが既に所有しているデバイスを活用しているため、導入コストを削減できます。
OTPのタイプと配信方法
ハードトークン
OTP生成専用の物理デバイス:
セキュリティキー(FIDO2)
セキュリティキーは高度な機能を提供します:
- 生体認証の組み込みサポート
- モバイルデバイスの互換性のためのNFC機能
- マルチプロトコルサポート(FIDO2、U2F、TOTP)
- 物理的な存在の確認
スマートカード
エンタープライズグレードのスマートカードは以下を提供します。
- 物理アクセス制御システムとの統合
- 複数の認証方法のサポート
- オフライン認証機能
- ハードウェアセキュリティモジュールの保護
ソフトトークン
ソフトウェアベースのOTPソリューション:
モバイル認証アプリ
Authenticatorアプリは、SIMスワップのリスクがあるためSMSよりも推奨され、強化されたセキュリティ機能を提供します。
- エンドツーエンドで暗号化されたプッシュ通知
- オフラインコード生成機能
- 安全なバックアップとリカバリのオプション
- クロスプラットフォームの同期
- アプリアクセス用の生体認証
ブラウザベースのソリューション
ブラウザ認証の進展:
- 最新のブラウザーでのネイティブWebAuthnサポート
- 生体認証統合
- 追加のハードウェア要件はありません
- フィッシング耐性設計
実装のベストプラクティス
セキュリティ要件
コード生成
- 最小6桁のコード(高セキュリティアプリケーションには8桁を推奨)
- 暗号論的乱数生成
- リスク評価に基づいた30〜120秒の有効期間
- 生成および検証の試行におけるレート制限
配信方法のセキュリティ
- エンドツーエンドの暗号化
- 複数の配信チャネルのサポート
- セキュアなチャネル検証
- 異常なパターンの自動監視
エンタープライズ実装
OTPを大規模に展開する組織は、以下を検討する必要があります。
高可用性
- 負荷分散された認証サーバー
- 地理的分布
- リアルタイムの監視とアラート
- 自動フェイルオーバー メカニズム
統合アーキテクチャ
OTPとActive DirectoryまたはAzure AD/AWS IAMなどのクラウドサービスとの統合を計画する場合、組織は以下を検討する必要があります。
- Identityプロバイダーの互換性
- APIゲートウェイセキュリティコントロール
- ディレクトリサービス同期
- 包括的な監査ロギング
認証方法の比較
どの認証方法が最適ですか?
すべての認証方法が同じというわけではありません。MFAの実装はパスワードのみを使用するよりも優れていますが、各認証要素は異なる程度の保護を提供します。
|
認証方法 |
セキュリティレベル |
UX |
費用 |
実装の複雑さ |
|
SMS OTP |
低 |
高 |
低 |
低 |
|
ハードウェア セキュリティ キー |
高 |
Medium |
高 |
Medium |
|
認証アプリ |
高 |
高 |
低 |
Medium |
|
WebAuthn/パスキー |
非常に高い |
高 |
低 |
Medium |
|
TOTPアプリ |
高 |
高 |
低 |
低 |
|
通知をプッシュ |
高 |
非常に高い |
Medium |
Medium |
SMS認証:セキュリティコストを伴う利便性
SMSはその使いやすさから、OTP配信に広く利用されている方法ですが、重大なセキュリティ上の脆弱性があります。
- SIMスワップとソーシャルエンジニアリング:脅威アクターは、通信事業者を説得して、電話番号を制御している新しいSIMカードに転送させ、SMSベースのOTPへのアクセスをすべて取得できます。この攻撃ベクトルはますます巧妙になっており、悪意のあるアクターが通信事業者のカスタマーサービスプロセスを悪用しています。
- ウェブポータル経由のアカウント乗っ取り:多くのキャリアは、ユーザーがSMSメッセージを表示できるウェブポータルを提供しています。攻撃者が弱いパスワードまたはクレデンシャルスタッフィング攻撃によってポータルアカウントを侵害した場合、物理デバイスを制御しなくてもOTPコードを傍受できます。
- デバイス同期のリスク:複数のデバイス間でメッセージを同期すると、攻撃対象領域が拡大します。ユーザーがSMSメッセージをタブレット、コンピュータ、またはクラウドサービスに転送または同期すると、追加のエンドポイントごとに潜在的な脆弱性が発生します。
- フィッシングの脆弱性:ソーシャルエンジニアリング攻撃は、ユーザーをだましてプライマリクレデンシャルと SMS OTP を明らかにさせることができます。最新の方法とは異なり、SMS OTP はリアルタイムの adversary-in-the-middle(AITM)フィッシング攻撃から保護しません。
ハードウェアセキュリティキー:トレードオフによる強力なセキュリティ
ハードウェアセキュリティキーは、SMSベースのOTPよりも大幅なセキュリティアップグレードであり、いくつかの利点があります。
- フィッシング耐性:セキュリティキーは、デバイスが認証データを送信しないことを保証する非対称暗号化アルゴリズムを使用します
- オフライン機能: 多くのトークンは、ネットワーク接続なしでコードを生成できます
- 物理的なセキュリティ: ハードウェア制御により、別の保護レイヤーが導入されます
ただし、ハードウェアトークンには追加の課題があります:
- デバイス管理:配布、交換、および復旧の手順が必要です
- コストに関する考慮事項:ハードウェアの購入はユーザーごとに費用を追加します
- 互換性の問題:特にモバイル環境では、すべてのデバイスが物理セキュリティキーをサポートしているわけではありません。
- UX:追加のハードウェアは、ユーザーが持ち運びおよび管理するのに不便です
認証アプリ:最新の標準
モバイル認証アプリは、ほとんどの組織にとって最適なセキュリティとユーザビリティのバランスを提供し、好ましいソリューションとして登場しました。
- デバイスバインディング:システムは、認証を電話番号ではなく特定のデバイスに結び付け、SIMスワップのリスクを排除します
- オフライン操作:アプリはインターネット接続なしでコードを生成できます
- 強化されたセキュリティ:有効期間の短いコードと暗号化されたプッシュ通知により、悪用リスクが軽減されます
- 生体認証の統合:指紋認証と顔認識のサポートにより、セキュリティレイヤーが追加されます
- 費用対効果:多くのプロバイダーは、無料のソリューションを提供するか、既存のIdentityプラットフォームに含めています。
WebAuthn:認証の未来
認証テクノロジーの最新の進化を代表するWebAuthnは、独自の利点を提供します。
- ネイティブブラウザのサポート:一般的なブラウザ(Chrome、Safari、Firefox、Edge)内での組み込みサポート
- プラットフォームの統合:TouchID、FaceID、Windows Helloなどの既存のデバイスセキュリティ機能
- フィッシング対策:公開鍵暗号により、認証試行の傍受またはリプレイが事実上不可能になります
- 合理化されたUX:ユーザーは、使い慣れた生体認証ジェスチャを使用してIDを確認できます
- FIDO2コンプライアンス:強力な認証のための業界標準に準拠
実装のためのベストプラクティス
認証方法を選択する際、組織は次のことを行う必要があります。
- 認証方法の階層化:認証アプリをプライマリとして使用し、WebAuthnをサポートされている場所で使用する
- バックアップを維持する:追加のセキュリティ制御を備えたフォールバックオプションとしてSMSを維持する
- コンテキストを検討する:リスクレベルとユーザーのニーズに基づいてセキュリティ要件を調整する
- 進化の計画: 新しい認証規格に対応するようにシステムを設計する
組織は、パスワードレス認証に移行すると同時に、OTP(ワンタイムパスワード)を二次的なセキュリティレイヤーとして維持する必要があります。最新の認証戦略には、パスキー、WebAuthn、およびフィッシング耐性MFAなどの新しい標準を組み込む必要があります。
FAQ
Q: OTPパスワードはどこにありますか?
A: OTPは、ユーザーがログインまたはIdentityを確認するときに、認証アプリ、SMSメッセージ、またはメールで配信されます。(コードは、生成プロセス外で保存またはアクセスできません。)
Q:ワンタイムパスワードはどのようなものですか?
A:ほとんどのOTPは6桁の数字コードですが、一部のシステムでは4〜8桁の数字または英数字の組み合わせを使用しています。認証アプリでは、これらのコードは通常30〜60秒ごとに更新されます。
Q: ワンタイムパスワードは完全に安全ですか?
A:OTPはセキュリティを強化しますが、万全ではありません。ベストプラクティスは次のとおりです。
- SMSの代わりにAuthenticatorアプリを使用する
- OTPコードを共有しない
- 認証アプリの生体認証保護を有効にする
- リスクの高いトランザクションのために追加のセキュリティレイヤーを実装する
安全でシームレスな認証
Oktaで認証とIdentity管理を簡素化します。