6

Redis漏洞导致ChatGPT重大故障,OpenAI公布技术细节 - Redis - dbaplus社群:围绕Data...

 1 year ago
source link: https://dbaplus.cn/news-158-5185-1.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Redis漏洞导致ChatGPT重大故障,OpenAI公布技术细节

dbaplus社群 2023-03-29 10:18:30

事件梳理

1、近日,由于Redis的开源库bug导致了ChatGPT发生故障和数据泄露事件,造成部分用户可以看见其他用户的个人信息和聊天查询内容;

2、OpenAI首席执行官Sam Altman在推特上为泄密事件道歉。Altman发推文道:“由于开源库中的一个漏洞,我们的ChatGPT遇到了一个重大问题,现在已经发布了补丁,我们刚完成了验证工作。只有一小部分用户能够看到其他用户的对话历史记录的标题。我们为此事深表歉意。”

图片

3、上周末,OpenAI发布了一份事后分析报告,解释了Redis客户软件开源库中的一个漏洞导致ChatGPT服务泄露了其他用户的聊天查询和1.2%的ChatGPT Plus用户的个人信息。OpenAI在发布的事后分析报告中表示:“该漏洞是在Redis客户软件的开源库Redis -py中发现的。我们一发现了这个漏洞,就联系了Redis的维护者,已发布了解决这个问题的补丁。”泄露的信息包括订阅者的姓名、电子邮件地址、支付地址、信用卡号后四位数字和到期日期。

图片

技术细节

以下是这个错误的具体细节:

  • OpenAI 使用 Redis 在他们的服务器中缓存用户信息,所以 ChatGPT 不需要为每个请求检查数据库。



  • OpenAI 使用 Redis Cluster 将这一负载分布到多个 Redis 实例上。



  • OpenAI 使用 redis-py 库,以便让用了 Asyncio 的 Python 服务器与 Redis 对接。



  • 该库在服务器和集群之间维护一个共享的连接池,并在完成后回收连接以用于另一个请求。



  • 当使用 Asyncio 时,redis-py 的请求和响应表现为两个队列:调用者将请求推送到传入队列,并从传出队列中弹出响应,然后将连接返回到池中。

图片
  • 如果在请求被推送到传入队列之后,但在响应从传出队列中弹出之前,请求被取消,我们就会看到错误:连接因此被破坏,下一个为不相关的请求出列的响应可以接收连接中留下的数据。



  • 在大多数情况下,这会导致一个无法恢复的服务器错误,而用户将不得不重新尝试他们的请求。



  • 但在某些情况下,损坏的数据恰好与请求者所期望的数据类型相匹配,因此从缓存中返回的数据看起来是有效的,即使这些数据属于另一个用户。



  • 在太平洋时间3月20日星期一凌晨1点,OpenAI 无意中给他们的服务器引入了一个变化,导致 Redis 请求取消的情况激增。这在一定程度上引发了每个连接返回错误数据的可能性。



  • 这个错误只出现在 Redis Cluster 的 Asyncio redis-py 客户端,现在已经被修复。

经过深入调查,OpenAI 发现一些用户有可能看到其他活跃用户的姓名、电子邮件地址、账单地址、信用卡号码的最后四位数和信用卡到期日,OpenAI 特别强调道,完整的信用卡号码并没有暴露。

这部分受影响的用户占 ChatGPT Plus 用户总数的1.2%,目前他们已联系了所有受影响的 ChatGPT 用户。

总结

事后,测试修复程序代码经官方广泛测试,确保问题不会再发生,OpenAI也添加额外的检查,确保Redis缓存回传的资料与请求用户相符,并且通过比对多重资料,找出受影响的用户,提供必要的协助,OpenAI也扩大了Redis集群规模以及强健性,减少在极端负载时出现错误连接的可能性。

但值得深思的是,信息安全一直是每次技术进步的难点,而此次GPT带来的AI浪潮中,安全问题更引人深思,从模型的本身-面向的领域-数据的使用-具体的应用等多维度中均带来全新的考验。本次ChatGPT 故障导致数据泄露敲响了新技术带来新安全问题的警钟……

来源丨内容整理自网络 dbaplus社群欢迎广大技术人员投稿,投稿邮箱:[email protected]

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK