スパムタグの投稿

スパム軽減プラグイン Nonce, Please! 1.2.0 リリース
スパム軽減プラグイン「Nonce, Please!」のバージョン 1.2.0 をリリースしました。バージョン 1.1.2 からの変更点は以下の通りです。
- プラグインの名前を nonce_please.php ファイルに従って「Nonce, Please!」としました。「Nonce! Please」は間違いとします。
- エラーメッセージが翻訳されるようになりました。
- ベラルーシ語(be)の翻訳を追加しました。
- プラグインURIのURLを修正しました。
- 言語リソースのディレクトリー名を「lang」から「languages」に変更しました。
- 管理パネルでプラグイン情報 (説明、作者名など) が翻訳されない問題を修正しました。
今回はローカライズ回りの変更です。エラーメッセージの翻訳追加、ベルラーシ語(!)の翻訳追加です。この調子でどんどん言語リソースが増えるといいですね。
スパム軽減プラグイン Nonce! Please 1.1.2 リリース
スパム軽減プラグイン「Nonce! Please」のバージョン 1.1.2 をリリースしました。バージョン 1.1.1 からの変更点は以下の通りです。
- 標準のパーマリンク (?p=NNNN 等) を使っているとき、トラックバック URL の表示で HTML 文法違反になっていたのを修正しました。
機能的な変更点は上記の1点だけです。しかし、プラグイン管理パネルでの説明文がローカライズ (日本語化) されたり、プラグインの配布サイトを WordPress 公式プラグインディレクトリーに変更して、そこに利用例の画面を載せたり、プラグイン作者のサイト URL を英語サイトに変更したりと、機能にはあまり関係ない点が大きく変わっています
Nonce! Please を公式プラグインディレクトリーで公開
昨年のプラグインコンペティションに提出したスパム軽減プラグイン「Nonce! Please」を公式プラグインディレクトリーにて公開しました。これにより、WordPress の管理パネルでも更新が随時公開されるようになります。これで全世界(!)の人に使ってもらえるわけで、どういう反応が返ってくるか、非常に楽しみです。
同時に、新バージョンである 1.1.1 を公開しています。これは 1.1.0 に対するバグ修正となっています
スパム軽減プラグイン Nonce! Please 1.1.0 リリース
スパム軽減プラグイン「Nonce! Please」のバージョン 1.1.0 をリリースいたします (日本語説明)。バージョン 1.0 からの変更点は以下の通りです。
- ログインユーザーに対するコメント投稿はノンスのチェックを行わないことにしました。これにより、管理パネルでのコメント返信でエラーが出なくなり、コメントできるようになります。
今回は WordPress 2.7 対応です。実は1月末には完成していたんですが、公式プラグインディレクトリーに登録しようとして放置状態になっていました。申請は通っているので、あとは Subversion リポジトリーに入れるだけですが、Subversion は慣れてないので、作業がすすんでいません。とりあえず、当サイトでの公開・配布をすることにします。

yuriko-wp-ドメイン名、というアドレス
ウェブサイト/ウェブログのオーナーさんで、わたしのコメントを頂いた方はご存知と思いますが、メールアドレス必須設定の場合「yuriko-wp-ドメイン名 (あっと) ゆりこねっと」という形式のアドレスを使っています。コメント投稿先が http://www.example.com/ の場合、「yuriko-wp-example.com @ ….」とするわけです。
これは qmail の拡張メールアドレスを使って生成したもので、きちんとメールが届く正当なアドレスなのですが、初めて見る方にはちょっと不思議、ないし不審なものかもしれません。そこで、「問い合わせ」ページに説明を入れて、今後書くコメントは、ウェブ URL の欄にこの問い合わせページのアドレスを書いてみることにします。これで、「何か変なアドレスやなーー」と思った人でも理解しやすくなるかと思います。
同様のテクニックは Gmail のアドレスでも可能です。しかし、Gmail の場合は、そもそもスパムが届かないので、策を講じなくてもいい気がしますね……。

スパム軽減プラグイン Nonce! Please 1.0.0 リリース
WordPress プラグインコンペ用に作っていたプラグインを公開します。名称は「Nonce! Please」をそのまま採用し、説明を「スパム軽減プラグイン」としました。コンペの趣旨に乗っ取り、説明ページを英文の固定ページで作っています。
動作は、コメント/トラックバック受け付け URL に nonce (ランダム文字列) を必須とする、ものです。nonce は12時間ごとに変化するため、スパマーがトラックバック URL を蒐集しても、送信時には無効になっていることが期待されます。コメントも、コメントフォームを使わずに直接 wp-comments-post.php に送信してくるようなものは拒否されるわけです。
リリースに時間がかかったのは単にドキュメントが書けてなかっただけです。今回、えいやっで英作文しまして、とりあえず形にしました。めちゃめちゃ稚拙な英文で恥しいですが、non-native が書く技術文書であれば、うまい/へたはあまり関係ないでしょうし……。
あとは、固定ページの体裁をもうちょっと整えて、コンペに参加するだけですね〜〜。実はもう1本ネタがあるので、これもさっさとでっち上げる予定です。
[追記 22:05] 固定ページは作ってあったものの「非公開」のままでした……。さきほど公開しました。せっかくなので、ダウンロードリンクをこの記事に入れておきます。

