SQLインジェクション

【問】SQLインジェクションとは?

解答を見る
入力フィールドに不正なSQL文を入力し、データベースから情報を取得する攻撃手法。

【問】Webアプリケーションの実装における対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
  • バインド機構(バインドメカニズム)の利用
    あらかじめSQL文の雛形を用意しておき、後で値を設定する箇所(プレースホルダ)に値(バインド値)を割り当てるだけで、SQL文を実行できる機能。バインド値は、SQLの一部として解釈されない。
  • メタキャラクタのエスケープ処理
    メタキャラクタとは、特別な意味を持たせた文字のこと。エスケープ処理は、メタキャラクタを別の文字に置換すること。

【問】Webアプリケーションの実装以外の対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
データベースのアカウントのもつデータベースアクセス権限を必要最小限にする。

クロスサイトスクリプティング(XSS)

【問】クロスサイトスクリプティングとは?

解答を見る
ユーザが、攻撃者の用意したサイトのリンクをクリックすると、ユーザに悪意あるスクリプトが仕込まれた後、XSS脆弱性のある攻撃対象のサイトにアクセスさせ、利用者のブラウザ上で悪意あるスクリプトを実行せしめる攻撃。

スクリプトによっては、cookieの盗難やページの改ざんといった被害が起こり得る。
閲覧者からの入力値を受け取り、動的に画面を生成するサイトは、XSSの攻撃対象となります。

サイトをまたがって(クロスサイト)スクリプト処理(スクリプティング)を行うことから、このように呼ばれている。


【問】クロスサイトスクリプティングの対策は?
解答を見る
メタキャラクタのエスケープ処理(エスケープ処理で無害化することを「サニタイジング」という)

クロスサイトリクエストフォージェリ(CSRF)

【問】クロスサイトリクエストフォージェリとは?

解答を見る
利用者のブラウザによって、利用者の意図しないリクエストがWebサーバに送信され、ログイン中の利用者にだけ許可されたWebサイトの機能が勝手に実行される脆弱性を悪用した攻撃。

ディレクトリトラバーサル

【問】ディレクトリトラバーサルとは?

解答を見る
パス文字列の処理が不適切な場合、攻撃者がファイル名の入力を伴うアプリケーションに対して、上位のディレクトリを意味する文字列を使って、非公開のファイルにアクセスする攻撃。

【問】Webアプリケーションの実装における対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
パス名やファイル名をパラメタとして受け取らないようにする。

【問】Webアプリケーションの実装以外の対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
重要なファイルを公開領域に置かない。

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

【問】OSコマンドインジェクションとは?

解答を見る
OSのコマンドが不正に実行される脆弱性。

【問】Webアプリケーションの実装における対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
Webアプリケーション中でシェルを起動しない。

【問】Webアプリケーションの実装以外の対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
chroot環境でWebサーバを実行する。

HTTPヘッダインジェクション

【問】HTTPヘッダインジェクションとは?

解答を見る
外部から渡されたパラメタをレスポンスのHTTPヘッダに反映する場合、不正なヘッダを生成されたり、レスポンスボディに不正な文字列を挿入されたりする脆弱性。

セッションハイジャック

【問】Webアプリケーションの実装における対策は?(SC H25 秋 午前Ⅱ 問15 改題)

解答を見る
セッションIDを複雑なものにする。

【問】Webアプリケーションの実装以外の対策は?(SC H25 秋 午前Ⅱ 問15 改題)
解答を見る
SSLによって通信内容を秘匿する。