Перейти к публикации

Китайские боты проходят регитсрацию.


Рекомендованные сообщения

если поменять адрес регистрации

Да, но это уже модификация и нужно постоянно носить обновления.... А хочется иметь штатно...

Ссылка на сообщение
Поделиться на других сайтах

неважно, главное что это работает

если это будет штатно, то изменят алгоритм бота и он будет находить страницу с регистрацией

а щас он тупо лезет на do=register

Ссылка на сообщение
Поделиться на других сайтах

то изменят алгоритм бота и он будет находить страницу с регистрацией

Я выше накидал примерный алгоритм регистрации который хочется реализовать штатно, что-бы отсеять ботов.

Ссылка на сообщение
Поделиться на других сайтах

если поменять адрес регистрации, то все боты отсеятся, проверено уже несколько месяцев не нескольких сайтах с посещалкой до 60к в сутки.

как менять адрес регистрации - подробно расписывал Zeos

а можно ссылочку на это дело?

Ссылка на сообщение
Поделиться на других сайтах

то изменят алгоритм бота и он будет находить страницу с регистрацией

Я выше накидал примерный алгоритм регистрации который хочется реализовать штатно, что-бы отсеять ботов.

Что толку от JS алгоритма, если боты не используют браузер

Ссылка на сообщение
Поделиться на других сайтах

вот ссылка:

http://forum.dle-news.ru/index.php?showtopic=62184&hl=&fromsearch=1

еще раз повторюсь, работает просто на ура.

Ссылка на сообщение
Поделиться на других сайтах

Вот это "работает просто на ура" надо реализовать в новой версии как: "впишите название страницы регистрации", как пункт защиты в админке. И возможность менять адрес страницы когда захочется, что бы увиливать от просекания ботами таковой страницы.

Ссылка на сообщение
Поделиться на других сайтах

Что толку от JS алгоритма, если боты не используют браузер

В этом вся и суть. Почитайте про алгоритм. ;) Как раз через JS и создавать+передавать уникальный ID, что бот не сможет распознать и сделать.

Ссылка на сообщение
Поделиться на других сайтах

Как раз через JS и создавать+передавать уникальный ID, что бот не сможет распознать и сделать.

Ну кто вам это сказал, что боты не могут это сделать? Защита на JS может быть эффективна только до тех пор пока бот не обучен ей. Т.е. до тех пор пока она уникальна, она эффективна, как только она будет в стандартном дистрибутиве, обучить бота под это не составляет никакого труда. Просто то что под ваш сайт будут переучивать ботов, вероятность крайне низка. Под стандартный дистрибутив ботов перепишут через 5 минут.

Ссылка на сообщение
Поделиться на других сайтах

я против, потому что читайте выше почему ;)

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

если это будет штатно, то изменят алгоритм бота и он будет находить страницу с регистрацией

а щас он тупо лезет на do=register

Я имею ввиду, что не при каждом обновлении вносить изменения в коды файлов, а ужЕ внести их в дистрибутив и менять только (!) вот это:

Открыть файл: /engine/data/config.php и в массив $config в самом низу добавить: 'register' => "my_reg",

###################################################

'register' => "my_reg",

);

?>

Вместо слова "my_reg" используйте любое другое слово (оно должно быть уникальным для вашего сайта)

Ведь мы же используем возможность менять название файла админки admin.php, почему же не можем так же менять под свое название файл регистрации (если вообще боты пользуются им при проникновении в БД, здесь еще разбираться надо...)?

Изменено пользователем alternativa
Ссылка на сообщение
Поделиться на других сайтах

alternativa,

Если это будет в дистрибутиве, то научить парсить ссылку на регистрацию непосредственно с сайта, не составить никакого труда. И тогда весь этот метод станет бессмысленным.

Ссылка на сообщение
Поделиться на других сайтах

Простите, я не разбираюсь в php, просто идея - привязать к имени домена (все же разные), ну префикс какой например (вместо "index.php?do=register", index.php?do=домен_register) и т.д.

Ссылка на сообщение
Поделиться на других сайтах

если поменять адрес регистрации, то все боты отсеятся, проверено уже несколько месяцев не нескольких сайтах с посещалкой до 60к в сутки.

как менять адрес регистрации - подробно расписывал Zeos

При всём своём уважении к Zeos, то, что он предложил - полное дерьмо! :)

Умопомрачительно много изменений! И все в ядре...

Уже давно пора отучить себя вносить изменения в код DLE, иначе сами себе прибавляете работы при обновлении движка.

В качестве альтернатичного решения, предложу следующий грязный хак:

В файл шаблона registration.tpl в самый вверх пишем


{include file="/_dle_ext/connector.php?act=registration"}

