鳩丸ぐろっさり (用語集)

bakera.jp > 鳩丸ぐろっさり (用語集) > SQLインジェクション

用語「SQLインジェクション」について

SQLインジェクション (えすきゅーえるいんじぇくしょん)

話題 : セキュリティ

「ダイレクトSQLコマンドインジェクション」とも。"injection" は「注入」というような意味で、SQL データベースに対し、外部から任意のコマンドを与えることができる状態を指します。

主に、任意のデータを抽出できてしまう事が問題となります。たとえば、あるユーザが他のユーザのデータを見たり、パスワード情報を得たりできてしまう可能性があります。また、SQL の種類や設定によってはデータベースの改竄や削除ができてしまったり、さらにはサーバ内で任意のコマンドを実行する事ができてしまったりすることもあって、洒落になりません。

※ここで言う「サーバ内で任意のコマンドを実行」というのは SQL のコマンドではなくて、echo や copy などのシェルコマンドのことを言っています (OSコマンドインジェクション)。Jet で VBA のマクロが実行できる環境では、"|shell(……)" などという文字列で任意のコマンドが実行できることがあります。

このセキュリティホールの原因はクロスサイトスクリプティング脆弱性と同様、外部からの入力に対するサニタイズを怠っていることです。

人気のページ

最近の日記

関わった本など

デザイニングWebアクセシビリティ - アクセシブルな設計やコンテンツ制作のアプローチコーディングWebアクセシビリティ - WAI-ARIAで実現するマルチデバイス環境のWebアプリケーション体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践ウェブの仕事力が上がる標準ガイドブック 5 WebプログラミングWeb Site Expert #13Dreamweaver プロフェッショナル・スタイル [CS3対応] (Style for professional)友井町バスターズ (富士見ファンタジア文庫)

その他サイト