SQLインジェクション

SEのための情報セキュリティ対策
情報セキュリティ用語集 情報セキュリティ分野での専門用語について解説
Home> 情報セキュリティ用語集 >

SQLインジェクション

SQLインジェクション
スポンサードリンク



SQLインジェクションについて例を用いて解説します。

ユーザIDとパスワードの入力欄を設けてあって入力データなどのチェックに不備があるサイトの動作について見てみます。

正常な入力データの場合
id :test
password :test123
select * from test_table where id='test' and password="tset123";

不正な入力データの場合
id: test
password: ' OR '1'='1'
select * from test_table where id='test' and password='' OR '1'='1';

不正な入力データの場合は、OR条件で'1'='1'があるためpasswordなしでtest_tableのすべてのレコードが参照出来ます。このようにWEBアプリケーションが「'」、「;」、「%」、「+」などSQL文として意味を持つ文字をそのまま実行してしまう場合には、悪意のあるユーザによって簡単に不正なSQL文が生成されてしまいます。

攻撃対象にならないためにも、バインド機構の使用サニタイジングを実施する必要があります。

WEBアプリケーション攻撃とはでもSQLインジェクションについて紹介しています。


スポンサードリンク



免責事項 / サイトマップ / リンク /  問い合わせ
Copyright (C) 2008  SEのための情報セキュリティ対策  All rights reserved





スポンサードリンク