2012-03-07 9 views
1

私がコードを書いていない環境でmagic_quotesを無効にすると、問題が発生する可能性はありますか?何を確認する必要がありますか?どの機能がもう機能しないのでしょうか?magic_quotesオフ - コードブレークはできますか?

+0

magic_quotesが必要なコードがある場合は、更新する必要がありますコードはPHP 5.4以降では動作しません。magic_quotesは古くから廃止されており、PHP 5.4では最終的に完全に削除されています。 –

答えて

1

magic_quotesのをオンにすると、マジックが提出されたすべてのフォームデータにaddslashes()を行う自動的に引用。つまり、[\]はデータ内の[]、[]、[]、またはnullの前に置かれるため、That's niceは自動的にThat\'s niceに変換されます。 (データベースではなく)次のページに文字列を渡すだけで、スラッシュで印刷することはできません。

0

残念ながら、私は簡単な答えはないと思います。ユーザー入力を直接操作している場所を確認する必要があります。コードが単純であれば、$ _GETと$ _POSTの使用を検索することができますが、少なくともスキャンコードのレビューは必要ありません。

私がそれを無効にしたときに覚えていたことは、適切にエスケープされなかったリクエストパラメータを含んだSQLの挿入/更新クエリでした。

0

マジッククォートは着信データ文字列に影響します。 $_GETまたは$_POSTを使用する場所、またはその性質の変数は影響を受ける可能性があります。

基本的には、ユーザーからのデータを受け入れる任意の場所です。

注:はさらに重要なのは、あなたがあなたのSQLクエリのすべてに目を通すと、任意の入力文字列がエスケープされていることを確認する必要があります!さもなければあなたのコードはSQLインジェクションに対して脆弱になります。

関連する問題