Android
Хранитель порядка
- Регистрация
- 9 Июн 2006
- Сообщения
- 682
- Реакции
- 660
- Автор темы
- #1
Ну что сказать проходят боты уже и модифицированую капчу и дополнительные поля, хотя мод с вопросом отсекает большую часть спам-ботов.
Вообщем нашел очень интересную штуку, база айпишников и мыл спамеров:
Для просмотра ссылки Войдиили Зарегистрируйся
У них есть свой APIs, суть сводится к тому что Вы можете встроить проверку по ip, мылу или никнейму на приналежность к спамерской сети, т.е. отсеивание идет во время регистрации. Я проверил нескольких спамеров которые прошли защиту форума, они были в базе stopforumspam. Думаю комбинация рекапчи и скрипта проверки ip и mail от stopforumspam должен свести спамерские атаки на нет =).
Проверка может выполнятся так:
* Для просмотра ссылки Войдиили Зарегистрируйся
* Для просмотра ссылки Войдиили Зарегистрируйся
* Для просмотра ссылки Войдиили Зарегистрируйся
А можно использовать скрипт чтобы встроить в регистрацию на форуме:
Для просмотра ссылки Войдиили Зарегистрируйся
Вообщем нашел очень интересную штуку, база айпишников и мыл спамеров:
Для просмотра ссылки Войди
У них есть свой APIs, суть сводится к тому что Вы можете встроить проверку по ip, мылу или никнейму на приналежность к спамерской сети, т.е. отсеивание идет во время регистрации. Я проверил нескольких спамеров которые прошли защиту форума, они были в базе stopforumspam. Думаю комбинация рекапчи и скрипта проверки ip и mail от stopforumspam должен свести спамерские атаки на нет =).
Проверка может выполнятся так:
* Для просмотра ссылки Войди
* Для просмотра ссылки Войди
* Для просмотра ссылки Войди
А можно использовать скрипт чтобы встроить в регистрацию на форуме:
Для просмотра ссылки Войди
PHP:
function checkSpambots($mail,$ip,$name){
$spambot = false;
//put the main domains in the array
$main_domains = array('mail.ru','bigmir.net');
//check the e-mail adress
$xml_string = file_get_contents('http://www.stopforumspam.com/api?email='.$mail);
$xml = new SimpleXMLElement($xml_string);
if($xml->appears == 'yes'){
$spambot = true;
}elseif($spambot != true){
//e-mail not found in the database, now check the ip
$xml_string = file_get_contents('http://www.stopforumspam.com/api?ip='.$ip);
$xml = new SimpleXMLElement($xml_string);
if($xml->appears == 'yes'){
$spambot = true;
}
}
//check the main domains if there is still no spammer found, you can add more if you want in the $main_domains array
if($spambot != true){
for($i = 0; $i < count($main_domains); $i++){
if(ereg($main_domains[$i],$mail) == 1){
$spambot = true;
}
}
}
// create an .txt file with the info of the spambot, if this one already exists, increase its amount of try's
if($spambot == true){
if(file_exists('spambots/'.$mail.'.txt')){
$spambot_old_info = file_get_contents('spambots/'.$mail.'.txt');
$spambot_old_info = explode(',',$spambot_old_info);
$spambot_old_info[2] = $spambot_old_info[2]+1;
$spambot_old_info = implode(',',$spambot_old_info);
file_put_contents('spambots/'.$mail.'.txt',$spambot_old_info);
}else{
$spambot_info = $ip.','.$name.',1';
file_put_contents('spambots/'.$mail.'.txt',$spambot_info);
}
}
return $spambot;
}