0

SELECT クエリのみを実行する場合、SQL インジェクションについて心配する必要がありますか? 私のサイトにはいくつかの入力フィールドしかなく、情報を検索するだけです。削除、更新などはしません...

4

4 に答える 4

2

実行しようとしているクエリの種類は関係ありません。SQL インジェクションは、クエリを終了し、DELETE、UPDATE、または INSERT などの別のクエリを開始する可能性があります。これがLittle Bobby Tablesのレッスンです

于 2013-06-18T21:17:25.443 に答える
1

はい、心配する必要があります。PHP 内で実行するクエリや、使用するスクリプトは関係ありません。悪意のあるユーザーは次のようなものを送信でき"; DROP DATABASEます。

于 2013-06-18T21:17:02.713 に答える
1

はい、そうすべきです。SQL インジェクションは、元のクエリの内容とは関係ありません。クエリに任意の句の任意のコマンドを挿入できます。

PHP では、サイト/システム/プロジェクトを保護するのは非常に簡単です。

この手法の例を含むこの公式ドキュメントを見てくださいmysql_real_escape_string

' or 1=1 or ''='更新:ログインページのユーザー名とパスワードの両方のフィールドでこれを使用して、一度使用しました。このようなクエリで結果が得られselect * from user where username = '' or 1=1 or ''='' and password = '' or 1=1 or ''=''、レコードが返される場合があります。

それがどのように機能するかについては、この例を参照してください。

于 2013-06-18T21:18:20.553 に答える
-1

ユーザーの入力に基づいている場合SELECT、ユーザーは入力フィールドに何でも入力できるため、心配する必要があります。

于 2013-06-18T21:15:20.103 に答える