stamatios
← Voltar ao feed
Microrrastreador no cursor de navegador enviando dados por fio a um balão de chat, metáfora do pixel de anúncios do ChatGPT
Big Tech · Marketing & Growth

Pixel de anúncios do ChatGPT coleta navegação em outros sites

resumo de ~3 min

O mecanismo descoberto

Um investigador documentou, com reprodução própria e dois métodos independentes de captura, como o coletor de anúncios da OpenAI em bzr.openai.com liga a navegação de um usuário em sites de terceiros à sua conta do ChatGPT. O ponto central é um cookie chamado __obi, escopado para .openai.com, válido por um ano e configurado com SameSite=none e Secure - exatamente o arranjo que permite o envio em requisições entre sites.

O funcionamento ocorre em três etapas. Primeiro, no chatgpt.com, o cliente gera 16 bytes aleatórios e pede um token ao backend (/backend-api/bazaar/obi/sync-token, ou a variante anônima para quem está deslogado). O backend devolve um JWT RS256 assinado, que vincula o sujeito da conta ao identificador obi, tem escopo restrito ao coletor e expira em 60 segundos. Segundo, o cliente envia esse token cross-site para bzr.openai.com, que responde definindo o cookie __obi. Terceiro, qualquer anunciante que compre mídia no ChatGPT instala um trecho de código da OpenAI no próprio site - como já fazem hoje com Meta e Google - e o carregamento desse código envia o __obi de volta junto com dados da página visitada: produtos buscados, artigos lidos e comportamentos de compra.

O que viaja junto

O SDK do pixel também coleta identidade da página do anunciante, separando valores passados deliberadamente pelo anunciante e valores raspados de campos de formulário, texto renderizado e do barramento de gerenciador de tags. Nas observações, dados raspados superaram os fornecidos: 685 eventos contra 255. A maior fonte de e-mails é o dataLayer - o SDK substitui window.dataLayer.push, lê adobeDataLayer e localiza camadas renomeadas do GTM.

E-mail, telefone e nome são transmitidos com hash SHA-256; país, região, cidade e CEP vão em texto puro - o CEP foi o campo mais coletado, com 100 eventos em 28 sites. URLs são reduzidas a origem mais caminho, mas os caminhos sobrevivem e incluíram uma condição médica, um funil de soluções para dívidas e um formulário de contratação de advocacia. O casamento automático de identidade estava habilitado em 638 de 881 pixels com configuração conhecida, incluindo todos os anunciantes de crédito e empréstimos observados. Há uma denylist que exclui senhas, códigos de uso único, números de cartão, CPF/SSN, data de nascimento e campos médicos e judiciais.

Alcance observado

No dispositivo do autor, um único __obi foi enviado de 12 sites comerciais sob 13 IDs de pixel distintos, incluindo Chewy, Wayfair, ThriftBooks, Eventbrite, HelloFresh, Coursera e SeatGeek. No tráfego mais amplo, 12 de 30 valores de __obi apareceram sob mais de um anunciante. O rastreamento também funciona deslogado: dos 932 tokens decodificados, 196 eram anônimos, estáveis por dispositivo e persistentes por pelo menos 27 dias.

O __obi é o único cookie da OpenAI com SameSite=None - todos os outros foram bloqueados pelo navegador nas mesmas requisições. O carregamento do script em si já vaza o cookie, mesmo no caminho de código do SDK que omite credenciais, porque o navegador anexa cookies a requisições