FE SUBJECT B
基本情報技術者 科目Bの問題解説
問題
A社の経費精算システムでは,ログイン済み利用者が承認ボタンを押すと承認IDを含むリクエストが送信される。CookieにはSameSite属性を設定しているが,古いブラウザや連携画面もあり,外部サイトから意図しない承認リクエストを送られるリスクが残っている。
最も適切な対策はどれか。
- ア 承認ボタンの色を目立つ色に変える。
- イ 承認リクエストに,利用者セッションにひも付いた推測困難なCSRFトークンを含め,サーバ側で検証する。
- ウ 承認IDをランダム文字列に変更するだけにする。
- エ Cookieの有効期限を短くし,トークン検証は行わない。
- オ 承認完了後にメール通知するだけにする。
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目B範囲
正解と解説
正解:承認リクエストに,利用者セッションにひも付いた推測困難なCSRFトークンを含め,サーバ側で検証する。
正解:イ
CSRFでは正規Cookie付きのリクエストが利用者の意図と無関係に送られる。重要な状態変更操作では,セッションにひも付いたトークンをサーバ側で検証する必要がある。
IDのランダム化や通知は補助策であり,リクエストが利用者の画面から発行されたかを確認できない。
Hardでの見抜き方:SameSiteなどブラウザ側の仕組みがあっても,重要な状態変更操作ではサーバ側でトークンを検証するのが安全である。通知やIDランダム化は,利用者が意図した操作かどうかを保証しない。
この問題について
公開問題・サンプル問題のセキュリティ事例形式(A社シナリオ+もっともらしい誤答)を参考にした独自問題です。本文・選択肢・解説は新規作成しています。
公式試験問題、公開問題、市販教材、外部問題サイトの問題文を転載・改題したものではありません。