重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

複文によるSQLインジェクションを防ぐには、ユーザー入力値から「;(コロン)」を除去すればOKでしょうか?

ご存知の方がいらっしゃいましたら教えてください。
よろしくお願いいたします。

A 回答 (1件)

たとえば、



SELECT column1, column2 FROM table WHERE id = '(ここに値を入力)'
という文があったとします
この場合

(ここに値を入力) の部分に

' OR 1=1 OR id ='

と入力されたらどうなりますでしょうか

SELECT column1, column2 FROM table WHERE id = '' OR 1=1 OR id =''
こうなりますね

さて、どうしましょう・・・



(*これは具体的な回答ではありません、自分で考えてみてください)

この回答への補足

すみません、私の書き方がまずかったのですが・・・。
SQLインジェクションを防ぐためにはクォテーション文字はエスケープする必要があると思いますが、今回は質問の意図を明確にするために複文によるSQLインジェクション以外は考慮していません。

複文によるSQLインジェクションという意味では、「;(コロン)」の除去でOKでしょうか?

補足日時:2008/01/17 16:13
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す