問い合わせフォームやコメント欄が、英語のスパムで埋まっていく

朝メールを開いたら、問い合わせフォーム経由の通知が何十件、何百件と英語のスパムで埋まっている。あるいは管理画面を開いたら、身に覚えのない英語の投稿がずらりと並んでいる――。WordPressを運用していると、あるときから急にこうした状態になることがあります。本当に大切なお客様からの問い合わせが、その中に埋もれて見落とされてしまう。これは決して珍しいトラブルではありません。

結論から言うと、フォームやコメント欄のスパムは正しく対策すれば、ほぼ気にならないレベルまで止められます。そして私たちが現場で見るスパム被害の多くは、高度な攻撃ではなく「基本のフタが空いている」だけのケースです。この記事では、まず現場で本当に多い原因を運営者の方向けに解説し、後半で具体的な止め方を紹介します。

現場で本当に多い、スパムの「2大パターン」

実際にご相談をいただいて調査すると、フォームやコメント欄のスパムの原因は、ほとんどが次の2つに集約されます。特別なことではなく、設定の抜けです。

  • パターン1:Contact Form 7 を使っているのに、reCAPTCHA を入れていない。定番プラグインのContact Form 7(CF7)は、素の状態だとスパム対策がほとんどありません。世界中を巡回するBotにとって格好の標的になります。
  • パターン2:使っていないコメント欄を、開放したまま放置している。投稿や固定ページのコメント欄が開きっぱなしになっていて、そこへ自動投稿のスパムコメントが延々と溜まっていくパターンです。

逆に言えば、この2つのフタを閉じるだけで、スパムの大半は止まります。「難しい対策が必要」と身構える前に、まずここが抜けていないかを確認するのが先決です。

海外のBotが自動でWordPressの問い合わせフォームやコメント欄に送信を繰り返すイメージ

放置すると、「スパムだけ」では済まなくなる

スパムを「消せばいいだけ」と軽く見て放置すると、実害が出てきます。私たちが実際に対応した事例を紹介します。

約3年間ほとんど更新されずに放置されていたサイトで、「管理画面に身に覚えのない英語の投稿が大量にある」というご相談でした。調査すると、その正体は自動投稿のスパムで、コメント欄に溜まったスパムコメントだけで3,000件以上、問い合わせフォーム経由のスパム送信も1,000件以上蓄積していました。そして深刻だったのはここからです。長く更新が止まっていたことで、古いプラグインの脆弱性を突かれ、サイトがマルウェアにまで感染していました

この事例が示すのは、スパムの氾濫は「サイトの更新・管理が止まっている」サインでもあるということです。放置されたサイトは、スパムの温床であると同時に、乗っ取りや改ざんの絶好の標的になります。フォームやコメントのスパムは、単なる迷惑メールではなくセキュリティの黄色信号として捉えるべきものです。

リスク 何が起きるか
本物の問い合わせの見落とし 大量のスパムに埋もれ、大切な商談や依頼を取りこぼす。機会損失に直結する。
自社ドメインのメールが届かなくなる フォームの通知・自動返信が大量送信された結果、送信サーバーが「スパムの踏み台」とみなされ、自社ドメインのメール全体がブロック(ブラックリスト化)されることがある。
乗っ取り・改ざんの温床になる スパムを放置できるほど管理が止まっている=更新も止まっている状態。脆弱性を突かれてマルウェア感染・不正アクセスに至るケースがある。
サーバー負荷・DBの肥大化 スパムコメントや送信ログが数千件単位で溜まり、表示速度の低下やサーバー費用の増加につながる。

ここまでのまとめ:多くは「基本の抜け」。だが放置は危険

いったん整理します。フォーム・コメントのスパムは、その多くがCF7のreCAPTCHA未導入と、コメント欄の開放という基本の抜けから起きています。そして放置すると、本物の問い合わせの見落としだけでなく、メール不達やサイトの乗っ取りという実害にまでつながります。裏を返せば、正しい順番でフタを閉じれば、大半は防げるということです。ここからは具体的な止め方を見ていきます。

スパムの止め方:まず「基本のフタ」を確実に閉じる

1. Contact Form 7 に reCAPTCHA を正しく入れる

フォームスパム対策の最優先は、GoogleのreCAPTCHAの導入です。前述のとおり、私たちが対応する被害の多くは、そもそも「reCAPTCHAを入れていない」だけです。特にreCAPTCHA v3は、利用者にチェックを求めない「見えない」タイプで、使い勝手を損なわずにBotの自動送信をはじけます。

