-1

SQL インジェクションの問題で次のクエリがあります。

"SELECT * FROM user_data WHERE keywords LIKE \%" + querystring + "\% AND owner=’" + owner + "’;"

ここで、クエリ文字列はユーザ​​ーが直接入力し、所有者は自動的に設定されます。構文は正しいはずですが、\% がこの位置で何をしているのかわかりません...クエリが正しくありませんか? クエリの問題を悪用してSQLインジェクションの問題につながるはずですが、この「\%」は本当に私を混乱させています。

4

1 に答える 1

0

クエリ文字列が

'; SELECT * FROM SYS.DATABASES; --

ハッカーが CURL ツールを使ってそれを試みたらどうなると思いますか? 構文は、最初のクエリからすべてを取得し、次にすべてのデータベースのリストを取得します。実際、これは非常に単純な例です。一部の環境では、ファイアウォールが適切に構成されていても、この種のインジェクションにより、ハッカーがサーバー全体やドメインにまで到達する可能性があります。

于 2013-07-06T14:20:41.617 に答える