過去問解きまくり研究所 ホーム

令和7年度 春期 午前 問42

セキュリティ

OSコマンドインジェクション対策

Web アプリケーションソフトウェアの開発における OS コマンドインジェクション対策はどれか。

答えと解説を見る

✓ これが正解イシェルを起動できる言語機能を利用した実装を避ける。

解説

シェルを呼び出す言語機能を避けることが対策です。

OS コマンドインジェクションは、利用者から受け取った文字列が、そのまま OS への命令の一部として解釈されてしまうことで起こります。成立する場所は決まっていて、プログラムが OS のシェルを呼び出す機能を使っている箇所です。そこに命令の区切りにあたる記号が混ざると、開発者が想定していない命令が続けて実行されます。ですから対策を選ぶときの軸は、狙われる経路がどこなのかという点になります。シェルを起動できる言語機能を使わずに済ませれば、その経路そのものが無くなるので、この攻撃は成立しません。やむを得ず使う場合でも、外から受け取った値を命令の組立てに混ぜない作りにするのが基本です。攻撃の名前がどの層を指しているのかを見て、その層に効く対策を選ぶ、という読み方をします。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:令和7年度 春期 応用情報技術者試験 午前 問42

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)