基本情報技術者試験「セッション固定攻撃」の問題
あるWebアプリは、利用者が最初にアクセスした時点でセッションIDを発行し、その後ログインに成功してもセッションIDを変えずに使い続ける。攻撃者が事前に用意したセッションIDを被害者に使わせ、被害者のログイン後にそのIDで成りすます攻撃が懸念される。この攻撃を防ぐ対策として、最も適切なものはどれか。
エ認証が成立した時点で識別子を別の値に切り替え、それ以前の値は通用しないようにする。
ア識別子を画面遷移のたびにURLのパラメータとして引き回し、現在の値を都度受け渡す方式にする。
イログイン画面でより複雑なパスワードを要求し、認証に用いる秘密そのものの強度を高める。
ウ識別子の桁数を増やして取り得る値の空間を広げ、当て推量で言い当てられにくくする。
正解
エ.認証が成立した時点で識別子を別の値に切り替え、それ以前の値は通用しないようにする。
セッション固定攻撃は、攻撃者が用意したセッションIDを被害者に使わせ、被害者の認証後もそのIDが有効なままである点を突く。認証が成立した時点でセッションIDを別の値へ切り替え、それ以前の値を無効化すれば、攻撃者が仕込んだIDは認証済みセッションと結び付かず、成りすましが成立しなくなる。原因に直接対応した対策である。
?選択肢ごとの解説
エ ○セッション固定攻撃は、攻撃者が用意したセッションIDを被害者に使わせ、被害者の認証後もそのIDが有効なままである点を突く。認証が成立した時点でセッションIDを別の値へ切り替え、それ以前の値を無効化すれば、攻撃者が仕込んだIDは認証済みセッションと結び付かず、成りすましが成立しなくなる。原因に直接対応した対策である。
ア ×識別子をURLに含めて引き回すのはむしろ漏えいや固定を助長し、攻撃者が任意のIDを被害者に踏ませやすくなるため逆効果である。
イ ×パスワード強度の向上は認証情報の推測対策であり、認証情報を知らなくても既知のセッションIDを再利用するセッション固定攻撃は防げない。
ウ ×識別子の桁数拡大は値の当て推量(セッションIDの予測)への対策であり、攻撃者が自ら用意したIDを使わせる固定攻撃には効果がない。
✎くわしく
セッション固定攻撃は『認証の前後でセッションIDが変わらない』ことを悪用する。対策の要諦は権限状態が変化する契機(ログイン)でのID再発行であり、セッションIDの推測困難化(長さ・乱数性)とは別軸の問題である点を区別する必要がある。
✓本番での押さえどころ
試験のコツ
『攻撃者が用意したIDを被害者に使わせる』はセッション固定攻撃。対策はログイン成功時のセッションID再発行と旧ID無効化。
覚え方
固定攻撃は『仕込んだ合鍵が認証後も使える』。ログインしたら鍵を作り直す(再発行)。
よくある誤り
セッションIDの長さや乱数性(推測対策)と、固定攻撃(既知IDの再利用)への対策を混同する。固定攻撃にはログイン時の再発行が要である。
情報セキュリティの他の問題
A社の経理担当者が、取引先を装ったメールに添付された請求書ファイルを業務PCで開いたところ、見慣れない画面が一瞬表示されて消…B社のWebサービスで、複数の利用者アカウントに対し正しいIDとパスワードの組合せによるログインが短時間に外部から成立する事…C社では、退職予定者や異動者のアカウント権限の見直しが滞り、業務上不要になった共有フォルダへのアクセス権が残り続けている。情…D社のファイルサーバがランサムウェアに感染し、業務ファイルが暗号化された。D社は日次でバックアップを取得しているが、バックア…E社の従業員に、取引先銀行を名乗る『口座情報の更新が必要』というメールが届いた。本文中のリンク先URLにアクセスすると、銀行…F社は社外の従業員が、カフェなどの公衆無線LANを利用して社内システムへアクセスしている。通信内容が経路上で第三者に盗聴・改…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-b-sec-0100