100辞書・辞典一括検索

JLogos

57

SQLインジェクション
【エスキューエルインジェクション】


SQL injection

 悪意あるユーザーが、SQLというデータベース照会言語を用いて、Webサービスで提供されるデータベースに不正なアクセスを試みる手口。
 例えばキーワードとして名前を入力し、住所や電話番号を検索するというWebサービスでは、通常は以下のようなやり取りが行われる。
 まずユーザーが入力欄に名前(キーワード)を入力して「検索」ボタンを押す。すると、Webブラウザーは入力されたキーワードWebサーバー上で動作するWebアプリに送る。Webアプリは、受け取ったキーワードを基にデータベースを検索するためのSQL文を作る。つまり、Webアプリデータベースを検索する命令(SQL文)を、キーワードが入力されるたびに作成する。データベースはこの命令(SQL文)に従ってデータを検索し、結果をWebアプリに返す。
 SQLインジェクションでは、悪意あるユーザーがキーワードSQL文そのものを入力する。入力データをきちんとチェックしないWebアプリの場合、入力された不正なSQL文をそのまま実行してしまい、例えば全てのデータを消してしまうなどの操作が可能となる。データベースを直接操作できると、このほかにも情報を取り出したり、ウイルスダウンロードさせる仕掛けを埋め込んだりできる。

【参照語】
SQL
脆弱性




日経BP社
「パソコン用語辞典」
JLogosID : 8528936