拡張機能研究所

おすすめのブラウザ拡張機能をマンガ形式で紹介!

2025/08/21 18:00

連絡フォームにreCAPTCHA入れても意味ない?Laravelでのスパム対策、どうする?

Laravelアプリの連絡フォームにv2 reCAPTCHAを入れても、ボットからの迷惑メッセージが止まらない…そんな時に考えたいスパム対策のポイントをゆるっと紹介します💡
連絡フォームにreCAPTCHA入れても意味ない?Laravelでのスパム対策、どうする?

これ、わたしもぶっちゃけ「なんでだよ~!」ってなるやつなんだけど、reCAPTCHA v2をつけたのにスパムが止まらない問題、意外とよくあるんだよね💭

普通ならこれでかなりブロックできるはずなのに、なんでかまだ大量にボットが来ちゃうっていう…。うーん、なかなか手ごわい💦

そもそもreCAPTCHAってどう動いてるの?🧐

reCAPTCHA v2はよく見る「私はロボットじゃありません」ってやつ。クリックしたり、画像選んだりするやつね。
でも実は、ボットも最近はかなり賢くなってて、こういう単純なチェックは突破できちゃうことがあるんだって🥺

だから、reCAPTCHAだけに頼るのはちょっと危ないかもって感じだよね。

Laravelでできる、もう一歩踏み込んだ対策✨

わたしもちょっと調べたり試したりしてみたけど、こんな方法があるよ!

  • reCAPTCHA v3にアップグレードする
     → ユーザーの行動を点数化してスコアで判定するタイプ。ボットか人かをより自然に見分けてくれる感じ📊

  • フォームに隠しフィールド(honeypot)を入れる
     → 普通のユーザーは見えないけどボットは埋めちゃう罠みたいなもの。引っかかればスパムとして弾ける🐝

  • 送信数の制限(レートリミット)
     → 一定時間に同じIPやユーザーからの送信を制限。何回も連続で送ってきたらブロックしちゃう方法⏳

  • IPブラックリストやファイアウォールの活用
     → 悪質なIPをあらかじめブロック。Laravelならミドルウェアで設定できるよ🔧

  • JavaScriptチャレンジの導入
     → ボットはJSを実行できないことが多いから、JSを使った簡単な認証を入れると有効⚡

わたしの感想:1つじゃ足りないかも?🤔

正直、「reCAPTCHAだけで完璧に防ぐ」はちょっと難しい気がしてる💭
組み合わせて、段階的にボットを減らす感じが現実的なんじゃないかなあ😳

特にLaravelならカスタマイズもしやすいし、レートリミットやhoneypotは簡単に導入できておすすめだよ👍


まとめると、reCAPTCHAは「最低限の防御レベル」ってイメージで、それだけに頼らず複数の対策を組み合わせるのがポイントかなぁって思うの。
ボットも日々進化してるから、こっちも少しずつ工夫を重ねていくしかないんだよね🥺✨

ひとことアニメーション表示ON
なんで止まらないんだよ~💢

コメント

アバター

クリス

ほとんどの場合、ハニーポットだけでうまくいくけど、ダメならCloudflare Turnstileが頼りになるよ。

アバター

キンバリー

IPごとにレート制限とクライアントの一回限りのトークン(cnonce)を入れて、ボットの直POSTを防ごう。 詳しくはブログもあるよ。

アバター

ハンナ

ハニーポット使ってる? それかv2キャプチャの実装がちゃんとしてるか確認してみて。

アバター

ロバート

うちはハニーポットだけでキャプチャ無しでほとんどスパム来ないよ。

アバター

ベン

v3が最新じゃないの?

アバター

クリス

Cloudflare Turnstileをちゃんとトークン検証付きで使って、シンプルなハニーポットも入れてみて。 IPでレート制限もおすすめ。

アバター

ロバート

自分もCSSで隠したハニーポット使ってるけど、1日1万アクセスのサイトでもスパムゼロだよ。

アバター

ハンナ

ハニーポット入れてるなら設定ミスかもね。

アバター

チャーリー

botpoisonも試してみて、すごく効くよ!

アバター

ベン

まだ誰も言ってないけど、ハニーポットは考えた?

アバター

サラ

ハニーポットの入力欄ある?

アバター

リリー

Upstashって無料のミドルウェアあるし、連絡フォームやめてメールアドレス載せるのも手だよ。

アバター

レオ

一番シンプルなのは隠しチェックボックス作って、チェックされたら黙って破棄する方法。

アバター

クリス

Cloudflare Turnstileにハニーポットの組み合わせ最高!


関連記事