午前I問題
チャレンジレスポンス認証に関する記述のうち、適切なものはどれか。
ア)サーバが生成した乱数(チャレンジ)に対し、クライアントが秘密鍵で署名した値を返送し、サーバは対応する公開鍵で検証する イ)チャレンジは毎回同じ固定値を使用するため、サーバ側の実装が単純になる ウ)チャレンジレスポンス方式では、チャレンジ自体を暗号化して送信しなければリプレイ攻撃を防げない エ)HTTP DIGEST認証はチャレンジレスポンス方式の一種であり、サーバはユーザのパスワードを平文で保持する必要がある
午前I の解答・解説を見る
正解: ア
解説:
- ア)正解。チャレンジレスポンス認証では、サーバが毎回異なる乱数(ノンス)をチャレンジとして送り、クライアントは自身の秘密鍵でそれに署名して返します。サーバは公開鍵で署名を検証することで、秘密鍵を所持するクライアントだけが応答できたことを確認します。
- イ)不正解。チャレンジが毎回同じ固定値であればリプレイ攻撃が成立してしまいます。チャレンジは使い捨ての乱数(ノンス)でなければなりません。
- ウ)不正解。チャレンジは秘密である必要はなく、平文で送信しても問題ありません。重要なのはチャレンジの一回性(毎回ランダム)であり、秘密鍵が外部に露出しないことです。
- エ)不正解。HTTP DIGEST認証ではサーバは
H(username:realm:password)のハッシュ値(または HA1)を保持します。パスワードの平文保持は不要であり、平文保持が必要なのはBASIC認証の誤解です。
午前II問題
FIDO2/WebAuthn のアサーション(認証)フローに関する記述のうち、正しいものはどれか。
ア)クライアントは認証時に、登録フェーズで生成した秘密鍵(プライベートキー)をサーバに送信して本人確認を行う イ)RPID(Relying Party ID)はWebAuthn RPのドメインを表し、ブラウザが認証要求元のオリジンと照合するため、フィッシングサイトからの不正認証要求を防ぐ ウ)authenticatorData に含まれる署名カウンタは、オーセンティケータのクローニング検出に使用できるが、WebAuthn仕様上の検証は任意である エ)クロスデバイスでパスキーを同期する仕組みはFIDO2仕様本体で規定されており、iCloud KeychainやGoogleパスワードマネージャーに依存せず実現できる
午前II の解答・解説を見る
正解: イ
解説:
- ア)不正解。WebAuthnでは秘密鍵はデバイス(またはプラットフォームのパスキー保管庫)の外へ送出されません。クライアントはチャレンジをハッシュ化した値に秘密鍵で署名した「アサーション」を返し、サーバは登録済みの公開鍵で署名を検証します。
- イ)正解。RPID はRP(Relying Party)のドメインを特定します。オーセンティケータは署名生成時にRPIDをAuthenticatorDataに含め、ブラウザはアサーション要求元のオリジンとRPIDが一致するか確認します。フィッシングサイトは別ドメインのため、RPIDが一致せず認証要求が拒否されます。これがFIDO2のフィッシング耐性の根拠です。
- ウ)不正解。署名カウンタによるクローニング検出は仕様上の機能ですが、プラットフォームパスキー(マルチデバイス認証器)では同期のため同一カウンタが複数デバイスに存在し得るため、検証の厳格度はRPの実装判断に委ねられています。ただし「任意」という表現は誤りで、RP はカウンタを検証することが推奨されています(SHOULD)。
- エ)不正解。クロスデバイスのパスキー同期はFIDO2仕様の外の実装です。Apple iCloud Keychain、Google Password Manager、1Passwordなどのプラットフォーム・パスワードマネージャーがそれぞれ独自の同期機構を提供しており、標準仕様では規定されていません。
午後問題
中堅製造業A社(従業員1,200名)は、社内ポータルとクラウドSaaS(Microsoft 365、Salesforce)へのアクセス認証として従来のID・パスワード方式を採用していた。昨年、外部からのスピアフィッシングメール攻撃により営業部員15名のパスワードが窃取され、攻撃者がSalesforceにログインして顧客情報3,000件が流出する事故が発生した。
セキュリティ部門は再発防止策としてFIDO2/パスキーを用いたパスワードレス認証への移行を計画した。認証基盤にはMicrosoft Entra IDを採用し、以下のフェーズで展開する。
- フェーズ1(〜3ヶ月):一般社員向けにWindows Hello for Business(プラットフォームパスキー)を登録
- フェーズ2(〜6ヶ月):モバイルデバイス(iOS/Android)にプラットフォームパスキーを展開
- フェーズ3(〜9ヶ月):システム管理者・経営幹部など特権ユーザー(30名)にFIDOセキュリティキー(ハードウェアトークン)を追加配布
- 認証器の登録・失効はヘルプデスクが管理し、本人確認は対面または身分証確認で実施
設問1
FIDO2認証がフィッシング攻撃に耐性を持つ技術的な理由を説明しなさい。また、FIDO2導入後も残存するフィッシングリスクを1つ挙げ、その対策を述べなさい。(200字程度)
設問1の解答・解説を見る
正解例: FIDO2では認証器がRPID(Relying Party ID)と要求元オリジンを照合するため、フィッシングサイト(異なるドメイン)への署名生成を拒否し、認証情報が漏洩しない。しかし認証成功後のセッショントークンをリバースプロキシで中継・奪取するリアルタイムフィッシング(AiTM攻撃)のリスクは残存する。対策として、Entra IDの条件付きアクセスでセッションにデバイス証明書やIPアドレスをバインドし、トークン奪取後の不正利用を防ぐ。
解説・採点基準(計15点):
| 採点項目 | キーワード | 配点 |
|---|---|---|
| RPID照合によるフィッシング耐性の説明 | RPID・オリジン照合・異ドメイン拒否 | 6点 |
| 残存リスクの特定 | AiTM(Adversary-in-the-Middle)・リバースプロキシ・セッション奪取・RTBFのいずれか | 4点 |
| 残存リスクへの対策 | セッションバインド・条件付きアクセス・継続的評価(CAE)・デバイス準拠チェックのいずれか | 5点 |
部分点: 残存リスクの特定のみ正解→4点。RPID説明のみ正解→6点。
設問2
フェーズ3で特権ユーザーにFIDOセキュリティキー(ハードウェアトークン)を配布する理由を、プラットフォームパスキーとの違いに触れながら述べなさい。また、セキュリティキーの紛失・盗難が発生した際に行うべき対応手順を3ステップで答えなさい。(150字程度)
設問2の解答・解説を見る
正解例: プラットフォームパスキーは秘密鍵がクラウドに同期されるため、クラウドアカウントの侵害で秘密鍵が漏洩するリスクがある。FIDOセキュリティキーはデバイス内に秘密鍵を封じ込め(ローミングオーセンティケータ)、同期しないため特権操作に適する。紛失・盗難時の対応:①利用者はヘルプデスクへ即時報告、②管理者はEntra ID上で該当セキュリティキーの登録を失効(revoke)、③対面での本人確認後に新しいキーを発行・再登録する。
解説・採点基準(計15点):
| 採点項目 | キーワード | 配点 |
|---|---|---|
| プラットフォームパスキーの同期リスク説明 | クラウド同期・秘密鍵漏洩リスク | 4点 |
| ローミングオーセンティケータの採用理由 | 非同期・デバイス内封じ込め・特権操作 | 4点 |
| 紛失・盗難対応3ステップ(順序含む) | 報告→失効(revoke)→本人確認・再発行 | 7点 |
部分点: 3ステップのうち2ステップ正解→4点。失効(revoke)のみ言及→2点。
重要キーワード
| 用語 | 説明 |
|---|---|
| FIDO2・WebAuthn・パスキー | FIDO Allianceが策定したパスワードレス認証規格。FIDO2はWebAuthn(W3C仕様)とCTAP2(デバイス通信プロトコル)から構成される。パスキーはFIDO2認証情報の利用者向け名称で、デバイス間同期が可能なマルチデバイスクレデンシャルを指す |
| RPID(Relying Party ID) | WebAuthnにおけるRP(認証要求を受け付けるサービス)のドメイン識別子。登録・認証時にオリジンと照合され、異なるドメインからの不正な認証要求を防ぐ。フィッシング耐性の中核となる仕組み |
| ローミングオーセンティケータ | USBセキュリティキーやNFCカードなど、デバイスをまたいで利用できるFIDO2認証器。秘密鍵はデバイス内のセキュアエレメントに格納され、クラウドに同期されない。CISAではハードウェアトークンをAAL3相当として推奨 |
| AiTM(Adversary-in-the-Middle)攻撃 | フィッシングサイトをリバースプロキシとして機能させ、被害者とサービスの通信を中継することで認証後のセッショントークンを奪取する攻撃手法。FIDO2導入後も残存する脅威 |
| 多要素認証(MFA) | 知識・所持・生体の3要素から2つ以上を組み合わせる認証方式。FIDO2はデバイス所持+生体/PINを組み合わせるため、フィッシング耐性のある強力なMFAとして機能する |
| 条件付きアクセス(Conditional Access) | Microsoft Entra IDなどのIAMで利用できるポリシー機能。ユーザー・デバイス・場所・リスクスコアなどの条件に基づきアクセスを制御し、AiTMで奪取されたトークンのリスクを低減できる |
まとめ
- 午前I視点: チャレンジレスポンス認証の本質は「秘密をネットワークに流さず、秘密の所持を証明する」こと。チャレンジの一回性(ノンス)がリプレイ攻撃を防ぐ。
- 午前II視点: FIDO2のフィッシング耐性はRPIDとオリジンの照合機構に基づく。プラットフォームパスキーの同期の仕組みはFIDO2仕様外(OS/プラットフォーム実装)であることも頻出。
- 午後視点: 特権ユーザーにはプラットフォームパスキーでなくローミングオーセンティケータを選択する理由(同期リスク排除)を論理的に説明できることが重要。紛失・盗難対応は「報告→失効→本人確認→再発行」の順序が採点ポイント。