◇◇ お知らせ ◇◇
< 2005.1.27 >
●blosxomプラグインを公開中。スパム対策用の拡張スパムブロッカーとリロード時の2重投稿防止対策のプラグインはお勧めです。最新版はブロッサムスターターキット研究室からリンクを張ってあります。
Nov 17, 2005
ログ記録制限に問題か?
リファラスパムのログ記録の問題は、サーバーの問題ではなく処理的な問題の様な気がしてきました。
どうもログ記録制限をかけている所の処理を変えなくてはいけないと思います。
今の所、リファラスパムのログだけで症状が見えていますが、通常のスパムのログも同じ症状が起きる可能性が有りそうです。
とりあえず症状が起きている実験ブログのログ記録制限を止めてみました。
これで暫く様子を見てみましょう。
Nov 15, 2005
バグかサイトの問題か?
スパムブロッカーをずっとデバッグしているのだが、どうしてもバグが見つけられない状況が続いています。
不具合の症状は、
1)コメント等のスパムが来たときのメール通知を忘れる事が有る。
2)リファラスパムのログが壊される事が有る。(頻度はかなり高い)
の2点です。
1)については、writebackについても起きているし、kentさんの所からいただいてきたBBSでも起きていますので、おそらくサーバー側の問題と思っています。
2)については、バグだろうと思っていろいろ調べているのですが、原因が見つからない状況。でも、現時点ではやはりサーバー側の問題のような気がしています。今はログの記録制限の為に一旦ログをサーバー上のメモリに展開して、記録数の上限を超えていたら、古い物を削除してファイルに書き戻す処理をしているのですが、これがうまく機能している場合も有るが駄目な場合も有るという状況なのです。サーバー上のメモリに展開されている時にサーバー側で何かエラーが出たら展開内容をファイルに書き戻す時に壊れてしまってもおかしくありません。そういう事が起きているのではないかと今は思っていますが、調査出来ない状況です。
うーん、困りました。...。...。どうしましょうかねー。
いずれにしてもすぐに原因を掴んで対策する事は難しい状況です。
仕方ないので、まだ、暫く悩む事にします。
Nov 09, 2005
最近来ているスパマーの場合
コメント投稿ページを開いてから投稿までの間は1-5秒です。
つまり、ページ情報取得 ⇒ 情報取得 ⇒ テンプレートに載せてスパム投稿 を自動的に実行しているという事なんですね。
ダイナミックパスワードでは投稿として許可している時間は可変出来るのですが、デフォルトは10秒に設定しているから、全て弾いてます。
他のスパマーが同じ手口がどうかは不明です。
Nov 08, 2005
ccTLD check
以前、カントリーコードチェックというのを入れていたが、これは.jp以外のトップレベルドメインをスパムとして弾く様にしていたので、.com等も全て弾く為、弊害が大きすぎて仕様から削除しました。
で、今回は、TLDが2文字の物だけをチェック対象とし、かつ、ホワイトカントリーリストに登録されているコード以外をスパムとして弾く様にします。 ですので、.com等の3文字系はスパム対象外となります。
効果はそれなりにあります。実験ブログの方へはマレーシアとかから結構来てますので、これにより弾かれるリファラスパムがかなりあります。
とりあえず、これで今の所追加するスパムチェックは終わりです。
まだもう少し手直ししたいのと、ちょうど最近スパムが活発に来ているので、いいデバッグ環境になっているため、暫くデバッグを続ける事になります。ですので、リリースはまだ先になります。
Nov 02, 2005
ダイナミックパスワードをログに記録
ダイナミックパスワード効いてますが、ページ作成直後とページ作成1日後以上のどちらで弾いたか、現状では区別がつきませんので、ダイナミックパスワードをログ記録項目に追加する事にしました。
おそらく、以前に入手したページ情報を使っていてパスワードはついていないような気がしますが...。
次のスパムが待たれます。
Oct 31, 2005
バグ報告(2)
スパムブロッカーでいくつか別のバグを見つけたので報告。
JIS文字コードのメッセージを弾いた場合、UTF-8への文字コード変換が出来ず文字化け。JISでブログやっている人はまずいないと思うので、問題にはならないと思うが...。
ログのコメント部分、改行が余分だった。 ログから復活させる場合、改行から後ろが切れてしまうか?
version1.00より直しておきます。
Oct 30, 2005
禁止キーワードチェック改良(2)
禁止ワードとして、前後に'-'を、前だけに'='をつけるのが有効と考えています。例えば、buyを単純に禁止ワードに設定すると、その単語は使えないです。
そこで、 -buy, buy-, =buy のみを禁止ワードに設定します。 (私の所に来るスパマーは、そのような禁止ワードで十分対応出来るのでそうしていますが、ひょっとしたら一般的では無いかもしれません。) で、同じような禁止ワードをその度に書くのは嫌なので、スクリプトを変更して、buyを登録すると、上記の3つだけを禁止ワードに追加する様に改良しておきました。この処理をせずにダイレクトに禁止ワードを指定する部分はそのまま残っていますので、この処理をしたい禁止ワードを指定する変数を追加したという事です。
って、書いても分からないかも。ごめん。私のメモのようなエントリです。
Oct 29, 2005
禁止キーワードチェック改良
禁止キーワードを見直しています。
私が禁止キーワード有効と考えているのは、URLとリファラです。
URLはコメントやトラックバックで投稿されるとリンクを貼る仕様になっていますので、(IPアドレスやリファラを偽造しても)スパマーはここには誘導したい正しいURLを書きますので、ここへの禁止ワードチェックが有効なのです。
リファラは訪問者のリファラを表示するサイトではリンクが貼られる様になっているので、リファラスパマーは、(IPアドレスは偽造しても)リファラには正しいURLを書いて、表示されるリンクから自ブログへ誘導しようとしますので、リファラへの禁止ワードが有効です。っていうか、実際に実験サイトの方へ暫く前からずっと定期的にリファラスパマーがリファラスパムを置いて行くのですが、非常に効果的です。
逆に言えば、他の記入欄への禁止ワードはあまり必要が無い。 やってもいいが、よっぽど多くの禁止ワードを用意しないと効果は薄いし、その弊害として通常投稿を阻害する可能性すら有る。
そこで、URLとリファラ以外では禁止ワード効かなくする設定を可能(デフォルトにします)としました。
おそらく、このバランスで使うのが最もいいと思っていますが、運用の中で変えていくかもしれません。
Oct 28, 2005
バグ報告
リファラスパム対策の為に、'referrer' => 1 と初期設定を変え、更に、$notify_mail=1としてメールを送る設定にすると、リファラスパムを捕まえる毎にメールを送って来ます。
おそらく、そういう設定で使っている人はいないと思いますが、一応報告しておきます。
次のSBのV1.00で修正します。
急ぎで直したい方がいるようなら、パッチを公開しますので、このエントリにコメントでオーダー下さい。
Oct 27, 2005
やっと来ましたスパムさん
昨日、夕方4時半頃から断続的に(といっても8回ですが...)コメントスパムが来ていました。ゲストブックとコメント投稿の2種類の投稿でスパムを送って来ています。
おかげでスパムブロッカーV1.00アルファー版フルチェックでの効果確認が出来ました。
スパムチェックは6種類で引っかかっていました。新しく作ったダイナミックパスワードでも引っかかっていますが、リファラやランゲージ等でも引っかかっています。リファラを偽造しないようなスパマーなので、あまりレベルが高いスパマーでは無さそう。でも、効果は十分ですね。