Путь и имя файла на ваше усмотрение. У меня эта папка в корне с названием _dle_ext, для всяческих экстеншенов. Все изменения только там)) Файл connector.php это реально коннектор между моими классами и методами с DLE. Внутри этого файла switch переменной $act, которая приходит из шаблона. Так вот для вашего случая сойдёт и такой упрощённый код:

if($act == 'registration' && (!isset($_GET['hash']) || $_GET['hash'] != '555')){

die;

}

Соответственно делаем ссылку на регистрацию такой: index.php?do=register&hash=555

При желании, можете генерировать hash динамически, скажем на основе данных посетителя.

Почему хак грязный? Я не сторонник убивать страницу и показывать белый экран. Этот код я написал только что специально для решения вашей проблемы. Но у вас есть возможность сделать свой экшн, например редирект на страницу 404 или показать другой шаблон (для этого используйся прямо в файле connector.php переменную $this - это и есть класс $tpl (поскольку мы инклудимся напрямую из него)

Вот и всё, пис! ;)

Изменено пользователем Александр Медведев
Ссылка на сообщение
Поделиться на других сайтах

Я не сторонник убивать страницу и показывать белый экран.

Ну можно и die('stop spam...'); :)

Спасибо, простенько и со вкусом.

Ссылка на сообщение
Поделиться на других сайтах

alternativa,

какие страницы проиндексированы поисковиками, о чем вы?

страница регистрации не индексируется поисковиками, она закрыта в роботсе

это раз

а даже если она проиндексировалась, то какая разница, если выпадет из индекса? это бесполезная страница в плане оптимизации, это два.

Изменено пользователем prikindel
Ссылка на сообщение
Поделиться на других сайтах

Да как же?

Если страницы проиндексированы как www.site.ru/stranitca1.html, то www.site.ru/bla-bla-bla/stranitca1.html - это ужЕ другой адрес? Или не так?

Уважаемые. Я не силен в php, и могу только четкие инструкции исполнить. Вот это кто нибудь пошагово разжует?

В качестве альтернативного решения, предложу следующий грязный хак:

Например:

создаем папку _dle_ext, там создаем файл connector.php - с содержимым



if($act == 'registration' && (!isset($_GET['hash']) || $_GET['hash'] != '555')){

die;

}

далее делаем ссылку регистрации как index.php?do=register&hash=555

... и т.д.

Если поможет, то радости не будет предела.

Изменено пользователем alternativa
Ссылка на сообщение
Поделиться на других сайтах

alternativa,

не понял, зачем вы приводите этот пример, если речь идет сугубо о странице регистрации, где связь?

Ссылка на сообщение
Поделиться на других сайтах

alternativa, то есть ты уже всё попробывал, не получается и ты пишешь сюда, так?)

да, я делал изменения по рекомендациям Zeos-а, и вроде получилось только в файл login.tpl тег {registration-link} работает, в других местах шаблона почему то не работает. И мне это не удобно. + я прикинул, что при каждом обновлении такую операцию придется каждый раз заново совершать, тоже, согласитесь, не очень удобно.

alternativa,

не понял, зачем вы приводите этот пример, если речь идет сугубо о странице регистрации, где связь?

Прочитайте нашу переписку на 1-й странице (в самом конце) с IgorA100, вот что он предложил

Ставьте DLE НЕ в корень сайта и проблема решится на 99% ;)

А вообще конечно совсем непонятно, как боты "пробивают" защиту регистрации......

На поддомен что ли?

Нет.

Например не так: www.site.ru

А так: www.site.ru/бла-бла-бла/

Ссылка на сообщение
Поделиться на других сайтах

Офигенный диалог! ^_^

я: предлагаю следующий "грязный хак"

alternativa: я не понял как это сделать

я: а ты уже пробовал и не получилось?

alternativa: конечно, я действовал по инструкции Zeos-а

Ссылка на сообщение
Поделиться на других сайтах

Да как же?

То что я писал годится для новых сайтов, если он действующий - конечно-же не стоит переносить его в папку. Почему я привык ставить НЕ в корневую папку? Часто ставится на сайте еще и форум, может ставиться и тикетная система и еще куча разного. При этом если все ставить в корень - будет бардак ;)

Для Вашего случая сделайте так:

http://forum.dle-news.ru/index.php?showtopic=62382&view=findpost&p=314656

Проверено, работает отлично! ;) И правок в движок не надо вносить при обновлениях.

Офигенный диалог!

:D :D :D

Ссылка на сообщение
Поделиться на других сайтах

alternativa, теперь понял, что то я думал что речь идет о do=register

тогда конечно, выносить в папку не вариант. можно, в принципе, настроить мод_рирайт, но все равно это плохой вариант

Ссылка на сообщение
Поделиться на других сайтах

В качестве альтернатичного решения, предложу следующий грязный хак:

Эх, а ведь не работает хак...

При нажатии на кнопку подтверждения согласия с правилами на сайте идет переброс на страницу регистрации без доп параметра :(

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...