用語の別名 | SQL-injection、SQL挿入攻撃 |
ジャンル | [攻撃] |
内容 | データベースを利用しているアプリケーションに対する攻撃の一種で、システムが意図しないクエリーをアプリケーションから投げさせることによってデータベースを不正に操作しようとする攻撃を指します。データベースやアプリケーションの種類に関係なく、ユーザからの入力を受けてアプリケーションがデータベースにクエリーを発行するシステムは全て該当します。 ユーザの入力が変数などを通じてクエリーに挿入される場合、ユーザが故意にクエリーを無効化あるいは別のクエリーに置き換えるような特殊な文字列を挿入すると、データベースへのアクセス権限を持つアプリケーションのプロセスがユーザの代わりに不正なクエリーを投げてしまい、攻撃が成功してしまいます。ユーザの入力がデータベースに渡らないようなシステムであればこのような攻撃は成立しませんが、動的なコンテンツを提供するサービスではユーザからの操作は必須であり、回避できません。これを防ぐには、アプリケーション側でユーザから渡された情報を直接クエリーに載せないような仕組みにして、入力内容を厳密にチェックしてサニタイズすることが重要です。 |
ネットワークセキュリティ関係者の部屋 > gLOSSARY > SQLインジェクション