MU:スパムのユーザー登録防止法
-
お世話になっています。
WPをMU化し、BuddyPressを導入しています。
最近になって海外と思われるスパムのユーザー登録が増えました・・・これに対し、何か有効な手段、プラグインなどがありましたら
ご紹介いただきたいです。
よろしくお願いいたします。
-
まず、現在どのような対策(設定。プラグイン等)を入れているか提示したほうがよろしいかと。
まったく何もしていませんか?スパム系は、Akismetを入れているのですが、
Akismetはコメントのスパム対策だけだったようなので、
ユーザー登録に対応するものがあればと・・・そのほかに、めぼしいプラグインは入れておりません。
書き忘れました、WPは現在最新版を導入しております。3.0.4
わたしのトコも被害を受けました。
SI CAPTCHA Anti-Spam(バージョン 2.7.1)で当初は凌いでましたが、
破られてるか、直打ちされてるようで、1日10~20件来てます。SI CAPTCHA Anti-Spam を諦めて、
簡単な計算問題を出すタイプのプラグイン
Block Spam By Math Reloaded ( v.2.1.1 ) に変更し、
私のサイトは、日本人相手なので、半角数字を漢数字に置き換える改造を加えました。
BuddyPressにも対応していますし、携帯対応化を考えるをこちらにしてよかったかなと思ってます。
改造方法を下記に示します。よろしければ、参考にしてください
下記では 例えば 3 を 三 に置き換えてますが
参 や さん 、弐 たす 壱 などにすれば かなりいけるかと思います。
改造後は、UTF-8コードで保存してください######################################## # # Block Spam By Math Reloaded ( v.2.1.1 ) #コメントやユーザー登録の際に、計算式を出すプラグイン # # 半角文字を 漢数字の置き換える # ####################################### # #####---- OPEN -------------------------- #wp-content/plugins/block-spam-by-math-reloaded/block-spam-by-math-reloaded.php # ####------- FIND ------------------------- # Last Line ?> # ## -------- Befoer Add ------------------- # /** * 半角数字を漢数字に変換する(位取り記法) * EX.1,234,567 --> 百二十三万四千五百六十七 * @param string $instr 半角数字 * 小数、負数に対応;指数表記には未対応 * カンマは削除 * @return string 漢数字 *http://www.pahoo.org/e-soul/webtech/php03/php03-05-01.shtm */ function num2kan_decimal($instr) { static $kantbl1 = array(0=>'', 1=>'一', 2=>'二', 3=>'三', 4=>'四', 5=>'五', 6=>'六', 7=>'七', 8=>'八', 9=>'九', '.'=>'.', '-'=>'−'); static $kantbl2 = array(0=>'', 1=>'十', 2=>'百', 3=>'千'); static $kantbl3 = array(0=>'', 1=>'万', 2=>'億', 3=>'兆', 4=>'京'); $outstr = ''; $len = strlen($instr); $m = (int)($len / 4); //一、万、億、兆‥‥の繰り返し for ($i = 0; $i <= $m; $i++) { $s2 = ''; //一、十、百、千の繰り返し for ($j = 0; $j < 4; $j++) { $pos = $len - $i * 4 - $j - 1; if ($pos >= 0) { $ch = substr($instr, $pos, 1); $ch1 = isset($kantbl1[$ch]) ? $kantbl1[$ch] : ''; $ch2 = isset($kantbl2[$j]) ? $kantbl2[$j] : ''; //冒頭が「一」の場合の処理 if ($ch1 != '') { if ($ch1 == '一' && $ch2 != '') $s2 = $ch2 . $s2; else $s2 = $ch1 . $ch2 . $s2; } } } if ($s2 != '') $outstr = $s2 . $kantbl3[$i] . $outstr; } return $outstr; } # ###----- Find ----------------------- # About Line 160 echo ' <div class="question">What is '. $mathvalue0 .' + '. $mathvalue1 .' ?</div> # ## -------- Replace With ------------------- # echo ' <div class="question">計算問題 '. num2kan_decimal($mathvalue0) .' + '. num2kan_decimal($mathvalue1) .' は?(半角数字で)</div> # ## -------- Save by the UTF-8 Code!!! ------------------- #
utakaさん、こんにちは。
お教えのように、変更して、UTF-8で保存し、アップ(上書き)しました。
ありがとうございます。プラグインの設定で、
“Message Settings”の所は、入力できない状態なので、
v.2.2.2 の 45行目辺り。BSBM_NOTICE_MESSAGEですが、define ('BSBM_NOTICE_MESSAGE','簡単な足し算にお答え下さい。そうしないとコメントを投稿できません。(半角数字でお願いします。):-)');
として、利用しています。
大変貴重なカスタマイズ情報をありがとうございました。
これで、スパム対策が出来ました。(^o^)
- トピック「MU:スパムのユーザー登録防止法」には新たに返信することはできません。