3

私が考えることができる方法は次のとおりです。

  1. アクション間の時間を測定します。
  2. 投稿の内容を比較するか (あまりにも類似している場合)、投稿されたリンクだけを比較することをお勧めします。
  3. ユーザーがアクティブな期間の分布を確認します (ユーザーがアクティブな場合、たとえば 1 時間ごとに 1 週​​間投稿すると、スーパーマンまたはボットがここにいます)。
  4. いくつかの特別なアクティビティが予想されます: stackoverflow のように、ユーザーがユーザー名のリンク (上部中央) を押して、新しい回答、コメント、質問などを表示することを期待します。
  5. (chakrit によって追加) 投稿内のリンクの数。
  6. ヒューリスティックではありません。ユーザー ログインに非同期 JS を使用します。(ボットプログラマーの生活を少し難しくするだけです)。
  7. (Alekc が追加) ヒューリスティックではありません。ユーザーエージェントの値。
  8. そして、どうすれば Google のアプローチを忘れることができますか (Will Hartung が言及)。ユーザーが誰かをスパムとしてマークできるようにします。十分な数のスパム投票は、これがスパム ユーザーであることを意味します。(十分なユーザー数を計算するのは、ここでの作業です)。

他にアイデアはありますか?

4

8 に答える 8

4

私はボット作成者の知性を過大評価しているかもしれませんが、6 番は、ある程度まともなボット作成者に対してはまったく役に立ちません。C# ブラウザー コントロールを使用してボットを作成すると、6 はほとんど役に立たなくなります。そのタイプのソフトウェアで私が見たものから、それはかなり一般的なアプローチです。

ユーザー エージェントでの検証はほとんど役に立ちません。また、私が受け取ったブログ スパムはすべて、有効な Web ブラウザーのように見えるボットからのものでした。

私は以前、ブログのスパムを大量に受け取っていました。文字通り、1日に何百ものコメントを削除することになります。私は reCaptcha を利用しましたが、今では月に 1 つ取得できます。

本当にこんなものを作ろうとしたら。私は次のことを試みます:

ユーザーは URL を投稿できない状態で開始します。

スレッド内の他の投稿との関連で X 件の投稿が分析されたら、投稿 URL へのアクセスを許可します。

サイトでのユーザーの活動、投稿の質、および必要と思われるその他の要因は、そのユーザーの IP に対する評判になります。

次に、同じサブネット上の IP と他の IP のレピュテーションに基づいて、必要に応じて他の決定を下すことができます。

それが最初に頭に浮かんだことでした。それが役に立てば幸い。

于 2009-04-09T20:03:58.297 に答える
3
  • 投稿内のリンクの数。

Akismetが主要なヒューリスティックの 1 つとしてリンクの数を使用していることをどこかで読んだことがあると思います。

また、私のブログのスパム コメントのほとんどには、10 以上のリンクが含まれています。

そういえば... Akismet API自体をチェックしてみてください.. それらは非常に効果的です。

于 2009-04-09T18:20:44.393 に答える
1

投稿本文でスパム関連のキーワードを検索してみてはいかがでしょうか。

ヒューリスティックではありませんが、効果的なアプローチです。APIを使用して、 StopForumSpamによって公開された統計を最新の状態に保つこともできます

于 2009-04-09T18:21:14.563 に答える
1

ページにアクセスする間隔は一般的だと思います。

個人サイトにコメント セクションを追加する必要があり、他のユーザーにメール アドレスを教えてもらうことを考えています。「コメントの公開」リンクをメールで送信します。

スパム ブラックリストの IP アドレスから送信されたものかどうかを確認することをお勧めします ( http://www.spamhaus.org/を参照) 。

于 2009-04-09T18:23:30.003 に答える
1

スパムの検出に Akismet を使用することを提案する別の回答があり、私はこれを完全に支持します。

ただし、ブロックのプレーヤーは彼らだけではありません。

Akismet と同じヒューリスティックと同じ API を使用するTypePad AntiSpamがあります (URL と API キーが異なるだけで、呼び出しの構造は同じです)。Akismet とほぼ同じアプローチを取っていると言っても過言ではありません。

Project Honeypotもチェックしてみてください。私が知る限り、それはユーザーの IP アドレスに基づいてルックアップを行うことができ、それが既知の悪意のある IP である場合は、それを教えてくれます (ハーベスターなど)。

最後に、別の方法であると主張するコメント スパムにアプローチするLinkSleeveを確認できます。基本的には、コメントでリンクされているリンクをチェックし、リンク先に基づいて判断します。

于 2009-04-09T18:34:47.887 に答える
1

究極のヒューリスティックを忘れないでください: ユーザーがクリックできる [スパムを報告] ボタンです。少なくとも、これにより、管理者として、すり抜けている可能性のあるルール ベースを更新する機会が得られます。もちろん、問題のある投稿とユーザーをすぐに削除することもできます。

于 2009-04-09T20:10:15.020 に答える
0

4° ポイントについては疑問がありますが、とにかく User-Agent も追加します。偽装するのはかなり簡単ですが、私の経験では、約 90% のボットが UA として Perl を使用しています。

于 2009-04-09T18:24:40.983 に答える
0

トップSEOキーワードのリストを取得し、それらのキーワードのコンテンツをチェックできる何らかのWebサービスがあると確信しています。コンテンツにキーワードが多すぎる場合は、スパムであると疑われます。

于 2009-04-09T19:28:12.577 に答える