質問 > その他 > バインド機構を用いたSQL文のSQLインジェクション |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ibu |
投稿日時: 2012/1/24 17:28
対応状況: −−−
|
新米 登録日: 2012/1/24 居住地: 東京都 投稿: 2 |
バインド機構を用いたSQL文のSQLインジェクション ------------------------------------------------------------------------------------------
[EC-CUBE] EC-CUBE2.11.4正式版 [レンタルサーバ] さくらインターネット [OS] Linux CentOS 5 [PHP] PHP5.3.6 [データベース] MySQL 5.0.87 [WEBサーバ] Apache 2.2 [ブラウザ] Chrome ------------------------------------------------------------------------------------------ 初めて投稿させていただきます。 現在SQLインジェクション対策をテストしているのですが、 EC-CUBE2.11.4とEC-CUBE2.4.4の両バージョンにおいて、 下記のようなスクリプトによって、バインド機構を用いたSQL文を 作成したときに、$_GET値をエスケープ処理しないスクリプトには、 脆弱性は存在するのでしょうか? おそらく存在するものと思うのですが、 具体的にどのような攻撃をされる可能性が挙げられるでしょうか? 今後の開発のために認識しておきたいのですが、 ご教授いただければ幸いです。 宜しくお願いいたします。 作成スクリプト $objQuery = new SC_Query(); $review_id = $_GET["review_id"]; $reviewer_name = $objQuery->get('dtb_review', 'reviewer_name', 'review_id = ? ', $review_id); |
AMUAMU |
投稿日時: 2012/1/25 1:56
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: バインド機構を用いたSQL文のSQLインジェクション 引用:
下記のようなスクリプトによって、バインド機構を用いたSQL文を作成したときに、$_GET値をエスケープ処理しないスクリプトには、脆弱性は存在するのでしょうか? 挙げられている例のように適切なスクリプトを組んだ場合、少なくとも標準状態であれば脆弱性は存在しません。 ただし似たような記述でも、ちょっとした記述上の問題で脆弱性を生む場合もありますので注意が必要です。 またSQLに頼っていると詳しいエラーが捕捉できませんので、事前にチェックをする方が好ましいのは言うまでもありません。 また標準状態のEC-CUBEではUTF-8で全てを動作させていますので対象外ですが、標準とは異なりUTF-8以外の文字エンコードでPHPやDBを動作させると脆弱性が生じる可能性があります。(一回だけUTF-8ではないエンコードで動作させる変なカスタマイズを見たことがありますので、念のため) 詳しい理由などは専門書や専門サイトなどで確認されることをお勧めします。
|
ibu |
投稿日時: 2012/1/25 15:26
対応状況: −−−
|
新米 登録日: 2012/1/24 居住地: 東京都 投稿: 2 |
Re: バインド機構を用いたSQL文のSQLインジェクション AMUAMU 様
ご返信いただき、誠にありがとうございます。 標準状態では脆弱性は存在しないということで、 承知いたしました。 文字コードなどによっても、脆弱性が生じることがあるのですね。 勉強になります。 この度は、ご教授いただき誠にありがとうございます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |