Наверняка вы знаете разного рода программы и расширения автоматического заполнения полей форм типа LastPass, RoboForm и другие. Хотелось бы узнать однозначно — заполняют ли подобного рода программы-менеджеры паролей скрытые поля форм на сайтах. Найти и протестировать работу этих программ на всех возможных платформах с различными вариациями браузеров не представляется возможным, а надо знать!
Для чего мне это надо? — Гребаный спам валит через формы на сайте. Хотел попробовать добавить скрытое поле и проверять его на заполненность. Если заполнено, то сразу в спам отправлять или блокировать отправителя. Но есть опасения — если у нормального человека установлен подобного рода софт, то не хотелось бы его пометить как бота-спамера.
Имеются ли соображения или подтвержденные данные по этому вопросу?
sim3x, дело в том, что код формы ради эксперимента попробовал сгенерировать на JS, а спам все равно лезет и лезет. Такие дела. Рандомные название полей не пробовал, да и слабо себе представляю как передавать из полей со случайными названиями внесенные данные.
weranda, Менеджер паролей не заполняет данные по собственной инициативе, и не выдумывает их.
Обычно принцип работы такой -
Пользователь заполняет поля, программа запоминает их и записывает в бд.
Как только нужно заполнить такие же поля - программа вытаскивает данные из БД и заполняет их сама.
Если пользователь никогда не заполнял скрытое поле, то менеджер паролей тоже не будет его заполнять, ибо нечем.
АртемЪ, Я представил ситуацию: человек когда-то заполнил сложную форму на сайте (фио, почта, телефон, город, сайт и пр.) и сохранил данные в менеджере паролей или в этих менеджерах паролей есть вот такой профайл:
Его заполняют и потом на форме появляется иконка управления и человек просто нажимает на нее и данные подставляются в форму. Потенциально какое-то из значений может попасть в скрытое поле. Скрытое поле нельзя же назвать SPAM, а как-то поинтересней, чтобы не спугнуть бота)
Ну с согласия человека он может подставить в форму.
Если заполнено, то сразу в спам отправлять или блокировать отправителя.
Не отправляйте в спам, а ставьте на контроль - проверка по одному параметру всегда дает ошибки, а если их несколько, то вероятность ошибки резко снижается.
weranda, причём тут расширения? Логику заполнения - исполняет JS-скрипт, который находится на странице вместе с формой (обработчик формы).
Его логика может меняться при каждой перезагрузке формы.
В самом начале вы написали — Нет. Я понял, что Нет — это ответ на вопрос: Хотелось бы узнать однозначно — заполняют ли подобного рода программы-менеджеры паролей скрытые поля форм на сайтах. И если я правильно понял вашу логику — менеджер паролей не заполняет скрытые поля формы, но их заполняет JS, то вопрос причём тут расширения? мне непонятен.
Расширение для браузера, к примеру, LastPass написано с использованием JS и по логике оно может заполнять скрытые поля. Замкнутый круг получается)
xmoonlight, Ну сайты бывают вообще без JS, но с формами.
А по поводу заполнения скрытых - там же большинство менеджеров паролей либо встроены в браузер, либо имеют плагин, и могут свободно запускать JS.
weranda, получается, что Вы запутались)
1. Да, я ответил на вопрос. Мой ответ: Нет, не заполняет.
2. Расширения используют JS для обработки событий вставки логинов и паролей, но они не могут сами НАХОДИТЬ нужные функции и заменять стандартный обработчик отправки формы. Это и не нужно вовсе!
Расширения (браузерные) - только ВСТАВЛЯЮТ УЧЁТКУ В ВИДИМЫЕ ПОЛЯ.
А JS-обработчик на странице (который загрузился с сервера вместе с формой) - при возникновении события ВСТАВКИ (появления контента в полях формы) или ОТПРАВКИ ФОРМЫ - что-то там делает/просчитывает, затем - заполняет скрытые поля нужными данными и ТОЛЬКО ПОСЛЕ ЭТОГО! данные формы уходят из браузера на сервер!
Теперь, понятно стало?
2. Расширения используют JS для обработки событий вставки логинов и паролей, но они не могут сами НАХОДИТЬ нужные функции и заменять стандартный обработчик отправки формы.
Логика обработки формы на странице - может быть любая и постоянно меняться (хоть при каждой перезагрузке страницы, хоть чаще - через AJAX).
И далее 2 утверждения:
1. Логику обработки не нужно знать расширению для вставки данных в поля формы - это лишняя информация.
2. Чтобы "взять" обработку логики расширением в "свои лапы" (запроксировать обработчик, находящийся на странице и полученный с сервера), у расширения должен быть НЕХИЛЫЙ! искусственный интеллект)