2009-05-16 8 views
2

私は話を私はいくつかのブログ物語がで訪問をたくさん受けるので、私は訪問訪問者のIPを確認する方法は?

のスパムが直面していると思うの訪問

の数が発注されているブログ集約サイト

を持っています同じIPアドレスの同じ秒

私のウェブサイトは同じipからの訪問を許可しません。しかし、私の訪問者は何とか彼らのipsを変更します。

は、このスパム訪問を検出するためのソリューションですか?Google adSenseがこのような問題をどのように解決するのだろうか?

おかげ

答えて

5

短い答えは、単一の未検証の訪問はあなたの物語の順序を変更するために必要な唯一のものであれば、それは決定した攻撃を停止することは不可能だということです。 登録ユーザー投票システムの導入について考えてみてください。

しかし、あなたはいくつかの情報を収集し、それらのすべて組み合わせることができます。

1)ユーザエージェント
2)IPアドレス
3)X-転送さ-用ヘッダー(使用可能な場合)

多くの場合、攻撃者は怠惰で、異なるユーザエージェントを経由しません。特定の間隔で(リアルタイムではなく)訪問情報を処理するようにシステムを設定した場合、同じ正確なユーザーエージェントを使用して同時に発生した大量の訪問数をフィルタリングする可能性があります。

antiproxy.comなどのWebサイトからは、常にデータベースのプロキシをダウンロードできますが、実際には、文書化されていないボットネットノードからの攻撃が最も効果的です。通常の訪問者と区別がつかない異種トラフィックの攻撃によって、あなたのウェブサイトのターゲットとなる可能性は十分にあります。

少なくとも、ユーザーがストーリーに投票してキャプチャを要求できるように、実装を変更することをおすすめします。

+0

。システムを投票システムに変更すると、私の場合は非常に複雑になります。 そのことについて私は確信していませんか?ユニークユーザーのエージェントを持っていますか? ありがとう – ahmed

+0

ユーザエージェントはユニークではありませんが、しばしばユニークであることがあります。例:Firefoxとブラウザツールバーの同じ正確なバージョンを宣伝し、.NETフレームワークがインストールされた同じフォーマットで、1分以内に300ヒット。これは起こりそうもなく、悪意ある行為を示している可能性があります。 –

1

PHPを使用すると、PHPが$ _SERVER ["HTTP_X_FORWARDED_FOR"]変数をIPアドレスと照合して、クライアントが自分の人物であることをもう少し確かめることができます。これは、いくつかの代理人によって人々を識別するのに役立ちます。

0

信頼できるIPを検出できません。

プロキシを経由している可能性があります。スプーフィングされている可能性があります。

+1

- それに直面してみましょう - それはちょうど本物かもしれません! 1つのゲートウェイの背後にあるオタクのチームを想像してみてください。そのうちの1人がIRCに素敵なURLを投函しています... – innaM

1

この機能を使用することがあります。しかし、他の人が言っているように、正しいIP 100%を得るのは難しいかもしれません。

私はどこから機能があるのか​​記憶できませんが、インターネット上ではかなり一般的です。説明するためのおかげで@novatrust、私はスパムと同じ「ユーザー・エージェント」を持つすべてのユーザーを治療するために自分のコードを変更しても同じIPを持つすべてのユーザースパムとして、私は、同様の使用X-転送-のための努力をします

function getRealIpAddr() 
{ 
    if (!empty($_SERVER['HTTP_CLIENT_IP'])) 
    { 
     $ip=$_SERVER['HTTP_CLIENT_IP']; 
    } 
    elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) 
    { 
     $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
    } 
    else 
    { 
     $ip=$_SERVER['REMOTE_ADDR']; 
    } 
    return $ip; 
} 
+0

私はあなたに本当のIPを与えるつもりはないと思います - テストの順番から設定された最初のものです。 $ _SERVER ['HTTP_X_FORWARDED_FOR']と$ _SERVER ['HTTP_CLIENT_IP']を比較することさえありません。これはいくつかの回答で示唆されています。 – BrynJ

関連する問題