Webアプリケーションソフトウェアの開発におけるOSコマンドインジェクション対策はどれか。
| ア | SQL文の組立てはプレースホルダで実装する。 |
| イ | シェルを起動できる言語機能を利用した実装を避ける。 |
| ウ | 直接メモリにアクセスできる言語機能を利用した実装を避ける。 |
| エ | 利用者が入力したファイル名にディレクトリが含まれていないかのエラーチェックを実装する。 |
答え イ
【解説】
| ア | SQL文の組立てはプレースホルダで実装するのは、SQLインジェクション対策です。(×) |
| イ | シェルを起動できる言語機能を利用した実装を避けるのは、OSコマンドインジェクション対策です。(〇) |
| ウ | 直接メモリにアクセスできる言語機能を利用した実装を避けるのは、バッファオーバーフロー対策です。(×) |
| エ | 利用者が入力したファイル名にディレクトリが含まれていないかのエラーチェックを実装するのは、ディレクトリトラバーサル対策です。(×) |
【キーワード】
・OSコマンドインジェクション