От чего меня защищает PHP session.referer_check?

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

Это нормально работает на моей машине разработчика (debug = 2), но в производственной среде, когда клиент перенаправляется обратно, он получает приглашение входа в систему вместо того, чтобы вернуться в свою «зону входа в систему». После долгих поисков я обнаружил, что это связано с тем, что CakePHP устанавливает session.referer_check, что делает сеансы недействительными, если HTTP_REFERER приходит с другого хоста, чем мой.

Обычно я отключил бы это, не задумываясь, Какие атаки / эксплойты / плохие вещи можно сделать с моим сайтом, если я его выключу?

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

Не могли бы вы дать мне какие-нибудь идеи?
Безопасно ли отключить это?

Спасибо
Daniel

27
задан Daniel Magliola 1 February 2011 в 14:46
поделиться