先月実施したコメントスパム対策に問題発覚。
// コメントスパム対策の文字列チェック by YANOにおいて、全体の文字種チェックを一発で行う為に改行やTABを削除していたmbereg_replace関数で、pattern文字列の\が重なってなかったのでTABが入っていたらチェックをパスしていた。
define(ANSICHAR_STR,"/^[ -~]+$/");
function IsSpamMessage($string){
// TABや改行を削除
$string = mbereg_replace("[\\s]+", "", $string);
// 全て半角ANSI文字なら1
if (preg_match(ANSICHAR_STR, $string)) {
return 1;
}
else{
return 0;
}
}
というバグでした。