Запретить POST'ing с удаленных сайтов - PullRequest
0 голосов
/ 19 марта 2011

Мне просто интересно, как вы предотвращаете попытки людей обмануть ваш сценарий и POST'ы аналогичной формы на удаленном сайте. Скажем, например, чтобы попытаться добавить дополнительные значения в выбранные вами поля, которые вы не делаетеиметь в вашем или что-то в этом роде.

Ответы [ 2 ]

3 голосов
/ 19 марта 2011

Чтобы предотвратить Подделка межсайтовых запросов (CSRF) , вы должны использовать так называемый токен CSRF, который проверяет подлинность запроса.Кроме того, вы можете проверить HTTP Referer и разрешить транзакцию, только если она пустая (не существует) или один из ваших адресов.

См. Также Подделка межсайтовых запросов OWASP (CSRF) Шпаргалка по профилактике для получения дополнительной информации.

1 голос
/ 19 марта 2011

Лучшая идея - создать ключ md5, сгенерированный из пользовательского агента, ip и таймфрейма. Затем сохраните это в базе данных и заполните его в скрытом текстовом поле, чтобы при отправке вы могли повторно проверить значение.

Вы также можете использовать $ _SERVER ['HTTP_REFERER'], чтобы узнать, откуда поступил запрос, и проверить его по URL вашего сайта. Помните, что это устанавливается пользовательским веб-браузером, поэтому его можно подделать. Вот список доступных переменных $ _SERVER и их описание. http://www.php.net/manual/en/reserved.variables.server.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...