• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Хак Смена адреса регистрации (антиспам)

fumofuuu

Мой дом здесь!
Регистрация
24 Сен 2011
Сообщения
334
Реакции
264
2013-02-06_085918.jpg
Представляю Вашему вниманию неплохой хак от массовой регистрации ботов и спама, проделав небольшую правку кода, Вам удастся на кое какое время избавится от массовой регистрации ботов и спама на Вашем сайте.

Для того, чтобы полностью и правильно поменять адрес странички регистрации с, например, http://домен/?do=register на http://домен/?do=my_reg, необходимо произвести такие изменения в файлах DLE:

Автор: ZEOS.IN

Кому нужна админка: by vitnet
Открываем engine/inc/options.php находим:
PHP:
showRow( $lang['opt_sys_ut'], $lang['opt_sys_utd'], makeDropDown( array ("0" => $lang['opt_sys_reg'], "1" => $lang['opt_sys_reg_1'] ), "save_con[registration_type]", "{$config['registration_type']}" ) );

Ниже прописываем:
PHP:
showRow( "Ссылка на страницу регистрации", "Укажите желаемое имя страницы регистрации", "<input class=\"edit bk\" type=text style=\"text-align: center;\"  name='save_con[register]' value=\"{$config['register']}\" size=10>" );

То что надо изменить ещё:
Код:
Изменяем адрес странички регистрации | Временно избавляемся от массовой регистрации ботов и спама
 
Для того, чтобы полностью и правильно поменять адрес странички регистрации с, например, http://домен/?do=register на http://домен/?do=my_reg, необходимо произвести такие изменения в файлах DLE:
 
 
1)    Открыть файл: /engine/data/config.php и в массив $config в самом низу добавить: 'register' => "my_reg",
 
    Было
    ...
 
    'rss_number' => "10",
 
    'rss_format' => "1",
 
    'version_id' => "9.7",
 
    );
 
    ?>
 
 
    Стало
    ...
 
    'rss_number' => "10",
 
    'rss_format' => "1",
 
    'version_id' => "9.7",
 
    'register' => "my_reg",
 
    );
 
    ?>
 
    Вместо слова "my_reg" используйте любое другое слово (оно должно быть уникальным для вашего сайта).
 
 
2)    В файле /engine/init.php найти строчку:
 
    $tpl->set( '{registration-link}', $PHP_SELF . "?do=register" );
    и заменить на:
    $tpl->set( '{registration-link}', $PHP_SELF . "?do={$config['register']}" );
 
 
3)    В файле /engine/engine.php найти строчки:
 
    case "register" :
    и заменить на:
    case $config['register'] :
 
 
    elseif ($do == 'register') $nam_e = $lang['title_register'];
    и заменить на:
    elseif ($do == $config['register']) $nam_e = $lang['title_register'];
 
 
4)    В файле /engine/modules/static.php найти строчки:
 
    if( $_GET['page'] == "dle-rules-page" ) if( $do != "register" ) {
    и заменить на:
    if( $_GET['page'] == "dle-rules-page" ) if( $do != $config['register'] ) {
 
 
    $tpl->set( '{ACCEPT-DECLINE}', "<form  method=\"post\" name=\"registration\" id=\"registration\" action=\"\"><input type=\"submit\" class=\"bbcodes\" value=\"{$lang['rules_accept']}\" />&nbsp;&nbsp;&nbsp;<input type=\"button\" class=\"bbcodes\" value=\"{$lang['rules_decline']}\" onclick=\"history.go(-1); return false;\" /><input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" /><input name=\"dle_rules_accept\" type=\"hidden\" id=\"dle_rules_accept\" value=\"yes\" /></form>" );
    и заменить на:
    $tpl->set( '{ACCEPT-DECLINE}', "<form  method=\"post\" name=\"registration\" id=\"registration\" action=\"\"><input type=\"submit\" class=\"bbcodes\" value=\"{$lang['rules_accept']}\" />&nbsp;&nbsp;&nbsp;<input type=\"button\" class=\"bbcodes\" value=\"{$lang['rules_decline']}\" onclick=\"history.go(-1); return false;\" /><input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" /><input name=\"dle_rules_accept\" type=\"hidden\" id=\"dle_rules_accept\" value=\"yes\" /></form>" );
 
 
5)    В файле /engine/modules/register.php найти строчки:
 
    $row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "index.php?do=register&doaction=validating&id=" . $idlink, $row['template'] );
    и заменить на:
    $row['template'] = str_replace( "{%validationlink%}", $config['http_home_url'] . "index.php?do={$config['register']}&doaction=validating&id=" . $idlink, $row['template'] );
 
 
    <input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" />
    и заменить на:
    <input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" />
 
 
    msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href=\"" . $config['http_home_url'] . "index.php?do=register&doaction=validating&step=2&id=" . rawurlencode( $_REQUEST['id'] ) . "\">" . $lang['reg_next'] . "</a>" );
    и заменить на:
    msgbox( $lang['all_info'], $lang['confirm_ok'] . "<br /><br /><a href=\"" . $config['http_home_url'] . "index.php?do={$config['register']}&doaction=validating&step=2&id=" . rawurlencode( $_REQUEST['id'] ) . "\">" . $lang['reg_next'] . "</a>" );
 
 
    <input name=\"do\" type=\"hidden\" id=\"do\" value=\"register\" />
    и заменить на:
    <input name=\"do\" type=\"hidden\" id=\"do\" value=\"{$config['register']}\" />
 
6)    В файле /robots.txt найти строчку Disallow: /*do=register и удалить ее.
 
7)    Из всех файлов шаблона удалить старую ссылку на страницу регистрации, а в шаблоне login.tpl использовать тег {registration-link} (подробнее: http://dle-news.ru/extras/online/logintpl.html) для вывода нашей новой ссылки для регистрации.
 
Рекомендации:
 
I)
    Если вы на своем сайте используете reCAPTCHA, то обязательно создайте для этой капчи персональный публичный и приватный ключи.
    Сгенерировать ключи для своего сайта можно тут: http://www.google.com/recaptcha
    После того, как ключи сгенерированы, их надо вставить в админке DLE в разделе "Настройка системы/Настройки безопасности скрипта".
 
II)
    Обязательно используйте возможность стандартного модуля DLE - Вопросы и ответы для защиты от спама ( _http://ваш_домен/admin.php?mod=question ).
 
III)
    Включайте возможность комментирования новостей только зарегистрированным пользователям. Или вставляйте на свой сайт комментирование от Вконтакте и Facebook.
 
IV)
    Используйте стандартные функции DLE:
 
    * Отправлять комментарии на модерацию
    * Максимальное количество комментариев в сутки
    * Автоматическое удаление зарегистрированных пользователей
    * Разрешить регистрацию нескольких пользователей с одного IP
    * Ограничение на добавление комментариев на сайте после регистрации
    * Автоматический запрет комментирования новости по истечении указанного срока
    * Защита от флуда
    и другие.

Внимание! Регистр ссылки должен быть маленький, иначе ссылка не будет работать.
Не правильно: NuLLedCc
Правильно: nulledcc
 
на каких версиях будет работать данный хак? Интересует 9.7-9.8
 
Назад
Сверху