研究者称 OpenAI 的 __obi cookie 会跨站跟着你走,而它在 cookie 政策里被归为「分析类」

安全研究方 Buchodi Threat Intel 于 9 月 20 日发布一份测量报告(当日登上 Hacker News 首位),描述了 OpenAI 广告衡量体系中一枚名为 __obi 的 cookie。按报告描述的机制:在 chatgpt.com 上,一个随机生成的追踪标识会被换成一枚经签名的 JWT,该令牌把标识与 ChatGPT 账号的内部 ID 绑定,随后被提交到 OpenAI 的同步端点,由其下发带 SameSite=None、Secure 属性的 __obi cookie——这两个属性使它可被跨站发送;cookie 最长有效期一年。此后任何安装了 OpenAI 广告像素的页面,都会把 __obi 连同像素在该页面上采集到的内容一起回传。报告指出的核心问题是同意分类:OpenAI 的 cookie 政策将 __obi 列为分析类而非营销类,而研究者解码的同步令牌均带有 analytics_allowed 的同意标记,意味着拒绝营销同意、仅接受分析同意的用户同样会拿到这枚可跨站的 cookie。测量规模方面,报告称对照了 1029 个主机名上 936 个广告主像素产生的 23929 次请求,解码的 932 个令牌中 736 个指向某个账号、196 个为匿名;被点名的站点包括 Chewy、Wayfair、ThriftBooks、Eventbrite、HelloFresh、Coursera 和 SeatGeek。报告还称像素会带走其在页面上采集的邮箱、电话、位置和表单字段等数据,仅邮编一项就出现在 28 个站点的 100 次事件中。浏览器侧,Safari 与全部 iOS 浏览器、开启 Total Cookie Protection 的 Firefox 以及 Brave 默认拦截该机制,研究者在 Android 版 Chrome 上复现。需要明确的是:服务端是否真的把该 cookie 关联到具体账号,研究者未在流量中直接观测到,只是令牌设计中含账号主体标识符而指向这一推断。研究者于 9 月 14 日联系 OpenAI,OpenAI 客服确认收到并称将转内部审阅,但未回答关于分类与同意处理的两个具体问题。

先分清哪部分是官方文档里就有的,哪部分是新的

这条容易被读成「发现了一个秘密追踪器」。准确的分界是这样的。 **不是新闻的部分:**OpenAI 有一套 ChatGPT 广告衡量像素,这件事在它自己的开发者文档里就是公开的——一个用于衡量可归因于 ChatGPT 广告的网站事件的浏览器 SDK,装脚本、初始化、在转化时调用。它和 Meta、Google 的转化像素在功能上属于同一类东西。 **新的部分:**一次外部测量。它记录的是这枚标识符实际上跨了多少个站、回传时带了什么,以及**在什么同意状态下被下发**。功能存在是公开的,行为细节此前没有被外部量化过。 把这条分界说清很重要,否则争议会落在错的地方。值得追问的从来不是「OpenAI 有没有广告衡量工具」,而是这套工具的分类、同意处理和采集范围与它自己的政策是否一致。

最硬的一条是分类,因为它可以对照公开文本核验

报告里可信度最高、也最难辩解的一条是同意分类。 OpenAI 的 cookie 政策把 __obi 列为**分析类**,不是营销类。而研究者解码的同步令牌都带着「仅允许分析」的同意标记。如果机制如报告所述,那么**一个明确拒绝了营销同意、只勾选了分析同意的用户,仍然会拿到一枚设置为可跨站发送、最长存活一年的 cookie。** 这一条之所以值得单独拎出来,是因为它不依赖任何私有数据就能检验:分类是 OpenAI 自己写在公开政策里的,同意开关是它自己设计的两个选项。判断的只是二者一致不一致。 这也正是研究者向 OpenAI 提的两个问题之一。OpenAI 客服确认收到询问、称会转内部审阅,但没有回答。截至发稿,OpenAI 未公开确认也未反驳报告中的技术细节。

必须标明的边界:有一条关键推断没有被直接观测到

这份报告有一处自己声明的局限,不该在转述中被抹掉:**服务端是否真的把 cookie 关联到具体账号,研究者没有在流量里直接观测到。**支持这个推断的是令牌设计——它含有账号主体标识符——但这属于「设计上指向」,不是「观测到发生」。 所以准确的说法是:跨站传输被观测到了;与账号的服务端关联是一个有依据的推断,尚未证实。这个区别不是吹毛求疵,它决定了这件事是「跨站行为衡量」还是「跨站行为与实名账号绑定」,两者在隐私法上的分量完全不同。 同样要按口径读的是那些数字:23929 次请求、936 个像素、1029 个主机名、932 个解码令牌,全部来自单一研究方的自有测量,未见第二方复现。规模数据可以当作量级参考,不宜当作定论。

装了这枚像素的网站,自己也有一个待办事项

这条最容易被忽略的受众不是 ChatGPT 用户,是**网站运营方**。 报告称像素会把它在页面上采集到的内容一并带走——邮箱、电话、位置、表单字段,其中仅邮编一项就出现在 28 个站点的 100 次事件里;并称这类「抓取得来的身份数据」在观测流量中多于广告主主动提供的身份数据。 如果确实如此,那么对一个装了这枚像素的站点来说,它不只是在做转化衡量,而是有一个需要自己评估的数据流出点,尤其在表单页和结账页。这件事不需要等 OpenAI 回应就能自查:看一眼像素装在哪些页面上、这些页面上有哪些字段、自动匹配类的选项是否开启。这是今天这条里最具体的行动项。 用户侧的行动项同样具体,而且成本很低:按报告,Safari 与全部 iOS 浏览器、开启 Total Cookie Protection 的 Firefox 以及 Brave 默认就拦掉了这套机制;研究者是在 Android 版 Chrome 上复现的。也就是说这件事的暴露面高度依赖浏览器选择——**在等厂商答复这段时间里,换浏览器或打开相应的跨站隔离设置,比任何声明都管用。**

via: OpenAI 广告衡量像素官方文档Cybersecurity News 报道explainX 对报告的梳理Captain Compliance 的技术分析