SQLインジェクション

用語の解説

SQLインジェクションとは

(SQLインジェクション)

 データベースと連動したWebサイトで、データベースへの問い合わせや操作を行なうプログラムにパラメータとしてSQL文の断片を与えることにより、データベースを改ざんしたり不正に情報を入手する攻撃。

また、そのような攻撃を許してしまうプログラムの脆弱性のこと。

 多くのWebアプリケーションではデータベースの操作にSQLという言語を利用しており、ユーザがフォームから送信した検索語などのパラメータを受け取り、これをSQL文に埋め込んでデータベースへの問い合わせや操作を行なう。 このとき、SQL文の断片として解釈できる文字列をパラメータに含めることで、プログラムが想定していないSQL文を合成し、不正にデータベースの内容を削除したり、本来アクセスできない情報を表示させたりすることができてしまう場合がある。 このような攻撃手法をSQLインジェクションという。 「インジェクション」(injection)とは「注入」という意味。

 SQLインジェクションはパラメータをSQL文に埋め込む際にきちんとチェックが行なわれていないために起こる。 パラメータ中にSQL構文やSQL文で特殊な意味を持つ文字が含まれていないか調べ、含まれていた場合はこれを削除したり別の文字列に変換(エスケープ)するといった処理を組み込む必要がある。

用語解説出典   powered by. IT用語辞典 e-Words

PRSpecial

CNET Japan

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]