こんにちは、私はウェブサイトを開発しており、侵入テストを行っています。これは、私に次のことを認識させたCakePHPで構築されています。
生の SQL の代わりに CakePHP の ORM メソッド (find() や save() など) と適切な配列表記 (つまり、array('field' => $value)) を使用する場合、CakePHP はすでに SQL インジェクションから保護します。
しかし、SQL インジェクション防止をテストするために、入力フォーム フィールドにどのデータを入力すればよいかわかりません。
単純な VARCHAR 属性を持つ次のテーブル名があります-
categories: name
clients: address, county, country, name
items: name
statuses: name
この SQL ステートメントをフォームに入力して送信することは、SQL インジェクションの試行をテストする正しい方法でしょうか?
DROP TABLE "categories";
これをフォームに送信した後、データベースに入力された値は次のとおりです。
DROP TABLE "categories";
これは、Web サイトがデータベースにカテゴリ テーブルをドロップしなかったため、SQL インジェクションの試みから保護されていることを意味すると考えてよいでしょうか?