Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Правильная проверка капчи / 4 сообщений из 4, страница 1 из 1
21.04.2016, 15:31
    #39221368
giigro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правильная проверка капчи
Здравствуйте, коллеги!

Вопрос архитектурный. Есть CMS на PHP. Есть проверка некоторых действий на автоматизированность с помощью капчи. Алгоритм: генерим фразу, помещаем в сессионную переменную, нажимаем submit. Там, где обрабаывается POST- запрос из формы стоит простая проверка на идентичность того что ввели и переменной сессии. Главный недостаток - нежно плодить эту проверку везде, куда прилетает форма с капчой. А если при обнаружении подозрительных действий происходит редирект с любой страницы на страницу с одной только капчой, то задача начитает быть совсем нетривиальной.

Логика подсказывает, что проверку надо сделать автономной, например на переключение фокуса с формы ввода капчи повесить ajax, который пойдет на сервер и достанет фразу из сессионной переменной, а потом сравнит. Но тогда любой дурак сможет в свой сайтопарсер добавить код, который так же ходит на сервер и достает переменную - теряется весь смысл в капче. Как не скрывай обращение к серверу через AJAX, сетевым монитором этот запрос можно вытащить, поэтому такая проверка не катит.

Что подскажете? Как сделать проверку капчи без перехода??
...
Рейтинг: 0 / 0
21.04.2016, 16:19
    #39221441
бухалтер фантоцци
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правильная проверка капчи
У меня любая форма хоть с капчей хоть без капчи работает всегда через AJAX на один URL-адрес, без всяких редиректов.
Капча запрашивается отдельным AJAX-запросом и вставляется в форму, капчу можно менять на другую, не закрывая форму.

Форма всегда генерится на клиенте через JavaScript, то-есть не зависит от URL страницы сайта, введённые ранее поля запоминаются в localStorage,
при необходимости можно на любой странице открыть форму, заполнить и отправить,
редиректы тут не нужны, но в зависимости от ответа сервера возможен переход на другую страницу или другие действия.
...
Рейтинг: 0 / 0
21.04.2016, 16:41
    #39221479
giigro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правильная проверка капчи
бухалтер фантоцциФорма всегда генерится на клиенте через JavaScript
Т.е., чтобы обойти такую капчу, достаточно чуть подчистить обработчик нажатия кнопки. Так?
...
Рейтинг: 0 / 0
21.04.2016, 16:52
    #39221500
бухалтер фантоцци
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правильная проверка капчи
giigroбухалтер фантоцциФорма всегда генерится на клиенте через JavaScript
Т.е., чтобы обойти такую капчу, достаточно чуть подчистить обработчик нажатия кнопки. Так?нет,
нужно ввести правильную капчу, иначе хеш не совпадёт и сервер не примет.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Правильная проверка капчи / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]