いまやすっかり放置状態となっている私が管理しているWebサイト『ライダーの装備たち』。
本当ならばこちらが本家だったはずですが、いまやブログのほうが主体になり、そして全くメンテナンスしなくなってしまった・・・・(泣)
https://tarsama.sakura.ne.jp/ ライダーの装備たち
・【使いまわしイメージ】全くメンテナンスしていないWebサイト"ライダーの装備たち" |
久しぶりにこのサイトの掲示板を覗いてみたら・・・・荒れまくっている!!
なにかロボットか何かで定期的に同じ文言が書き込まれるのか、有益な情報が流れてしまいせっかく投稿していただいた皆様にも迷惑をおかけしてしまう・・・・
仕組み自体はレンタルサーバー導入時の雛形掲示板cgiを配置してあるだけなのですが、perlで書かれているスクリプトで構成されているので、その気になればカスタマイズすることができる。
なので投稿する文面に日本語が含まれていないと駄目だとか、禁止ワードが入っていたら駄目だとかをプログラミングして追加。
少しの期間はこれで収まるのですが、攻撃側はそれらを回避する攻撃方法に変化させさらに潰しにきます。
そんなイタチごっこもだんだん面倒になり放置モードへ。
そんな時、ふとGoogle "reCAPTCHA"を導入してみれば良いのでは?と思いついた次第。
ログイン画面とかでよく見かける『私はロボットではありません』というチェックを付けるやつでして、その挙動から人間がロボットを仮判断。
陽性だと判断されると画像での人間かどうかの検査が行われるというもの。
少数のトラフィックならば無料とのことなので、技術的な興味から試しに導入してみました。
reCAPTCHA v2やreCAPTCHA v2 invisible、reCAPTCHA v3といくつかのバージョンがあるのですが、あえてチェックしていることをアピールできるv2をセレクト。
・掲示板投稿時にreCAPTCHAによるロボット判別をしてみました |
掲示板のperlプログラムにクセがあり、立ち上がった直後に標準入力をバイナリーリードで一気に変数に読み込んでしまい、パラメーターの分解をプログラムでやっている構造に気がつくまで、あれ~?入力値が取得できない~!などと久しぶりにプログラマをやってしまいました(楽しい)
これで変な投稿をブロックできるかな?(自己満足)
(もはや誰も見ていないし書いてもいないので、ここを攻撃対象にする人も居ないと思われますが・・・・)