Установить куки на другом домене с помощью curl - PullRequest
4 голосов
/ 20 апреля 2010

возможно ли использовать curl или другие средства для установки cookie на другом домене? У меня есть доступ к файлу php в другом домене, который может установить cookie, но я не знаю, как получить доступ к этому файлу php с помощью curl, а затем установить cookie.

Ответы [ 2 ]

5 голосов
/ 20 апреля 2010

Вы можете использовать cURL для получения идентификатора cookie из другого домена, а затем использовать его в своей программе, но если вы имеете в виду установить cookie в браузере - нет, вы не можете, cookie могут быть установлены только для домена, которым они были сгенерировано на.

3 голосов
/ 20 апреля 2010

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

  • Создайте nonce и сохраните в db
  • Свяжите текущую дату / время и пользовательский агент с ним
  • Прикрепите его к ссылке на 2-й сайт через GET

Теперь, когда 2-й сайт получает входящую ссылку с этим параметром GET, он должен

  • Убедитесь, что одноразовый номер существует
  • Убедитесь, что пользовательский агент не изменился
  • Убедитесь, что время между созданным одноразовым номером и запрошенным не слишком длинное (у меня 10 минут).
  • Удалить nonce

Будь предупрежден

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

  • Просмотр исходящего одноразового номера
  • Скопируйте его и получите доступ к сайту до , который делает исходный человек
  • иметь ту же строку агента пользователя

Имейте это в виду.

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

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