2011-02-07 4 views
1

メインサーバーにスクリプトを作成しています。js/htmlを使用して画像ソースとして呼び出し、現在のtumblrページの参照元変数を渡して、ブログの統計情報をメインの統計トラッキングDBに統合できます。URLのphpスクリプトに渡されるURL変数のチェック/検証には十分ですか?

もちろん、ソースを見る人は、このスクリプトがgetを介してurl変数を受け入れることができることを知ることができます。私は、セキュリティwonkのあまりないんだけど、私は現在、このVARへの入力で次のチェックを使用しています:

$previous_referrer = htmlspecialchars($_GET['ref']); 
if (filter_var($previous_referrer, FILTER_VALIDATE_URL) && strpos($_SERVER['HTTP_REFERER'], $tumblelog_url)!== FALSE) 

私は推測していることは、これは単純ではありません。注射の攻撃に対してそれをロックするために実行すべき他のチェックは何ですか?データベースで安全にデータを挿入するための

答えて

1

1)DB

にフィルタデータを挿入する前:

  • を私のデータは、期待されるタイプ/摂餌(電子メール、URLを持っていたん.. ..)

フィルタリングの主な目的は、無駄なデータの処理を避けることです。

SQLインジェクションから

防ぐ:

  • (のみMySQLの)mysql_real_escape_stringのまたは準備された文のような文字列を使用関数を挿入する場合FLOATVAL INTVALような数の利用機能()()
  • を挿入する場合。 htmlspecialcharsような関数を用いて表示

    防止XSS()またはhtmlentites前に挿入後

2)、()。

関連する問題