Создайте секретное рукопожатие между двумя страницами, чтобы остановить ботов от прямого представления данных [duplicate]

Пожалуйста, перейдите по ссылке ниже, https://developer.android.com/guide/topics/permissions/overview.html

Некоторые образцы также доступны там, чтобы начните с разрешений.

Чтобы сделать Android более безопасным, разработчики теперь должны указать разрешение в манифесте, а также должны спросить пользователя также во время выполнения, чтобы выполнить эту работу. Это разрешено категоризировать в разделе опасных разрешений, которые упоминаются ниже

КАЛЕНДАРЬ

READ_CALENDAR

WRITE_CALENDAR

CAMERA

CAMERA

КОНТАКТЫ

READ_CONTACTS
WRITE_CONTACTS
GET_ACCOUNTS

РАСПОЛОЖЕНИЕ

ACCESS_FINE_LOCATION
ACCESS_COARSE_LOCATION

МИКРОФОН

RECORD_AUDIO

PHONE

READ_PHONE_STATE
READ_PHONE_NUMBERS
CALL_PHONE
ANSWER_PHONE_CALLS (must request at runtime)
READ_CALL_LOG
WRITE_CALL_LOG
ADD_VOICEMAIL
USE_SIP
PROCESS_OUTGOING_CALLS
ANSWER_PHONE_CALLS

ДАТЧИКИ

BODY_SENSORS

SMS

SEND_SMS
RECEIVE_SMS
READ_SMS
RECEIVE_WAP_PUSH
RECEIVE_MMS

ХРАНЕНИЕ

READ_EXTERNAL_STORAGE
WRITE_EXTERNAL_STORAGE

19
задан Patrick M 27 July 2015 в 16:54
поделиться

9 ответов

54
ответ дан Community 27 August 2018 в 05:01
поделиться

Вы можете просто добавить captcha в свою форму. Поскольку captchas будет different, а также в images, боты не могут decode это. Это одна из наиболее широко используемых систем безопасности для всех wesites ...

2
ответ дан Hari krishnan 27 August 2018 в 05:01
поделиться

Это очень короткая версия, которая не сработала, поскольку она была реализована на моих сайтах 4 года назад с добавленными отклонениями по мере необходимости с течением времени. Это может быть создано со всеми переменными, а если требуются другие инструкции, которые вам нужны

    function spamChk() {
    var ent1 = document.MyForm.Email.value
    var str1 = ent1.toLowerCase();
    if (str1.includes("noreply")) {
    document.MyForm.reset();
    }

<input type="text" name="Email" oninput="spamChk()">

, я действительно пришел сюда сегодня, чтобы узнать, как перенаправить конкретные IP-адреса спама-бота в HELL .. просто для удовольствия

0
ответ дан Kickenback61 27 August 2018 в 05:01
поделиться

Нет, вы все еще думаете, что Captcha или ReCap являются безопасными?

Боты nowDays умны и могут легко распознать буквы на изображениях с помощью инструментов OCR (поиск для его понимания)

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

Это все, когда Bot или любой зомби представляют форму, которую вы проверяете, если данный хеш равен сеансу, хранящемуся Hash;)

для получения дополнительной информации. Читайте о CSRF!

2
ответ дан Leniel Maccaferri 27 August 2018 в 05:01
поделиться

Сегодня я успешно прекратил непрерывную рассылку моей формы. Разумеется, этот метод может не всегда работать, но он был прост и хорошо работал для этого конкретного случая.

Я сделал следующее:

  • Я установил свойство action формы в mustusejavascript.asp , который просто показывает сообщение, не работает и что у посетителя должен быть включен javascript.
  • Я установил свойство onsubmit формы в функцию javascript, которая устанавливает свойство действия формы на реальную страницу получения, например receivemessage.asp

Бот, о котором идет речь, по-видимому, не обрабатывает javascript, поэтому я больше не вижу спама. А для человека (с включенным javascript) он работает без каких-либо неудобств или дополнительного взаимодействия вообще. Если у посетителя отключен javascript, он получит четкое сообщение об этом, если он сделает заявку.

