- 14, Oct 2011
- #1
DataLife Engine как бы один из самых распространенных движков, который пользуют вебмастера. Ну и DataLife Engine несмотря на все его достоинства имеет и недостатки, которые частично решаются в поздних версиях, но все равно не полностью.
DataLife Engine или DLE это один из самых уязвимых движков для Хруммера, ну и для ботов, которые хотят воткнуть ссылку или в профиль, или в комментарий.
Эта тема посвящена защите DLE от комментов
Прежде чем приступить к защите уясните, что ковыряем исходные файлы двигла, и при обновлении это работать перестанет, потому как старый файл поменяется на новый! Ищем файл по пути: engine/modules/addcomments.php
Находим:
Ниже вставляем:
Находим:
Ниже добавляем:
Находим:
Ниже добавляем:
Скрытая информация :: Авторизуйтесь для просмотра »
Прежде чем приступить к защите уясните, что ковыряем исходные файлы двигла, и при обновлении это работать перестанет, потому как старый файл поменяется на новый! Ищем файл по пути: engine/modules/addcomments.php
Находим:
if( strlen( $name ) > 50 ) {
$stop[] = $lang['news_err_1'];
$CN_HALT = TRUE;
}
Ниже вставляем:
if (preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['comments']) || preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org/i", $_POST['name']))
{
$stop[] = "Спам ссылок в комментах у нас на сайте запрещен!!";
$CN_HALT = TRUE;
}
В итоге у бота поставить ссылку в комментах не получится
Можно написать вместо "Спам ссылок в комментах у нас на сайте запрещен!" - Пошел на ***, ну или еще чего нибудь
Запрещаем ссылки в профиле
Ищем файл по пути: engine/modules/profile.php
Находим:
if (strlen($info) > 1000)
{
$stop .= $lang['news_err_22'];
}
Ниже добавляем:
if (preg_match ("/href|url|http|www|.ru|.com|.net|.info|.org/i", $_POST['info']))
{
$stop .= $lang['news_err_url'];
}
Все
Запрещаем ссылки при регистрации
Идем по пути: engine/modules/register.php
Находим:
if (strlen($info) > 500) $stop .= $lang['reg_err_14'];
Ниже добавляем:
if (preg_match ("/href|url|http|www|.ru|.com|.net|.info|.org/i", $_POST['info'])) $stop .= $lang['news_err_url'];
И еще... форум может некоректно сохранять коды при копировании из темы. Вся инструкция в блокноте. Так что скачивайте, и вперед на войну с ботами :good:
Скрытая информация :: Авторизуйтесь для просмотра »