FE SUBJECT B
基本情報技術者 科目Bの問題解説
問題
A社の文書管理システムでは,文書IDを指定するとPDFをダウンロードできる。ログイン済みかどうかは確認しているが,その文書を閲覧できる部署・役職かどうかは画面のメニュー表示だけで制御していた。利用者がURLの文書IDを変更すると,他部署の文書を取得できた。
対策として,最も適切なものはどれか。
- ア 文書IDを長いランダム文字列に変更し,サーバ側の権限確認は省略する。
- イ メニューに表示しなければ十分である。
- ウ PDFを返すAPIごとに,ログイン利用者が対象文書を閲覧できる権限を持つかサーバ側で確認する。
- エ 文書一覧画面の検索欄を削除する。
- オ PDFファイル名に部署名を入れない。
出典:オリジナル問題|参考範囲:試験要綱Ver.5.5 / FEシラバスVer.9.2 科目B範囲
正解と解説
正解:PDFを返すAPIごとに,ログイン利用者が対象文書を閲覧できる権限を持つかサーバ側で確認する。
正解:ウ
認証済みであることと,対象文書を閲覧してよいことは別である。URLやAPIを直接呼ばれても防げるよう,サーバ側でオブジェクト単位の認可確認を行う必要がある。
IDを推測しにくくするだけでは,権限確認の代わりにはならない。
Hardでの見抜き方:ログイン確認は認証であり,対象データを見てよいかは認可である。メニュー非表示やID難読化は直接API呼出しを防げないため,サーバ側のオブジェクト単位認可が必要になる。
追加の確認:一見有効そうな補助策と、原因を直接取り除く対策を区別する。運用上の注意喚起や表示変更だけでは、攻撃経路や権限不備そのものは残るため、根本原因に対応する選択肢を選ぶ。
この問題について
公開問題・サンプル問題のセキュリティ事例形式(A社シナリオ+もっともらしい誤答)を参考にした独自問題です。本文・選択肢・解説は新規作成しています。
公式試験問題、公開問題、市販教材、外部問題サイトの問題文を転載・改題したものではありません。