Навигация

Движки сайтов
Движки форумов
Движки соц. сетей
Движки торрент трекеров

Реклама

Выбор языка

Russian (ru) Русский язык
English (us) English

Главная страница » DLE -Баг/Фиксы » Защита от массовой рассылки персональных сообщений

Скачать Защита от массовой рассылки персональных сообщений

Последнее время стали поступать сообщения о том что сайты подвергаются массовой рассылке персональных сообщений при помощи спам программ. В новой версии скрипта будут предусмотрены множественные алгоритмы защиты, позволяющие полностью предотвратить данные действия. В текущей версии скрипта существуют два механизма защиты: первый, это включение в настройках групп каптчи для комментариев и персональных сообщений, данный механизм гарантирует полную защиту от имеющихся на данный момент спам программ, второй, это более радикальный способ - отключение в настройкhttp://skripters.com/bugs/6616-zashhita-ot-massovojj-rassylki-personalnykh.htmlах групп разрешение на использование персональных сообщений. Данные методы безусловно обладают своими недостатками, так например многие не хотят включать каптчу для комментариев, хотя мы рекомендуем ее включать для обычных посетителей, т.к. это очень хороший механизм от спама в комментариях.

Для тех кому не подходят данные методы, мы хотим предоставить небольшой временный дополнительный механизм защиты от спама, до тех пор пока не вышла новая версия скрипта.

Итак откройте файл engine/modules/pm.php и найдите:

$stop = "";


добавьте ниже

$id_key = $_POST[$_SESSION['id_key']];            
    if( $id_key == "" or $id_key != $dle_login_hash ) $stop .= "<li>ANTISPAM: User ID not valid</li>";
    if (clean_url($_SERVER['HTTP_REFERER']) != clean_url($_SERVER['HTTP_HOST'])) $stop .= "<li>ANTISPAM: User ID not valid</li>";


далее в этом файле найдите строчки:

if( $config['allow_comments_wysiwyg'] == "yes" ) $tpl->copy_template = "<form  method=\"post\" name=\"dle-comments-form\" id=\"dle-comments-form\" onsubmit=\"document.getElementById('comments').value = tinyMCE.get('comments').getContent(); if(document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || document.getElementById('comments').value == ''){alert('{$lang['comm_req_f']}');return false}\" action=\"\">\n" . $tpl->copy_template . "<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";
    else $tpl->copy_template = "<form  method=\"post\" name=\"dle-comments-form\" id=\"dle-comments-form\" onsubmit=\"if(document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || document.getElementById('dle-comments-form').comments.value == ''){alert('{$lang['comm_req_f']}');return false}\" action=\"\">\n" . $tpl->copy_template . "<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";


замените их на:

$salt = "abchefghjkmnpqrstuvwxyz";
    $random_key = "";
            
    for($i = 0; $i < 8; $i ++) {
        $random_key .= $salt{rand( 0, 23 )};
    }
            
    @session_register( 'id_key' );
    $_SESSION['id_key'] = $random_key;
            
    $random_key = "<input name=\"{$random_key}\" type=\"hidden\" value=\"{$dle_login_hash}\" />";
    
    if( $config['allow_comments_wysiwyg'] == "yes" ) $tpl->copy_template = "<form  method=\"post\" name=\"dle-comments-form\" id=\"dle-comments-form\" onsubmit=\"document.getElementById('comments').value = tinyMCE.get('comments').getContent(); if(document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || document.getElementById('comments').value == ''){DLEalert('{$lang['comm_req_f']}', dle_info);return false}\" action=\"\">\n" . $tpl->copy_template . "{$random_key}<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";
    else $tpl->copy_template = "<form  method=\"post\" name=\"dle-comments-form\" id=\"dle-comments-form\" onsubmit=\"if(document.getElementById('dle-comments-form').name.value == '' || document.getElementById('dle-comments-form').subj.value == '' || document.getElementById('dle-comments-form').comments.value == ''){DLEalert('{$lang['comm_req_f']}', dle_info);return false}\" action=\"\">\n" . $tpl->copy_template . "{$random_key}<input name=\"send\" type=\"hidden\" value=\"send\" /></form>";


Собственно все. Данное решение временное и распространяется на текущие версии спам программ, в новой версии будут разработаны механизмы, обеспечивающие защиту, от любых типов программ. Мы в свою очередь, все равно рекомендуем применять на данный момент для защиты, не вышеуказанный патч, а включение кода безопасности CAPTCHA в настройках групп.
alert Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Печать
Архивы к новости Защита от массовой рассылки персональных сообщений были проверены KIS 2012 и не содержат вирусов! Вы можете скачать Защита от массовой рассылки персональных сообщений бесплатно с файлообменников: letitbit.net, rapidshare.com, rapidshare.ru, depositfiles.com, которые указаны в блоках ссылок этой новости. Задать вопрос о Защита от массовой рассылки персональных сообщений можно публикатору livetver или в комментариях ниже.

Похожие новости:
 
юзерпик
30 ноября 2010 15:28
Комментарий #1

serGUCCI
Группа: V.I.P
Регистрация: 18.02.2010
Коментов: 229
Новостей: 18


мож еще картинку добавить...тип этой


--------------------
   
 
 
юзерпик
30 ноября 2010 17:01
Комментарий #2

Generic
Группа: Гости
Регистрация: --
Коментов: 0
Новостей: 0


Вот спасибо за новость. Сам последнее время страдаю от спама в ЛС.
   
 
alert Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
CloseЗакрыть

Добро пожаловать!


Не забудьте зарегистрироваться.

Опрос

    Ваш движок форума?

    IPB
    DLE forum
    vBulletin
    phpBB
    Другой