コメントスパム対策プラグイン製作中
WordPress プラグインコンペティション用にコメントスパム対策プラグインを作っていますが、当サイトで稼動させてみることにしました。実は旅行記の方で動かしていましたが、そちらはトラックバックがめったに来ないので運用テストにならないのです
すでに発表している「短かいコメントを拒否するプラグイン Reject Short Comments」とは違う発想のプラグインで、コメントやトラックバック用 URL に _wpnonce
引数を付けるという仕組みです。WordPress はコメントやトラックバック受け付け URL が決め打ちのため、スパマーにとっては元記事を見ずにいきなりスパムを送り付けることが可能です。これを防ぐため、トラックバックURLをランダム化したり、コメントフォームの隠しフィールドとして _wpnonce を入れるという対策を行うものです。名前は安直に「nonce, please!」とする予定です。
この対策は万全なものでなく、あくまで「Akismet をできるだけ起動しなくてすむ」ようにするためものです。このため、Akismet 等、他のプラグインと併用が推奨です。正直なところ、このプラグインの実装は WordPress コアに取り込まれてもおかしくないと思っているぐらいです
まだドキュメントが書けていないので公開はできませんが、近日中にドキュメントを書いて公開する予定です。コンペの規約で、プラグインの紹介は投稿ではなく固定ページで行うこと、となっているので、当サイトで固定ページを増やす方向で検討したいと思います。他のプラグインの紹介も固定ページを作った方がいいのかな??
この手法の問題点は、キャッシュプラグインと相性が悪いということです。_wpnonce の値は半日ごとに変化するため、キャッシュが半日以上有効な場合、すでに無効となった _wpnonce を含むトラックバック URI が表示される可能性があります。したがって、キャッシュプラグインを使う場合は、キャッシュの有効期限を半日未満にしないといけないです。1/4 日 (6時間) 未満というのが安全でしょうか。
[追記] リリースしました。

PCからコメントできませんでした
まことに申し訳ないことに、5月20日ごろから当サイトおよび旅行記でコメントができない状態になっていました。スパム対策のため、「コメント欄に URL しか入ってない」状態のときエラーを出すようにしたのですが、デバッグのため、正しいコメントでも exit()
させていたのを除去し忘れていたのでした。携帯電話は、コメント受付処理が違うためコメント可能だったはずです。
トラックバック・ピンバックが可能だっため、気がつくのが遅れてしまいました。コメントしようとしていた方にはご不便をおかけしておりました。ごめんなさい。
なお、Reject Short Comments にもバグがあって、コメントできない状態になっていた模様です。配布ファイルを差し替えておきました。なんと、テスト方法がミスっていて、配布したファイルはテストが通っていなかった (!) のが原因でした。当サイトだけ特別に wp-comments-post.php をいじっていますが、そこで Reject Short Comments と同じ処理を入れていたため、正しく動いていると勘違いしていたためでした。

短いトラバを拒否するプラグイン Reject short trackbacks 0.72
以前公開した、「内容が短いトラバを拒否するプラグイン」ですが、細かい問題点が見付かりましたので、修正版を公開いたします。
- Akismet をインストールしていると、Akismet によるスパムチェックが先に行なわれてしまう。
- [追記] にある Akismet 対策修正を行うと、Akismet を入れていない場合、コメントを投稿しても「重複するコメントが見付かりました」となって投稿できない。
- 拒否する文字数を48文字に変更。
「旅行記」の方は、もろ2番目の問題にひっかかっていました。どうりでコメントが来ないわけだ……。なお、今回は Telmina 氏による「日本語文字列を含む場合は許容する」パッチは当てていません。必要な方は適宜追加してください。
短いコメントの拒否プラグイン Reject short comments 0.8.0
カテゴリー: WordPressハック
タグ: Reject short comments, スパム, プラグイン, 最新版
以前公開した、「内容が短いトラバを拒否するプラグイン」ですが、コメントスパムにも対応させました。名前も「Reject short comments」に変更しています。
reject-short-commens080.zip (1.2KB)reject-short-commens081.zip (1.2KB)
Akismet と違って、拒否したコメント等は記録に残りません。スパムをデータベースにすら記録させないことが目的なので、誤爆に対しては厳しい対応となっています
とはいえ、まともなトラックバックならば、ある程度の長さがあると思われるので大丈夫でしょう。
[追記 2008-05-25] なんと、コメントが一切できないというバグがあったので、アーカイブを差し替えました。ご迷惑をおかけしました。あと「http:// のリンクが2つ以上あるとエラー」にする仕様になってて凶悪すぎるのでそれもやめました。