4
ответ дан Magnus 27 August 2018 в 05:01
поделиться

Ваш код не будет препятствовать отправке бота, но это не из-за того, как ваш код. Типичный бот, скорее всего, выполнит внешний / автоматический запрос POST для URL-адреса (атрибут action). Типичные боты не представляют HTML, CSS или JavaScript. Они читают HTML и действуют на них, поэтому любая клиентская логика не будет выполнена. Например, CURLing URL-адрес получит разметку без загрузки или оценки какого-либо JavaScript. Можно создать простой скрипт, который ищет <form>, а затем отправит CURL POST на этот URL с соответствующими ключами.

С учетом этого необходимо решение на стороне сервера для предотвращения отправки бота. Captcha + CSRF должно быть достаточно. ( http://en.wikipedia.org/wiki/Cross-site_request_forgery )

3
ответ дан Matt Lo 27 August 2018 в 05:01
поделиться

Вы могли бы измерить время регистрации, которое не нужно было заполнять вечность текстовыми полями!

2
ответ дан Mikatsu 27 August 2018 в 05:01
поделиться

вы не можете достичь своей цели с помощью javascript. потому что клиент может проанализировать ваш javascript и обойти ваши методы. Вы должны сделать проверку на стороне сервера через captchas. основная идея заключается в том, что вы храните секрет на стороне сервера и проверяете форму, представленную клиентом, с секретом на стороне сервера.

2
ответ дан oguzhanyalcin 27 August 2018 в 05:01
поделиться

Я проверил проверку ввода формы, которая не позволяла зарегистрировать программный вход.

. Моя первоначальная тактика заключалась в том, чтобы захватить элемент и установить его в нужный вариант. Я начал фокусироваться на полях ввода и имитировал клики по каждому элементу, чтобы получить раскрывающиеся списки, а затем установить значение, запускающее события для изменения значений. но когда я попытался щелкнуть, сохраните входы, где они не зарегистрированы как измененные.

    ;failed automation attempt because window doesnt register changes.
    ;$iUse = _IEGetObjById($nIE,"InternalUseOnly_id")
    ;_IEAction($iUse,"focus")        
    ;_IEAction($iUse,"click")
    ;_IEFormElementOptionSelect($iUse,1,1,"byIndex")
    ;$iEdit = _IEGetObjById($nIE,"canEdit_id")
    ;_IEAction($iEdit,"focus")
    ;_IEAction($iEdit,"click")
    ;_IEFormElementOptionSelect($iEdit,1,1,"byIndex")
    ;$iTalent = _IEGetObjById($nIE,"TalentReleaseFile_id")
    ;_IEAction($iTalent,"focus")
    ;_IEAction($iTalent,"click")
    ;_IEFormElementOptionSelect($iTalent,2,1,"byIndex")
    ;Sleep(1000)
    ;_IEAction(_IETagNameGetCollection($nIE,"button",1),"click")

Это заставило меня переосмыслить, как вводить входные данные, непосредственно манипулируя действиями мыши, чтобы имитировать больше выбора с помощью типа мыши поведение. Излишне говорить, что мне не придется вручную загружать изображения 1 на 1, чтобы обновлять изображения продуктов для компаний. номер окна перед письмами, чтобы мой сценарий находился в конце каталога, и когда появляется окно загрузки изображения, я должен использовать активную доступность, чтобы получить syslistview из окна и выбрать второй элемент, который является изображением, первый элемент - это папка , или первый элемент в файле findfirstfile возвращает только файлы. Я использую имя для поиска элемента в базе данных элементов, а затем получаю доступ к этим элементам и обновляю несколько атрибутов после загрузки изображений, а затем перемещаю файл из этой папки в другую папку, чтобы он не обрабатывался снова и перейдите к следующему первому файлу в списке и петле до тех пор, пока имя сценария не будет найдено в конце обновления.

Просто поделитесь тем, как сдержанный человек ввода данных экономит время и борется со всеми этими проверками проверки злой формы.

С уважением.

1
ответ дан The_Banality_In_Seeking 27 August 2018 в 05:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: