Webアプリケーションソフトウェアの開発におけるOSコマンドインジェクション対策はどれか。
OSコマンドインジェクション対策はシェル起動を使わない
選択肢
- アSQL文の組立ては全てプレースホルダで実装する。
- イシェルを起動できる言語機能を利用した実装を避ける。
- ウ直接メモリにアクセスできる言語機能を利用した実装を避ける。
- エ利用者が入力したファイル名にディレクトリが含まれていないかのエラーチェックを実装する。
正解と解説
正解:イ シェルを起動できる言語機能を利用した実装を避ける。
OSコマンドインジェクションは、外部入力がOSのシェルに渡されて意図しないコマンドが実行される脆弱性である。根本的な対策は、シェルを経由して外部プログラムを起動する言語機能そのものを使わず、必要なら引数を配列で直接渡すAPIを用いることである。
選択肢ごとの解説
- アプレースホルダの使用はSQLインジェクションの対策である。
- イ正解。シェル起動系の関数を避けることがOSコマンドインジェクションの根本対策である。
- ウメモリを直接扱う機能を避けるのはバッファオーバフロー対策である。
- エファイル名にディレクトリが含まれていないか確認するのはディレクトリトラバーサル対策である。
同じ分野の他の問題
- 電子メールの送信時に、送信側メールサーバでデジタル署名を電子メールヘッダーに付与し、受信側メールサーバでそれを検証するこ…2025年度 秋期 問15
- JIS Q 27000:2019(情報セキュリティマネジメントシステム-用語)における真正性及び信頼性に対する定義a〜d…2025年度 秋期 問14
- デジタル署名が付与されたソフトウェアをインストールするときに、そのソフトウェアの発行元を確認するために使用する証明書はど…2025年度 秋期 問13
- サイバー攻撃の攻撃段階をモデル化したサイバーキルチェーンにおいて、“エクスプロイト”に該当する行為はどれか。2025年度 秋期 問12
- VPNで使用されるプロトコルであるIPsec, L2TP, TLSの、OSI基本参照モデルにおける相対的な位置関係はどれ…2025年度 春期 問15
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。