基本情報トップに戻る
B難易度: 標準2026年度

基本情報技術者 予想問題B 第79問

問題

Webアプリケーションで、ユーザがアップロードしたファイルを安全に扱うために行うべき対策として、最も不適切なものはどれか。

選択肢

  1. 1ア アップロード可能なファイルの拡張子を制限する
  2. 2イ アップロードされたファイルをWebルートの外に保存する
  3. 3ウ ユーザがアップロードしたファイル名をそのまま使って保存する
  4. 4エ アップロードされたファイルをウイルススキャンする

正解

3. ウ ユーザがアップロードしたファイル名をそのまま使って保存する

詳しい解説を見る

解説

正解はウ。本問は「最も不適切なもの」を選ぶ。ユーザが指定したファイル名をそのまま保存に使うと、「../」を含む名前によるディレクトリトラバーサル(意図しない場所への書込み)や、実行可能な拡張子・特殊文字を悪用した攻撃の足がかりになる。サーバ側で一意のIDやランダムな名前に付け替えて保存するのが定石である。アの拡張子制限は実行ファイルなど危険なファイルの受入れを防ぐ適切な対策、イのWebルート外への保存はアップロードされたファイルにURLで直接アクセスされ実行されることを防ぐ適切な対策、エのウイルススキャンはマルウェア混入を検出する適切な対策である。アップロード機能の防御は「拡張子検証・保存場所の隔離・ファイル名の無害化・スキャン」の多層防御で考えるのが頻出の整理である。

一問一答

科目A 180問+科目B 60問

Bの関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。