大家好!我是 OpenAI 安全团队的一名工程师,大家可能还记得,我们之前就因为 Axios 那次供应链投毒事件吃过亏。今天想给大家讲讲我们公司前几天亲身经历的又一场“供应链惊魂记”——就是那个 TanStack npm 包被攻击的事件。过程确实挺刺激的,我边讲边跟大家唠唠细节,顺便说说我们是怎么处理的。
事情得从5月11日说起。那天,TanStack 这个超级常用、几乎所有前端项目都在用的开源库,突然被黑客盯上了。这次攻击有个酷炫的名字,叫“Mini Shai-Hulud”,属于典型的供应链攻击:上游一个包出问题,下游一大堆公司跟着遭殃。我们 OpenAI 的两个同事在公司设备上,不小心就中招了——恶意代码悄悄溜了进来。
发现异常后,我们团队瞬间进入“战斗模式”。监控一报警,我们马上启动全套应急预案:先把受影响的设备和账号彻底隔离,撤销所有登录会话,把可能泄露的凭证全部轮换,还临时冻结了部分代码部署流程。同时我们请了第三方专业取证公司进来一起查,确保不放过任何细节。
调查结果出来后,大家都松了口气:攻击者只在两个员工有权限的少量内部代码仓库里搞了点事儿,成功偷走的也只是有限的凭证材料。没有客户数据被碰,没有知识产权泄露,生产系统和软件本身压根儿没被改动。更棒的是,我们没看到攻击者后续有任何滥用这些凭证的痕迹。
不过,有个小麻烦得跟大家说清楚:那些被碰到的代码仓库里,恰好存着我们产品(iOS、macOS、Windows)的签名证书。为了以防万一,我们决定把所有证书全部轮换掉。这对 macOS 用户影响最大——你们得在6月12日前更新到最新版的 OpenAI App(ChatGPT Desktop、Codex App 之类的),否则老版本可能会被 macOS 的安全机制挡住,不能正常更新或启动。Windows 和 iOS 用户完全不用操心,我们已经处理好了。
更新超级简单:直接在 App 里点更新,或者去我们官网的官方下载页面搞定。千万别信邮件、短信、广告或者第三方网站的链接啊!我们已经跟平台方合作,堵住了用旧证书签名新假 App 的路子,还仔细检查了所有已发布的软件,没发现任何被篡改的迹象。
其实这次事件也让我感慨:开源生态现在太“互联”了,一个包出问题就像多米诺骨牌一样,大家都可能被波及。我们之前因为 Axios 那次事件,已经开始大力加固 CI/CD 管道、给包管理器加最小发布年龄限制、部署 provenance 验证工具啥的。可惜这次攻击正好卡在我们的 phased rollout 阶段,那两个同事的设备还没来得及用上最新防护。但我们会继续狠抓这些上游依赖的安全,以后防御会更严密。
最后,几个大家最关心的问题我直接回答:
• 用户数据和产品被黑了吗?完全没有,我们没找到任何证据。
• 需要改密码或 API key 吗?不用,压根儿没影响。
• 以后还能不能安心用?当然!我们把透明和快速响应当成头等大事,这次就是最好的证明。
总之,这次“供应链惊魂”让我们更清醒地看到现代软件开发的脆弱性,但也让我们团队的协作和响应能力又上了一个台阶。希望大家看到这篇分享后,赶紧去更新下 macOS App,继续放心地用 ChatGPT、Codex 这些工具
夜雨聆风