私は会社のレガシー Web アプリケーションの 1 つに割り当てられました。ソースを 1 日か 2 日調べてみたところ、次のような SQL インジェクション ベクトルが見つかりました。
mysql_query("SELECT * FROM foo WHERE bar='" . $_GET['baz'] . "'");
これに対して SQL インジェクション テストを実行しようとしましたが、PHP のmagic_quotes_gpc
モジュールがオンになっているために失敗します。
magic_quotes_gpc
がdirtyであることはわかっていますが、上記のようなコードは数千行とは言わないまでも数百行あります。magic_quotes_gpc
このようなコードは攻撃に対して無防備なままになるため、スイッチをオフにするわけにはいきません。
上記のコードがどの程度「悪用可能」であるか、すぐに修正する必要があるのか、それとも修正作業を他のリファクタリング タスクに含める必要があるのかを知りたいです。