2012-02-27 4 views
-1

mysql_escape_stringまたはaddslashesを使用していても、ファイルを新しいホスティングに転送しました。その前に、私はSQLインジェクションを得ることはできませんでした。どうしましたか?助けてください、私は夢中になります。ファイルを新しいホスティングに転送し、SQLインジェクションを受け取ります

編集:あり、私が使用している場合は何のSQLインジェクション」はありませんが、私が使用している場合それは、SQLインジェクションを与える私の頭は本当にすぐに爆発する...

+2

新しいホストには同じバージョンのPHPがありますか? – davidjwest

+5

ええと、使用しているコードを提供できますか? –

+5

申し訳ありませんが、より具体的なFARにする必要があります。 –

答えて

0

入力をエスケープ/サニタイズしてSQLデータベースに直接送信するのが安全な場所に入力することは非常に困難です。データベースとのすべてのやりとりのために、コード内でパラメータ化クエリを使用するために本当にすべきこと。これにより、データベースは "コマンド"とみなされるべきものと "データ"とみなされるべきものを決定し、 "データ"へ​​の注入されたSQLが依然としてデータに見えるようにします。

続きを読むOWASP's excellent discussionこのトピックについて

2

私はmysql_real_escape_stringが関数あなただと思いますSQLインジェクションからアプリケーションを保護するために使用したい....

また、あなたが昔のホストで安全でないコードを持っていたかもしれない、とあなただけ知らなかった...

+0

マジッククォートはオフです(私はチェックしました)、私は同じことをmysql_real_escape_stringを使います。 :( –

+2

PDO準備ステートメントはさらに優れています。 – DCoder

0

magic quotesがオフになっていることを確認してくださいコードを新しいホストに置いて、人々がそれを攻撃し始めるまでどんな理由であれ。

関連する問題