Yuriko.Net 個別記事

2008-07-07
くもり一時雨

スパム軽減プラグイン Nonce! Please 1.0.0 リリース

ゆりこ による 06:15:14 の投稿
カテゴリー: WordPressハック
タグ: , , ,

WordPress プラグインコンペ用に作っていたプラグインを公開します。名称は「Nonce! Please」をそのまま採用し、説明を「スパム軽減プラグイン」としました。コンペの趣旨に乗っ取り、説明ページを英文の固定ページで作っています。

動作は、コメント/トラックバック受け付け URL に nonce (ランダム文字列) を必須とする、ものです。nonce は12時間ごとに変化するため、スパマーがトラックバック URL を蒐集しても、送信時には無効になっていることが期待されます。コメントも、コメントフォームを使わずに直接 wp-comments-post.php に送信してくるようなものは拒否されるわけです。

ダウンロード: nonce_please100.zip (11.4KB)
より新しいバージョンが出ています。

リリースに時間がかかったのは単にドキュメントが書けてなかっただけです。今回、えいやっで英作文しまして、とりあえず形にしました。めちゃめちゃ稚拙な英文で恥しいですが、non-native が書く技術文書であれば、うまい/へたはあまり関係ないでしょうし……。

あとは、固定ページの体裁をもうちょっと整えて、コンペに参加するだけですね〜〜。実はもう1本ネタがあるので、これもさっさとでっち上げる予定です。

[追記 22:05] 固定ページは作ってあったものの「非公開」のままでした……。さきほど公開しました。せっかくなので、ダウンロードリンクをこの記事に入れておきます。

トラックバック・コメント »

  1. [...] スパム軽減プラグイン Nonce! Please 1.00 リリース [...]

  2. トラックバックスパム対策プラグイン 入れてみた

    NetFrameworkのオラクルがらみコンポーネント作成に,飽きたので

    ゆりこ様のとこの,トラックバック対策プラグイン,入れてみることにした

    プラグインはこちら

    スパム軽減プラグイン …

    吟遊詩人の戯言からのトラックバック
  3. スパム軽減プラグイン Nonce!Please 1.00

    コメントやトラックバック受付にランダム文字列を必須とする。
    プラグインです。
    ランダム文字列は定期的に変更されるため
    ランダム文字列が同じでないと
    コメントやトラックバック…

    かんのものおきからのトラックバック
  4. 少し改造して使わせていただいています。
    便利なプラグインありがとうございます。

    WP2.7-MUだと、管理画面からコメントができるのですが、
    そっちからのコメントがはじかれてしまうようです。
    ご確認いただけると嬉しいです。

    すいませんが、よろしくお願いいたします。

    kousukeからのコメント
    • kousuke さん:

      WP2.7-MUだと、管理画面からコメントができるのですが、
      そっちからのコメントがはじかれてしまうようです。

      はい、WordPress 2.7/WordPress MU 2.7 からの管理画面でのコメント返信機能ではコメントがブロックされてしまいます。

      修正方法はすでに判明していて、当サイトでは運用中なんですが、公式プラグインディレトリーに登録して公開しようと思っているので、作業が遅れています。近日中には作業しますので、しばらくお待ちください。3連休中に作業が無理そうならば、とりあえず当サイトで公開することにします。

      • ありがとうございます。手元のpluginも同様の方法で管理画面からもコメントできるようにしていました。
        バージョンアップしたいと思います。

        ちなみにデフォルトの状態だけでは結構スパムがくるので、手もとのファイルでは、

        echo 'create_anon_nonce(COMMENT_NONCE_ACTION . $post_id) . '" />';

        echo '';
        echo 'document.forms["commentform"].' . NONCE_FIELD . '.value = "' . $this->create_anon_nonce(COMMENT_NONCE_ACTION . $post_id) . '";';

        な感じでJS必須にしています。これをすることで、うちはスパムゼロになりました。

        kousukeからのコメント
        • コード部分を code 要素に入れてみました。

          な感じでJS必須にしています。

          JavaScript が動くかどうかのチェックは、他のスパム対策プラグインでも利用している例がありますね。個人的には、JavaScript を要求することは酷だと思うので、実装していません。セキュリティー対策で NoScript アドオンを使っている人や、ドコモと au 携帯でのコメントができなくなるという副作用があるので、これを許容できるかどうか、が判断基準となるでしょう。

  5. [...] Nonce! Please [...]

  6. [...] Nonce! Please [...]

  7. [...]  そんなことで、今日のところは、Nonce, Please! (http://www.yuriko.net/arc/2008/07/07/nonceplease100/) というプラグインをいれて様子を見るかということで、作業を終了しました。 [...]

上に戻る

※スパム対策プラグインの影響により、すぐにトラックバックが反映されない場合があります。お手数ですが、半日ほど待ってみてください。

コメント投稿

※発言の責任を明確にするため「名無し」「通りすがり」「匿名希望」等の匿名は不可とします。捨てハンドルでもいいので必ず名乗ってください。
XHTML (使えるタグ): <a href="" title="" ktai=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt=""> .
※スパム対策プラグインの影響により、すぐにコメント内容が表示されない場合があります。お手数ですが、半日ほど待ってみてください。

上に戻る