当前位置:首页 > 芯闻号 > 信息速递
[导读]据业内信息,之前我们报道过前不久 ChatGPT 出现的安全漏洞,引发了关于数据管理的严重问题,近日 OpenAI 对数据泄漏事故原因发布了一份报告。

据业内信息,之前我们报道过前不久 ChatGPT 出现的安全漏洞,引发了关于数据管理的严重问题,近日 OpenAI 对数据泄漏事故原因发布了一份报告。

据悉,上周 OpenAI 聊天机器人 ChatGPT 的用户可以访问不属于他们的聊天记录,不少用户在社交网络上分享的几张截图最终提醒了 OpenAI,该公司最终暂时让 ChatGPT 下线以解决问题。

随后不久 OpenAI 发布了一份事后报告,就数据泄露事件和随后发生的服务下线做出回应,OpenAI 在报告中解释声称事故原因是使用的开源组件 redis-py 存在漏洞,redis-py 是 Redis 数据库的 Python 客户端。

至于暴露的信息,OpenAI 表示包括姓名、邮件地址、账单地址、信用卡号后四位以及卡片有效期,但是只有在北美当地时间 3 月 20 日 1~10 点进行特定操作(比如打开订阅确认邮件/管理订阅页面)的用户才会受到影响,因此泄露范围有限,而且 OpenAI 也已经联系开发者修复了漏洞。

以下为 OpenAI 报告内容:

由于开源库中的一个错误,我们本周早些时候将 ChatGPT 下线,该错误允许一些用户看到另一个活跃用户的聊天记录中的标题。如果两个用户大约同时处于活动状态,那么新创建的对话的第一条消息也可能在其他人的聊天记录中可见。

该错误现已修补。除了几个小时的历史记录外,我们能够恢复 ChatGPT 服务以及后来的聊天记录功能。正如承诺的那样,我们将在下面发布此问题的更多技术细节。

经过更深入的调查,我们还发现,同样的错误可能导致 1.2% 的 ChatGPT Plus 订阅者在特定的 9 小时窗口内处于活跃状态,从而无意中看到了与支付相关的信息。在周一我们关闭 ChatGPT 之前的几个小时内,一些用户可能会看到另一个活跃用户的名字和姓氏、电子邮件地址、支付地址、信用卡号的最后四位(仅)和信用卡到期时间日期。任何时候都不会暴露完整的信用卡号码。

我们认为,其数据实际泄露给其他人的用户数量极少。要访问此信息,ChatGPT Plus 订阅者需要执行以下操作之一:


  • 打开太平洋时间 3 月 20 日星期一凌晨 1 点到 10 点发送的订阅确认电子邮件。由于该错误,该窗口期间生成的一些订阅确认电子邮件被发送给了错误的用户。这些电子邮件包含另一个用户信用卡号的最后四位数字,但没有显示完整的信用卡号。在 3 月 20 日之前,可能有少量订阅确认电子邮件被错误地处理,尽管我们尚未确认任何此类情况。
  • 在太平洋时间 3 月 20 日星期一凌晨 1 点到 10 点之间,在 ChatGPT 中单击“我的帐户”,然后单击“管理我的订阅”。在此窗口中,另一个活跃的 ChatGPT Plus 用户的名字和姓氏、电子邮件地址、付款地址、信用卡号码的最后四位(仅)和信用卡到期日期可能是可见的。这也可能发生在 3 月 20 日之前,尽管我们尚未确认任何此类情况。


我们已联系受影响的用户通知他们的付款信息可能已被泄露。我们相信用户数据不会持续存在风险。

OpenAI 的每个人都致力于保护我们用户的隐私并确保他们的数据安全。这是我们非常认真对待的责任。不幸的是,本周我们没有达到这一承诺,也没有达到用户的期望。我们再次向我们的用户和整个 ChatGPT 社区致歉,并将努力重建信任。

在技术细节上,该错误是在 Redis 客户端开源库 redis-py 中发现的。一旦我们发现了这个错误,我们就联系了 Redis 维护者并提供了一个补丁来解决这个问题。这是错误的工作原理:


  • 我们使用 Redis 在我们的服务器中缓存用户信息,因此我们不需要为每个请求检查我们的数据库。
  • 我们使用 Redis Cluster 将此负载分布到多个 Redis 实例。
  • 我们使用 redis-py 库从使用 Asyncio 运行的 Python 服务器与 Redis 交互。
  • 该库在服务器和集群之间维护一个共享连接池,并在完成后回收连接以用于另一个请求。
  • 使用 Asyncio 时,使用 redis-py 的请求和响应表现为两个队列:调用者将请求推送到传入队列,然后从传出队列弹出响应,然后将连接返回到池中。
  • 如果在请求被推送到传入队列之后,但在响应从传出队列中弹出之前,请求被取消,我们会看到我们的错误:连接因此被破坏,并且为不相关请求出列的下一个响应可以接收遗留下来的数据在连接中。
  • 在大多数情况下,这会导致不可恢复的服务器错误,用户将不得不再次尝试他们的请求。
  • 但在某些情况下,损坏的数据恰好与请求者期望的数据类型相匹配,因此从缓存中返回的数据看起来是有效的,即使它属于另一个用户。
  • 太平洋时间 3 月 20 日星期一凌晨 1 点,我们无意中对服务器进行了更改,导致 Redis 请求取消数量激增。这为每个连接返回错误数据创造了一个小概率。


此错误仅出现在 Redis Cluster 的 Asyncio redis-py 客户端中,现已修复。

随着我们调查的结束,支持和通知我们的用户是我们的首要任务。 我们采取了以下措施来改进我们的系统:


  • 广泛测试了我们对潜在错误的修复。
  • 添加了冗余检查以确保我们的 Redis 缓存返回的数据与请求用户匹配。
  • 以编程方式检查我们的日志,以确保所有消息仅对正确的用户可用。
  • 关联多个数据源以准确识别受影响的用户,以便我们可以通知他们。
  • 改进了日志记录以识别何时发生并完全确认它已停止。
  • 提高了我们的 Redis 集群的稳健性和规模,以减少在极端负载下出现连接错误的可能性。


最后,Redis 开源维护者是出色的合作者,他们迅速解决了错误并推出了补丁。Redis 和其他开源软件在我们的研究工作中发挥着至关重要的作用。它们的重要性不可低估——如果没有 Redis,我们将无法扩展 ChatGPT。我们致力于不断支持和贡献 Redis 社区。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