Contact Form 7 を使って問い合わせフォームを作成
フォーム作成の人気プラグイン Contact Form 7 をインストールして、問い合わせフォームを作りました。ネット記事を参考にしながら固定ページを作成して、ものの数分で問い合わせフォームが完成。あまりの簡単さに感心しました。
実際にテスト送信してみると問題なく稼働することを確認できましたが、関連記事などを読んで、スパム対策をしておいた方がよいことを知りました。
ある日突然、問い合わせフォームから大量のスパムメールが ! なんてことになったら悪夢以外の何物でもありませんから、急いで対策について調べました。
そもそもスパムとは
「スパム」はもともとアメリカ発の缶詰食品のことですが、セキュリティ用語としての「スパム」は、大量に送られてくる迷惑メールや、ワンクリック詐欺メールといった「web上の迷惑行為全般」を指す言葉です。
これは、70年代イギリスのコメディ番組「空飛ぶモンティ・パイソン」で放映された伝説的なコントがもとになっています。コントの内容は、「○○とスパム」といった具合にすべてのメニューにもれなくスパムが付いてくるレストランがあって、お客は無理やりスパムを注文させられて迷惑するというもので、そこからweb上の迷惑行為がスパムと呼ばれるようになりました。
Google reCAPTCHA とは
reCAPTCHA(リキャプチャ)は、Google社が提供する「ウェブサイトへの不正アクセスを防止する仕組み」で、bot (ボット) か人間かを判断することにより、bot によるスパム被害を防止します。
bot とは、一定のタスクを実行するようにプログラムされた、ソフトウェアアプリケーションです。自動化されていて、繰り返しタクスを人間より遥かに速いスピードで実行します。Web クローラー (Google bot) のように、ウェブサイトのコンテンツを自動的にスキャンする有益な bot もありますが、スパムを拡散するなど悪質な行為に利用されることもあるわけです。
現在 Google が提供している reCAPTCHA は「v2」と「v3」で、v2 には、「私はロボットではありません」と記載されたチェックボックスがありますが、最新版の reCAPTCHA v3 にはそれさえありません。つまり、人間か bot かを判断するためにユーザー側が求められる画像認証のようなアクションが、一切ないということです。
人間と bot のウェブページ上での行動 (カーソルの動きや反応速度など) を機械学習することにより、自動的に人間か bot かを判別しているらしいのですが、bot で bot を取り締まることには限界を感じますし、こちらの動きがコンピューターに逐一監視されているようで空恐ろしい気もしますが、これからの人類が生きるIT社会はそういう世界なのでしょう。
とりあえず、ネット記事を参考にして最新版の reCAPTCHA v3 を導入しましたが、web上には次から次へと新しいスパムが出てくるわけで、セキュリティ対策については常にアンテナを張っておく必要があるようです。