手順としては、まずGoogle reCAPTCHAの登録ページ(https://www.google.com/recaptcha/admin/create?hl=ja)でサイトを登録します。このときreCAPTCHA タイプは「スコアベース(v3)」を選ぶのがおすすめです。ラベルに分かりやすい名前、ドメインに自分のサイトのドメインを入力して登録すると、サイトキーとシークレットキーが発行されます。

Google reCAPTCHAの登録画面。reCAPTCHAタイプでスコアベース(v3)を選択している様子

あとは、このキーをCF7側の「お問い合わせ」→「インテグレーション」設定に登録すれば連携完了です。プラグインやCF7のバージョンによって画面が異なるため、詳しい手順は「Contact Form 7 reCAPTCHA 設定」で検索すると見つかります。

注意点として、「入れたつもりで、実は効いていない」ことが意外と多いです。キーの登録ミスや、テーマ側のスクリプト読み込みの問題で機能していないケースがあります。導入後は、実際にスパムが減っているかを必ず確認してください。

2. 使っていないコメント欄は閉じる

コメント欄を使ってコミュニケーションしているのでなければ、開けておく理由はありません。コーポレートサイトやサービスサイトの多くは、コメント欄が不要なのに初期状態のまま開きっぱなしになっており、そこがスパムの入口になっています。問い合わせはフォームに一本化し、コメント欄は閉じてしまうのが安全です。

手軽にやるなら、「Disable Comments」というプラグインが便利です。コードを触らずに、コメント欄の無効化と、溜まったコメントの一括削除を画面から行えます。すでに大量のスパムコメントがついてしまった場合の後始末にも向いています。

  • 「コメントを無効化」タブ →「どこでも」を選べば、サイト全体(投稿・固定ページ・メディア)のコメントをまとめてオフにできます。トラックバック/ピンバックも同時に止まります。
  • 「コメントを削除」タブでは、すでに溜まっているスパムコメントを一括削除できます。数千件たまっていても一気に片付けられます。

プラグインを増やしたくない場合は、WordPress標準の「設定」→「ディスカッション」で新しい投稿へのコメントを既定でオフにし、既存の投稿・固定ページは一覧の一括編集でコメントを「不許可」に変更する方法でも対応できます。

さらに、サイト全体でコメント機能を完全に止めたい場合は、テーマの functions.php に次を加える方法もあります。新規のコメント・トラックバックを一律で受け付けなくなります。

reCAPTCHAの導入やコメント欄の閉鎖など、基本の対策でフォーム・コメントスパムを防ぐイメージ

3. サーバー側でも弾く(日本語必須チェックが効く)

ここからは少し技術的ですが、効果の高い部分です。reCAPTCHAをすり抜けてくる送信に対しては、サーバー側(PHP側)で最終判定するのが確実です。ブラウザ側のチェックはBotに無視されるため、本当の防波堤はサーバー側に置きます。日本向けサイトで特に効くのが、次の「日本語必須チェック」です。

私たちが対応するスパムは、その大半が海外Botによる英語のみの自動送信です。この日本語必須チェックは、そうした送信をまとめて落とせる一方、日本語で問い合わせてくる本物のお客様はまず弾かれません。あわせて、本文中のURLリンク数が多すぎる送信や、ページ表示から数秒未満での即時送信を弾く条件を足すと、さらに精度が上がります。

根本の原因は「放置」。だから保守で防ぐ

2大パターンの奥にある本当の原因は、サイトの更新・管理が止まっていることです。reCAPTCHAが抜けたまま、コメント欄が開いたまま何年も気づかれない――そういう状態のサイトほど、スパムが溜まり、脆弱性も放置され、最終的に乗っ取りの標的になります。先ほどの事例で、スパムの氾濫とマルウェア感染が同時に見つかったのは偶然ではありません。日頃から手が入っているサイトは、そもそもスパムが溜まる前に気づけます。定期的な更新・点検を続けることが、遠回りに見えて一番の予防策です。

まとめ:まず「フタ」を閉じる。手に負えなければ早めに相談を

フォーム・コメントのスパムは、CF7へのreCAPTCHA導入、使っていないコメント欄の閉鎖、サーバー側の日本語必須チェックという基本を押さえるだけで、実用上ほとんど気にならないレベルまで減らせます。多くの被害は、難しい攻撃ではなく基本の対策が抜けているだけだからです。

一方で、「reCAPTCHAを入れたのに止まらない」「スパムが数千件溜まっていて手がつけられない」「身に覚えのない投稿があって、マルウェアが心配」という場合は、無理をせず専門家に任せるのが安全です。私たちEdel Heartsは、フォーム・コメントスパムの駆除と対策から、放置サイトの点検、マルウェア感染が疑われる場合の調査・復旧まで対応するWordPress専門チームです。今回の事例のように、スパムの裏に乗っ取りが隠れていることもあります。状況が読めないときこそ、早めにご相談ください。

この記事をシェア