Как ChatGPT узнаёт, что вы делаете на других сайтах
Независимый исследователь опубликовал разбор рекламной инфраструктуры OpenAI и показал, что компания способна связывать поведение пользователя на посторонних сайтах с его аккаунтом ChatGPT. Механизм он воспроизвёл на собственном телефоне, проверил двумя независимыми методами перехвата трафика и сверил с наблюдениями за несколько месяцев: 936 рекламных пикселей на 1029 хостах.
Как это устроено
В основе — cookie __obi, привязанный к домену .openai.com. Пока вы находитесь в ChatGPT, клиент генерирует идентификатор и получает от бэкенда подписанный JWT-токен, где этот идентификатор увязан с субъектом аккаунта. Затем токен отправляется на сборщик bzr.openai.com, который в ответ ставит cookie __obi сроком на год с параметром SameSite=None — именно та конфигурация, которая позволяет передавать cookie при кросс-сайтовых запросах.
Любая компания, купившая рекламу в ChatGPT, ставит у себя небольшой фрагмент кода OpenAI — так же, как сайты уже ставят пиксели Meta и Google. Само по себе подгрузка скрипта уже раскрывает __obi: браузер прикрепляет cookie к запросу <script src> ещё до того, как отработает код OpenAI. Обходной путь SDK «без учётных данных» здесь не помогает.
Что уезжает вместе с идентификатором
SDK попутно собирает данные о странице и личные сведения. Email, телефон, имя и фамилию хэшируют перед отправкой, а вот страну, регион, город и почтовый индекс шлют открытым текстом. Крупнейший источник адресов — шина менеджера тегов: SDK подменяет dataLayer.push собственной функцией. URL сокращают до пути без параметров, но сами пути сохраняются — среди попавших к сборщику встретились адрес с названием заболевания, воронка по списанию долгов и форма записи к юристам.
На устройстве автора один и тот же __obi уходил в OpenAI с двенадцати коммерческих сайтов, включая Chewy, Wayfair, HelloFresh и Coursera. Механизм работает и при выходе из аккаунта: анонимный идентификатор так же стабилен и живёт не меньше 27 дней.
Аналитика или маркетинг?
В политике cookie OpenAI __obi числится как аналитический — единственная запись в этом разделе. При этом каждый расшифрованный токен нёс пометку analytics_allowed: пользователь, разрешивший аналитику, но отказавшийся от маркетинга, всё равно получает эту cookie. На вопросы, отправленные в OpenAI 14 сентября, поддержка ответила лишь, что передаст наблюдения на внутреннее рассмотрение.
Автор подчёркивает: структурно это стандартный рекламный трекинг, Meta построила аналог годы назад. Беспрецедентно другое — применение такой схемы к продукту-собеседнику, которому люди рассказывают то, чего не напишут в соцсети.
Источник: Hacker News
Комментарии
Войдите, чтобы комментировать.