独立调查称ChatGPT能把站外浏览连回账号

一篇 9 月 20 日发布的独立技术调查称,OpenAI 的广告收集器会在用户浏览器里种下一个跨站 Cookie,投放广告的商家网站可以借它把用户在站外的浏览和购买行为回传给 OpenAI,并与对应的 ChatGPT 账号关联起来。文章在 Hacker News 上被顶到热门。

作者在自己的手机上用两种独立的抓包方式复现了整个过程,又对照了几个月里积累的流量数据。OpenAI 至今没有回应文中的具体问题。

按文中的抓包记录,流程分三步。ChatGPT 页面先生成一个 16 字节的标识符,请求 /backend-api/bazaar/obi/sync-token,拿回一个 60 秒过期的 RS256 签名令牌,令牌把当前账号和这个标识符绑在一起。随后页面把令牌跨站提交给 bzr.openai.com,后者在 .openai.com 域下写入 __obi,属性是 SameSite=None、Secure、HttpOnly,有效期 31536000 秒,也就是一年。

之后用户去逛接入了 OpenAI 像素代码的商家网站,浏览器会把 __obi 连同页面数据一起发给 OpenAI。像素收集的字段包括经 SHA-256 哈希的邮箱、电话和姓名,明文的国家、地区、城市和邮编,以及去掉查询参数后的页面路径。

作者观察到的 881 个像素里,638 个开启了自动匹配;像素从页面上自动抓取的身份信息和商家主动提交的相比是 685 比 255。被记录的路径里有医疗病症页面、债务解决方案的引流页和一份诉讼登记表。

分析类还是营销类

争议最大的一点在分类。OpenAI 的 Cookie 政策把 __obi 列为分析类 Cookie,说明是帮助公司了解服务的使用情况。作者解码的每一枚同步令牌里都带着 consent_decision: analytics_allowed。文中的判断是:

“Someone who allows analytics and refuses marketing gets this.”

允许分析、拒绝营销的人,照样会被种上它。

作者的一台设备上,同一个 __obi 值被 12 家商业网站发出过,包括 Chewy、Wayfair、ThriftBooks、Eventbrite、HelloFresh、Coursera、SeatGeek。更大范围的样本里,30 个不同的 Cookie 值中有 12 个出现在不止一家广告主那里,其中一个出现在 10 家。

作者 9 月 14 日写信给 OpenAI 的媒体和隐私邮箱,问了两个问题:为什么把 __obi 归为分析类,拒绝营销授权的用户是否仍会收到它。OpenAI 客服确认收到,两个问题都没有答复。

中文用户受不受影响

这套机制目前有明显的边界。文中测得安卓版 Chrome 可以跑通;iPhone 上的 Safari 有智能防跟踪,默认拦截第三方 Cookie,链路走不通;桌面版 Chrome 作者没有测。另外大约每五次 ChatGPT 会话才会生成一次同步令牌,说明 OpenAI 在做分批灰度。

ChatGPT 不对中国大陆提供服务,但港澳台和海外的中文用户里,用安卓手机登 ChatGPT、同时逛北美电商的不在少数。被点名的 12 家商家都是面向美国市场的网站,风险面取决于你会不会去这些站点消费。想先自保的话,在 Chrome 设置里开启”阻止第三方 Cookie”,这条链路就会断掉。

这份调查出自单一作者的抓包,样本来自他自己的设备和数据集,OpenAI 目前没有确认或否认其中任何一项技术细节。

参考来源:Buchodi 独立调查报告(Cookie 属性、令牌字段、像素与主机名数量)、Hacker News 讨论、CocoLoop、OpenAI Cookie 政策(__obi 分类口径)。