直接フィードバックの排除
これは、他の多くの方法と組み合わせることができる、より一般的な戦略です。スパマーが成功したかどうかを知らせないでください。
現在の結果を完全に非表示にするか、絶対投票数なしでパーセンテージのみを表示するか、投票の表示を遅らせることができます。
- プロ:すべての方法に対して良い
- 短所:詐欺が大規模な場合、パーセンテージ表示と遅延は効果的ではありません
投票フラグ
また、一般的な戦略。投票がスパマーによるものであると推測する何らかの理由がある場合は、その投票をカウントして無効としてマークし、最後に無効な投票を削除します。
- プロ:検出可能なすべてのスパム攻撃に対して有効
- 短所:投票を歪曲し、設定が難しく、誤検知
キャプチャ
CAPTCHAを使用します。キャプチャが壊れている場合は、より良いものを使用してください。
- 長所:すべての自動化されたスクリプトに対して有効です。
- 短所:咽頭検査に対して役に立たない
IPチェック
ある期間にIPアドレスが投じることができる投票数を制限します。
- プロ:ブラウザで常にF5を押すランダムな人物に対して有効
- プロ:実装が簡単
- 短所:プロキシサーバーを使用するPharyngulationおよび複雑なスクリプトに対しては役に立ちません。
- 短所:IPアドレスが多くの異なるユーザーにマップされることがあります
リファラーチェック
1人のユーザーが1つのIPアドレスをマップすると想定した場合、そのIPアドレスで投票する場合は数を制限できます。ただし、この仮定は通常、個人世帯にのみ当てはまります。
- プロ:実装が簡単
- 長所:単純な咽頭炎に対してある程度は良い
- 短所:自動化されたスクリプトによって非常に簡単に回避できます
メール確認
メール確認を使用し、メールごとに1票のみを許可します。データベースを手動でチェックして、使い捨ての電子メールを使用しているかどうかを確認します。
+foo
メールアドレスでユーザー名に追加できることに注意してください。username@example.com
両方ともusername+foo@example.com
同じアカウントにメールを配信するので、誰かがすでに投票したかどうかを確認するときは覚えておいてください。
- プロ:単純なスパムスクリプトに対して有効
- 短所:実装が難しい
- 短所:一部のユーザーはそれを気に入らないでしょう
HTMLフォームのランダム化
選択の順序をランダム化します。彼らが見つけるのにしばらく時間がかかるかもしれません。
- プロ:とにかく持ってうれしい
- 短所:一度検出されると、回避するのは非常に簡単です
HTTPS
投票を偽造する方法の1つは、Firefoxなどの有効なブラウザからhttpリクエストをキャプチャし、スクリプトで模倣することです。これは、暗号化を使用する場合ほど簡単には機能しません。
- プロ:とにかく持ってうれしい
- プロ:非常に単純なスクリプトに対して有効
- 短所:設定が難しい
プロキシチェック
スパマーがプロキシ経由で投票する場合は、X-Forwarded-Forヘッダーを確認できます。
- Pro:プロキシを使用するより高度なスクリプトに対して有効
- 短所:一部の正当なユーザーが影響を受ける可能性があります
キャッシュチェック
クライアントがキャッシュされていないすべてのリソースをロードするかどうかを確認してください。多くのスパムボットはこれを行いません。私はこれを試したことがありません。これは通常、投票サイトによってチェックされないことを知っています。
例としては<img src="a.gif" />
、htmlに埋め込む場合があり、a.gifは1x1ピクセルの画像です。次に、リクエストのhttpヘッダーを。で設定する必要がありGET /a.gif
ますCache-Control "no-cache, must-revalidate"
。.htaccess
次のようなファイルを使用して、Apacheのhttpヘッダーを設定できます。(Jaccoに感謝)
- プロ:私が知る限り、珍しい方法
- 短所:セットアップが少し難しい
[2010年9月22日編集]
Evercookie