応用情報技術者試験 応用情報技術者試験 令和7年度春期 午前42: Web アプリケーションソフトウェアの開発における OS コマンドインジェクション対策はどれか。

応用情報技術者試験 令和7年度春期 午前
Q 4242 / 80
Web アプリケーションソフトウェアの開発における OS コマンドインジェクション対策はどれか。
この問の正解率:48.88%(802件)

解説

応用情報技術者試験 令和7年度春期 午前 問42「Web アプリケーションソフトウェアの開発における OS コマンドインジェクショ…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約49%です。

正解

. シェルを起動できる言語機能を利用した実装を避ける。

正答率 48.9%(802人中 392人が正解)

問題の解説

攻撃手法ごとに有効な対策が異なることを問う問題。OS コマンドインジェクションは,利用者入力を OS のシェル(コマンドインタプリタ)に渡す処理に攻撃者が不正なコマンド文字列を紛れ込ませ,サーバ上で任意の OS コマンドを実行させる攻撃である。そもそもシェルを起動する言語機能(system 関数など)を使わない実装にすれば攻撃が成立しないため,最も直接的な対策となり,正解はイ。

選択肢ごとの解説

  • プレースホルダ(バインド機構)の利用は SQL インジェクション対策であり,OS コマンドインジェクション対策ではないので誤り。
  • 正しい。シェルを起動できる言語機能を使わなければ,外部から渡された文字列が OS コマンドとして解釈される余地がなくなり,OS コマンドインジェクションを防げる。
  • メモリに直接アクセスする言語機能を避けるのはバッファオーバフローなどメモリ破壊系の脆弱性対策であり,OS コマンドインジェクション対策ではないので誤り。
  • 入力ファイル名にディレクトリが含まれないか確認するのはディレクトリトラバーサル(パス名パラメータの未チェック)対策であり,OS コマンドインジェクション対策ではないので誤り。

応用情報技術者試験 令和7年度春期 午前 の過去問一覧に戻る・問42

応用情報技術者試験 の iOS アプリ版

アプリ版なら、よりスムーズに動作し、
スワイプで問題遷移ができます。

応用情報技術者試験 合格.dev を App Store でダウンロード