「SQL Injection」の版間の差分
提供: セキュリティ
行4: | 行4: | ||
− | + | [[{{PAGENAME}}]]とは、意図しない SQL 文を入力され、データの改ざん、漏洩、破壊などを行う行為です。 | |
読み方 | 読み方 | ||
− | + | ;[[SQL Injection]]:えすきゅーえるいんじぇくしょん | |
− | ::えすきゅーえるいんじぇくしょん | + | ; SQL インジェクション: えすきゅーえるいんじぇくしょん |
__TOC__ | __TOC__ |
2013年5月6日 (月) 01:40時点における版
SQL Injectionとは、意図しない SQL 文を入力され、データの改ざん、漏洩、破壊などを行う行為です。
読み方
- SQL Injection
- えすきゅーえるいんじぇくしょん
- SQL インジェクション
- えすきゅーえるいんじぇくしょん
概要
アプリケーションが想定しない SQL 文を実行させられる。 SQL 文を挿入されることにより、データベースを不正の操作する攻撃手法のこと。
脆弱性問題の多くは、SQL Injection であるという報告があります。
被害
例
- 情報漏えい
- 情報の改ざん
- システムコマンドの実行
- 顧客個人情報の管理に、RDB が利用されることが多く、攻撃の対象となり易い。
- 確実な対応がなされてない場合、クレジットカード情報などの情報が漏洩する。
対策
- プログラム外から入力を元にSQL文を組み立てる場合は、prepqred statement / プレースホルダ を利用して下さい。
セカンドオーダーSQLインジェクション
セカンドオーダーSQLインジェクションは、データベースなどにストアされたデータを用いて、 prepared statement などを使わずに、SLQ文を組み立てたときに発生するSQL_Injectionのことです。 データベースから読み込んだデータをSQL文で利用する場合にもprepared statement が必要です。
SQL Injection のタイプ
- Union Query based
- System Stored Procedure
- End of Line Comment
- Tautology
- Illegal/Logically Incorrent Query
- SQL Injection Error Based
- SLQ Injection Blind