BULLCOM Security

ホームページの問い合わせフォームに来るスパムを止める

ホームページの問い合わせフォームに来るスパムを止める

自社サイトの問い合わせフォームに、英語の宣伝や意味不明な文面が毎日届く。本物の問い合わせが埋もれてしまう——これは多くの企業サイトが抱えている悩みです。

実は当社自身も、この問題に正面から取り組みました。今日は、自社サイトで実際に効果があった対策を、実装した側の視点でご紹介します。

フォームスパムの3つの型

1. 宣伝目的

「SEO対策しませんか」「格安でサイト制作します」といった営業メール。無害ですが、量が多いと本物が埋もれます。

2. SEOスパム

本文にURLを大量に貼るタイプ。問い合わせ内容がそのままサイトに掲載される仕組みを悪用して、被リンクを稼ごうとします。

3. 踏み台目的(最も厄介)

自動返信メールの機能を悪用する型です。フォームに他人のメールアドレスを入れて送信し、あなたの会社の名前で、無関係な第三者に大量のメールを送らせる手口です。

送信元はあなたの会社になるため、迷惑メール送信者として扱われるリスクがあります。

効果のあった4つの対策

当社サイトで実装し、実際に効果があったものを順に紹介します。

対策1:ハニーポット(見えない入力欄)

人には見えないが、プログラムには見える入力欄を設置します。CSSで非表示にしておき、ここに何か入力されていたら自動送信と判定します。

人間は見えないので入力しません。一方、機械的に全項目を埋めるプログラムは、うっかり埋めてしまいます。

重要なのは、弾いたときに「成功したフリ」をすること。 エラーを返すと、プログラムが対策に気づいて別の方法を試してきます。静かに破棄するのが効果的です。

対策2:電話番号の形式チェック

日本の電話番号は、必ず「0」で始まります(090、078、0120など)。

海外からの自動送信は +1-555-... のような形式を入れてくることが多いため、「0」始まりでない番号を弾くだけで、かなりの量が減ります。

日本国内向けのサイト限定の手ですが、効果は大きいです。

対策3:本文へのURL混入を拒否

問い合わせ本文にURLが含まれていたら拒否します。SEOスパムに直接効きます。

ただし正規の問い合わせでURLを送りたい方もいるため、判定は慎重に組む必要があります。当社では「http(s)://」「www.」「主要ドメイン」に絞り、型番の小数点などを誤検知しないようにしています。

対策4:フィールド名の文字化けチェック(最重要)

これは実際に運用してみて発見したものです。

あるスパムプログラム群は、日本語のフィールド名(「お名前」「電話番号」など)を正しく送信できていません。サーバーに届く時点で ??? に化けているのです。

厄介なのは、値(入力内容)は正常なまま届くこと。だから見た目では気づけません。しかし内部的には、

  • フォームの「電話番号」を取り出す → 名前が一致せず取り出せない
  • 結果、上記の対策2・3が両方とも素通りする

という状態になっていました。対策を入れていたのに効いていなかったわけです。

正規のブラウザからフォームを送信する限り、フィールド名が化けることはありません。そこで「化けている=機械的な送信」と判断し、他のチェックより先に、送信ごと拒否するようにしました。

対策の順番が大事

実装してみて分かったのは、チェックの順番が結果を左右するということです。

  • ハニーポット
  • フィールド名の文字化けチェック
  • 電話番号の形式チェック
  • 本文のURLチェック

2番目を上流に置かないと、3・4が機能しません。順番を間違えると、対策があるのに効かないという状態になります。

CAPTCHAを使わなくても減らせる

「私はロボットではありません」のチェックは有効ですが、正規の利用者にも手間をかけます。特にご高齢の方や、スマホからの操作では離脱の原因になります。

上記4つは利用者に一切負担をかけません。まずこちらを試して、それでも足りなければCAPTCHAを検討する、という順序をおすすめします。

外部フォームサービスの注意点

無料のフォームサービスを使う場合、日本語(漢字・かな)を含む送信でエラーになるケースが実際にあります。当社でも一度この問題に当たり、自前実装へ切り替えました。

日本語のサイトでフォームサービスを選ぶときは、日本語の送信テストを必ず行ってください。

フォーム改善のご相談を承ります

「スパムが多くて本物が埋もれる」「自動返信が踏み台にされていないか心配」——こうしたご相談を承っています。

BULLCOM Security では、問い合わせフォームのスパム対策実装をご支援しています。当社サイトで実際に運用している構成をベースに、貴社の環境に合わせてご提案します。

現在お使いのフォームの点検だけでも構いません。お問い合わせフォームまたはLINEからお気軽にご相談ください。

← ブログ一覧に戻る