メインコンテンツへスキップ
Q どろっぷ
不正対策

ハニーポットとは

概要

ハニーポット (honeypot) は、フォームに人間には見えない隠しフィールドを追加し、そのフィールドに値が入力された場合に Bot と判定する技術である。人間はフィールドの存在に気づかないため入力しないが、Bot はフォームの全フィールドを機械的に埋めるため、隠しフィールドにも値を入力してしまう。この差異を利用して Bot を検出する。

実装方法

ハニーポットの実装は単純である。フォームに通常のフィールドと同じ見た目の入力欄を追加し、CSS で `display: none` や `position: absolute; left: -9999px` などのスタイルを適用して画面外に配置する。サーバー側では、このフィールドに値が含まれていた場合にリクエストを拒否する。

フィールド名を `email2` や `website` のように、Bot が自動入力しやすい名前にすると検出率が上がる。逆に、`hp_field` のような明らかにハニーポットとわかる名前は、高度な Bot に回避される可能性がある。

限界と組み合わせ

ハニーポットは実装が容易でユーザー体験を一切損なわない利点がある。しかし、高度な Bot は CSS を解析して隠しフィールドを検出し、入力を回避できる。また、ブラウザの自動入力機能が隠しフィールドに値を入れてしまい、正規ユーザーが誤検知される場合もある。

そのため、ハニーポット単体ではなく、Proof of Work やレートリミットと組み合わせた多層防御が推奨される。ハニーポットは「低コストで大半の単純な Bot を排除する第一の防壁」として位置づけ、すり抜けた Bot は PoW やレートリミットで対処する設計が効果的である。

不正対策やセキュリティ技術について詳しく知りたい方は、情報セキュリティの関連書籍も参考になります。

この記事は役に立ちましたか?

関連用語

関連記事

あなたも質問箱を作ってみませんか?

メールアドレスだけで登録でき、パスワード不要で始められます。

無料で始める