Междоменное отслеживание пользователей

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

  • Очевидно, что файлы cookie невозможны, потому что они не пересекают границы домена.
  • Я мог бы посмотреть на комбинацию IP-адреса и User Agent, но в некоторых случаях это не работает.
  • Я не хочу использовать flash или другие плагины.

Есть идеи? Или я обречен полагаться на комбинацию IP / User_Agent?

Запись файлов cookie в файл с помощью XSS R
Запись файлов cookie в файл с помощью XSS R
Привет всем :), здесь я продемонстрирую получение cookies, которые будут сохранены в виде txt файла, используя дефект XSS Reflected.
27
0
15 966
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

Ответ принят как подходящий

Вы можете назначить один домен или субдомен для отслеживания, и он будет обслуживать изображение размером 1 x 1 пиксель, которое вы включаете на все страницы, которые хотите отслеживать. Подайте cookie с изображением, посмотрите журналы сервера домена отслеживания, вуаля.

Это не сработает. Настройки безопасности Internet Explorer по умолчанию не позволяют изображениям из других доменов (или фреймов) устанавливать какие-либо файлы cookie.

BlaM 19.10.2008 17:52

... ладно, доработал: будет работать, если учитывать support.microsoft.com/kb/323752/EN-US :)

BlaM 19.10.2008 18:01

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

Simon 19.10.2008 21:23

Проблема в том, что это требует дополнительной работы. Вы должны включить это на каждую страницу, которую нужно отслеживать.

mohammedn 24.10.2008 15:33

Этот вопрос тесно связан с Вопросом Доступ к файлам cookie домена в iFrame в Internet Explorer.

Для Internet Explorer мне нужно принять во внимание политики P3P и установить дополнительный HTTP-заголовок P3P, чтобы изображения могли устанавливать файлы cookie через границы домена. Тогда я могу воспользоваться предложением Саймона.

Вы можете следовать той же концепции, что и в Google Analytics. Внедрение javascript на страницы, которые вы хотите отслеживать.

Я мог бы, но как это поможет мне отслеживать пользователей за пределами домена?

BlaM 19.10.2008 18:32

Существуют разные виды отслеживания. Google Analytics позволит вам оглянуться на историю поведения многих посетителей, даже при переходе через домены. Другой тип отслеживания, такой как отслеживание сеанса PHP, используется для управления тем, какой контент предоставляется одному посетителю.

Liam 20.10.2008 16:01

Google Analytics делает именно то, что сказал Саймон, и вводит пиксельное изображение 1x1, вот как он может отслеживать в нескольких доменах, и он делает эту инъекцию с помощью JS

Gabriel Solomon 28.05.2009 11:25

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

  • включить гиперссылку на прозрачное изображение в формате GIF размером 1x1 пиксель (иногда называемое "маяком")
  • полагаться на информацию реферера в заголовках HTTP-запроса, чтобы определить, что гиперссылка на страницу включена
  • включать дополнительные параметры в гиперссылки на другой сайт - при условии, что вы запускаете оба сайта
  • покупать услуги такой компании, как Акамай, чтобы отслеживать пользователей за вас
  • возможно, в будущем использовать междоменный механизм cookie, если стандарт когда-либо будет одобрен

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

Это решение не требует JavaScript и работает, даже если пользователь отключает сторонние файлы cookie.

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

If getCookie("c") == null then setCookie("c", "anyValue")

Затем позвольте запросу завершиться (иначе дождитесь следующего запроса)

Назовем наш трекер cookie uaid.

Если GEThttp://child.com/any-page и getCookie("c") is not null и getCookie("uaid") is null ...

Перенаправить на http://parent.com/give-me-a-uaid?returnTo=http://child.com/any-page

На http://parent.com/give-me-a-uaid проверьте наличие файла cookie uaid

Если не существует, создайте его и добавьте в ответ. Если он существует, узнайте его значение.

Перенаправить на http://child.com/any-page?uaid=valueOfParentsUAIDCookie

Child.com устанавливает cookie uaid с valueOfParentsUAIDCookie

Перенаправить на http://child.com/any-page

И конечно вы проверка ввода и внесение в белый список URL-адресов переадресации :)

Потоки:

Scenario A

Scenario B

Scenario C

Другие вопросы по теме