お問い合わせフォーム、ボット、恥知らずなスパム

52422737秒

スパム対策は、電子メールの大きなトピックです。 人々は何年もの間、迷惑なものからすべてのもので受信トレイをきれいに保とうとしてきました スパマレスト 誤検知に対する驚異的な機能を備えた単純なジャンクメールフィルターへのツール。 実際、電子メールスパムは非常に迷惑になり、政府が介入して(想像してみて)それに関する法律を作成することさえありました。 しかし、まだ自警行為者が捕まえることができるスパムのXNUMXつの形式があります…そして、あなたが私を助けてくれることを願っています。

それは単なる煩わしさとして始まりましたが、それは全面的なビジネスの中断に成長しました。 フォームを送信するたびに、CRMでリードが自動的にトリガーされます。 つまり、過去1年ほどの間、GoogleのXNUMXページ目に掲載できるSEO企業に販売するための大量のリードがありました。 そこで、誤検知のリスクなしに、これらの厄介なスパマーを識別して排除し始める自作のフォームハンドラーの作成に着手しました。 結局のところ、私はスパムを嫌う一方で、失われた機会をさらに嫌うからです。

まず、実行可能に排除できるスパムの種類をXNUMXつのカテゴリにまとめました。

  1. フォームの背後にあるCookieにアクセスするためだけに誤ったデータを送信する実際の人間…無料トライアル、無料ホワイトペーパー、 ドリップマーケティング コンテンツなど
  2. Webをクロールして、アフィリエイトリンクと誤ったデータを見つけた任意のフォームに送信するボット。

また、この小さな共同プロジェクト(ここにコメントを付けて参加できます)の一環として、次のパラメーターを追加します:NOCAPTCHA。 私は自分でダングなことを半分の時間読むことができず、CAPTCHA自体が難しさだけでリード変換を減らすことを恐れる理由があります。

したがって、トリックは一連の論理テストを作成することです。これに対して、フォームから送信されたデータを実行して、正当なリードをブロックすることはほとんどなく、かなりの割合でスパムを確実に識別します。

これが私がいるところです:

  1. フォームに入力を挿入します。type= textですが、style =” display:none;”です。 ボットは、必要なフィールドチェッカーをバイパスするために、テキスト入力フィールドに値を自然に挿入します。 ただし、この特定のフィールドにデータが含まれている場合は、人間がそれを行わなかったことを確実に知ることができます。
  2. 「asdf」を確認してください。 単純なことですが、歴史的なスパムの報告によると、これはかなり人気のある形式の虚偽の提出でした。 文字列asdfがいずれかのフィールドに表示されている場合、それはスパムです。
  3. 繰り返し文字がないか確認してください。 試してみましたが、名前、会社名、住所の各フィールドで、どの文字も3回以上繰り返す必要があるという正当な理由は考えられませんでした。 そうでなければ私を納得させることができれば、素晴らしい。 今のところ、「XXXXコンサルティング会社」は私にとってリードにはなりません。
  4. 同一の文字列を確認してください。 ティム・アレンの隣人であるウィルソン・ウィルソンを除いて、私が知っている人は誰も連絡フォームのすべてのフィールドで同じ文字列値を持っていません。 同一のフィールドが多すぎる場合はスパムです。
  5. 最後に、これが重要です。 それらが属していないURLを確認してください。 スパムの最も典型的なケースのXNUMXつは、URLが属していないフィールドにURLを配置することです。 テキスト領域の「メッセージ」ボックス以外では、名前、電話番号、会社名などにURLを使用しないでください。 彼らがそれを試みるならば、それはスパムです。

これらの5つの論理テストにより、過去70か月間にスパム送信がXNUMX%以上削減されました。 無料お問い合わせフォーム 製品。 その数字をもっと高くしたいと思います。 まだ忍び寄っているスパム送信の最大数は、評判の悪いSEOオファーです。 それで、次の課題は次のとおりです。提出物の内容がSEOについて話していることを合理的に示す、密度の一連の重要な用語としきい値を考え出すことができますか? もちろん、これはSlingShotのメンバーが自分のサイトに実装するのは悪い考えかもしれませんが、それ以外の人にとっては適切です。

Web開発者が団結する:他に何をテストする必要がありますか?

5のコメント

  1. 1

    display:noneでフィールドを追加するというアイデアが大好きです。 天才です! 私は何ヶ月も前に、Captchaのテクノロジーがどれほどひどいのかについて投稿しました…それは無実の人々を罰し、ユーザーにとって不必要な追加のステップを追加します。 これは、ユーザーエクスペリエンスのアンチテーゼです。 私はあなたの隠されたフィールドをテストするかもしれません!

  2. 2

    display:noneでフィールドを追加するというアイデアが大好きです。 天才です! 私は何ヶ月も前に、Captchaのテクノロジーがどれほどひどいのかについて投稿しました…それは無実の人々を罰し、ユーザーにとって不必要な追加のステップを追加します。 これは、ユーザーエクスペリエンスのアンチテーゼです。 私はあなたの隠されたフィールドをテストするかもしれません!

  3. 3

    これは非常にうまく機能しますが、既存のフォームに展開すると、効果が広がるまでに時間がかかる場合があります。 ボットは多くの場合、フォームをキャッシュして、数週間前に見たときと同じようにフォームに投稿し、戻ってきて再び表示します。 したがって、キャッシュされたフォームに投稿している限り、彼らは通過します。 約XNUMXか月以内に、結果が表示され始めるはずです。

  4. 4

    1.タイマー;
    2.フォームフィールド名を推測するのは難しい。
    3.サーバー側のフォーム検証。
    4.値を持つことが期待されていないフォームフィールド。
    5.JavaScriptでフォーム送信を使用して非表示フィールドを更新する。
    6.JavaScriptを使用した送信時にフォーム属性を変更します。

    #1は私のお気に入りです。 連絡先(または任意のページ)ページが読み込まれるとすぐにタイマーを開始します。 サーバー側で、フォームに入力するのに必要な予想時間を設定します。 送信が早すぎると、メッセージ/アカウントが無効になっている/管理者がメールを受信するなどのメッセージが表示されます。 これは実際にあらゆるタイプのボットアクティビティの99.9%を排除します。

    #2セッションにフィールド名を格納し、フィールドにランダムな名前を付けます。 ボットが学習するのを難しくします。

    #3これは重要です。 電子メールは正規表現を使用して非常に正確に検証できます。電話番号フィールドには10個の番号、2つ以上のフィールドと同じ値=ボットなどが含まれることになっています。

    #4はあなたの記事で説明されており、5と6はいくつかのスクリプトオプションです。

  5. 5

    投稿ありがとう、ニック。 シェアに感謝します。

    マーティン–タイマーは素晴らしいアイデアだと思います。 ボットがそれを通り抜けて、しきい値がやや低くなると思います…多分5秒? 実際のユーザーだけでなく、ページに戻ってすぐにフォームに入力したいことを知っているユーザー向けに事前に入力されたフォームがあるので、私はただ興味があります。 私のXNUMXつのペニーだけ。 私はこの投稿に約XNUMX年遅れていることを知っているので、返信をあまり期待せず、希望を持って投稿するだけです🙂

    再度、感謝します!

    - デイブ

どう思いますか?

このサイトはAkismetを使用して迷惑メールを減らします。 コメントの処理方法を学ぶ.