【ChatGPT插件漏洞三连发之一】未授权恶意插件安装

news2024/10/23 17:09:00

漏洞

要了解第一个漏洞,我们必须首先向您展示 OAuth 身份验证的工作原理:

假设您是 Dan,并且您想使用您的 Facebook 帐户连接到 Example.com。当您点击“使用Facebook登录”时会发生什么?

图片

在步骤 2-3 中:

在 Dan 单击“使用 Facebook 登录”后,www.example.com 打开一个新窗口,指向以下地址:

https://www.facebook.com/v3.0/dialog/oauth?redirect_uri=https://www.example.com/OAuth&scope=email&client_id=1501&state=[random_value]&response_type=token
在步骤 4-5 中:

Facebook 为 www.example.com 准备一个令牌,并将浏览器重定向回redirect_uri(步骤 2 中的参数)。确切的重定向:

https://www.example.com/OAuth#token=[secret_token]
在步骤 6-7 中:

www.example.com 从 URL 中读取令牌,并使用它来直接与 Facebook 通信,以完成身份验证并验证 Dan 的身份。

让我们把重点放在第 5 步上:
https://www.example.com/OAuth#token=[secret_token]

在此步骤中,www.example.com 接收令牌,并根据该令牌标识用户。如果攻击者将此链接发送给受害者,但使用攻击者的凭据(令牌),会发生什么情况?

图片

由于 example.com 存在安全问题,它不会验证 Dan 是否启动了 OAuth 流,因此受害者 (Dan) 将作为攻击者连接到 Example.com:

图片

在这种情况下,攻击者可以操纵受害者使用其凭据登录网站!

你可能会问自己,有什么大不了的?而且有此看法的人不在少数,许多 OAuth 开发人员认为这不是安全问题,因此无法防范此类攻击。

为了理解这大事,我们使用 ChatGPT 进行实际演示。

当用户安装需要 OAuth 用户批准的插件时,ChatGPT 会启动以程:

图片

步骤1-2:

当用户安装新插件时,ChatGPT 会将他重定向到插件网站以接收代码(对于这篇文章来说,代码即前面提到的令牌)。

步骤3-5:

用户需要批准插件,用户批准后,插件会生成一个代码,并使用该代码将用户重定向回 ChatGPT。

该插件将用户重定向到以下链接:

https://chat.openai.com/aip/{plugin_ID}/oauth/callback?code={secret_code}

步骤6-7:

当 ChatGPT 收到代码时,它会自动安装插件,并可以代表用户与插件进行交互。

用户在ChatGPT中写入的任何消息都可以转发到插件。

听起来很熟悉?这与 www.example.com 的 OAuth 图相同。新插件安装中的第 5 步与我们刚才描述的 OAuth 身份验证中的第 5 步相同。

问题和攻击:

ChatGPT 不会验证用户是否确实开始了插件安装。

攻击者可以将步骤 5 中的链接发送给受害者,如果受害者单击该链接,则受害者的帐户上将自动安装带有攻击者凭据的新恶意插件。

受害者向chatGPT发送的任何消息都可能被转移到插件中。

例如,攻击者可以向受害者发送以下链接(指向 chatgpt.openai.com 域的合法链接):

图片

{malicious_plugin_id} 是攻击者想要在受害者身上安装的插件标识符。

{attacker_code_from_malicious_plugin) 是攻击者从插件接收的代码。

通过单击此链接,受害者在未经过确认的情况下即会安装恶意插件。

影响

攻击者可以编写自己的插件,使 ChatGPT 将几乎所有聊天数据转发到该插件,然后通过利用 ChatGPT 中的漏洞,可以在受害者帐户上安装此恶意插件。

由于攻击者是此插件的所有者,因此他可以看到受害者的私人聊天数据,其中可能包括凭据、密码或其他敏感数据。

在 ChatGPT 插件的文档中,他们写到“随着时间的推移,我们预计系统将不断发展以适应更高级的用例”,因此随着 ChatGPT 插件的不断发展(现在称为 GPT),此类漏洞的安全影响也变得更加显著。

图片

缓解措施

如果实现 OAuth 并希望针对此方案进行保护,则应实现 OAuth RFC 中所述的状态参数:

图片

请注意,ChatGPT 确实实现了状态参数,但它们的状态不是随机值,因此可以被攻击者猜到。

来源:salt.security

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2221737.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024成为自动化测试的7种技能!

随着敏捷和DevOps等新时代项目开发方法逐渐取代旧的瀑布模型,测试需求在业界不断增长。测试人员现在正在与开发人员一起工作,自动化测试在许多方面极大地取代了手动测试。如果您是自动化测试领域的新手,刚雇用您的组织将期望您快速&#xff0…

java线程的几种状态

线程的所有状态 NEW: 安排了工作, 还未开始行动RUNNABLE: 可工作的. 又可以分成正在工作中和即将开始工作. BLOCKED: 这几个都表示排队等着其他事情 WAITING: 这几个都表示排队等着其他事情TIMED_WAITING: 这几个都表示排队等着其他事情TERMINATED: 工作完成了. 线程状态和状…

《黑神话悟空》各章节boss顺序汇总

第一章BOSS顺序: 1、牯护院:犀牛精,位于苍狼岭娟,击败后能获得定身术。 2、广智:火刀狼, 位于观音禅院,击败后获得广智变身,记得敲钟。 3、蓝皮幽魂:蓝皮大头&#xff0…

大模型入门到精通!大模型应用开发极简入门(含PDF)

大模型的出现正悄然改变人们的生活与工作方式,比如ChatGPT-4、文心一言、通义千问等语言大模型。它们已帮助很多办公室“白领”们在解决日常工作问题,如制定计划、撰写实施方案,甚至制作美化PPT等(笔者及身边的同事在工作中还经常…

Star Tower:智能合约的安全基石与未来引领者

在区块链技术的快速发展中,智能合约作为新兴的应用形式,正逐渐成为区块链领域的重要组成部分。然而,智能合约的可靠性问题一直是用户最为关心的焦点之一。为此,Star Tower以其强大的技术实力和全面的安全保障措施,为智…

pytest中@pytest.fixture常用顺序function

ytest中pytest.fixture用法讲解 1、测试函数开始之前2、执行测试函数:3、测试函数结束后: 备注:内容来自chatGPT 在 pytest 中,pytest.fixture 是一个非常强大的功能,用于设置测试所需的环境和状态。它可以通过 scope…

听泉鉴宝在三个月前已布局商标注册!

近日“听泉鉴宝”以幽默的风格和节目效果迅速涨粉至2500多万,连线出现“馆藏文物”和“盗墓现场”等内容,听泉鉴宝早在几个月前已布局商标注册。 据普推知产商标老杨在商标局网站检索发现,“听泉鉴宝”的主人丁某所持股的江苏灵匠申请了三十…

R语言统计分析——置换检验2

参考资料&#xff1a;R语言实战【第2版】 独立两样本和K样本检验 # 安装coin包 install.packages(c("coin")) # 加载coin包 library(coin) # 创建检验数据集 score<-c(40,57,45,55,58,57,64,55,62,65) treatment<-factor(c(rep("A",5),rep("B…

51单片机应用——直流电机PWM调速

目标实现功能 单片机引脚输出PWM波形控制直流电机以不同转速工作。 1.PWM简介 PWM技术 PWM的中文全称是脉宽调制&#xff0c;常用于电动机控制、开关电源、音频放大器等。利用PWM技术可以达到微处理器&#xff08;如单片机&#xff09;的数字输出对模拟电路控制的效果。 P…

膜结构首次应用于国内游轮项目—轻空间

轻空间&#xff08;江苏&#xff09;膜科技有限公司近日成功中标一项国内游轮项目&#xff0c;这一成就标志着膜结构在游轮船舶行业的首次应用&#xff0c;开启了新的市场探索之旅。 作为行业先锋&#xff0c;轻空间始终致力于将创新技术融入多元化场景。本次游轮项目的成功中标…

Opensearch集群部署【docker、服务器、Helm多种部署方式】

操作系统兼容性 我们建议在 Red Hat Enterprise Linux (RHEL) 或使用systemd的基于 Debian 的 Linux 发行版上安装 OpenSearch &#xff0c;例如 CentOS、Amazon Linux 2 和 Ubuntu Long-Term Support (LTS)。OpenSearch 应该适用于大多数 Linux 发行版&#xff0c;但我们只测…

2023年五一杯数学建模C题双碳目标下低碳建筑研究求解全过程论文及程序

2023年五一杯数学建模 C题 双碳目标下低碳建筑研究 原题再现&#xff1a; “双碳”即碳达峰与碳中和的简称&#xff0c;我国力争2030年前实现碳达峰&#xff0c;2060年前实现碳中和。“双碳”战略倡导绿色、环保、低碳的生活方式。我国加快降低碳排放步伐&#xff0c;大力推进…

工业一体机为软件开发商提供稳定可靠的硬件平台

在当今数字化、智能化的工业时代&#xff0c;软件在工业生产和管理中的作用日益凸显。而软件的高效运行离不开稳定可靠的硬件平台&#xff0c;工业一体机正是这样一个为软件开发商提供坚实支撑的关键设备。 工业一体机的铝合金工艺和无风扇设计为软件运行创造了良好的散热环境。…

Apache Hive 帮助文档

Apache Hive 帮助文档 由于教学需要&#xff0c;本文主要介绍 hive 的 基础 和 哪里可以看帮助文档的介绍&#xff0c; 是一篇对帮助文档整理的文章 官方网站 文章目录 Apache Hive 帮助文档什么是 Hive&#xff1f;Hive 下载Hive帮助文档 什么是 Hive&#xff1f; Apache Hi…

ComfyUI 即将发布桌面版,更新内容前瞻

就在昨天&#xff0c;ComfyUI 宣布即将发布桌面版&#xff0c;一下是官方的介绍 官网发布页&#xff1a;https://blog.comfy.org/comfyui-v1-release/ 完全打包的桌面版本 在过去的两个月里&#xff0c;我们一直在努力为 ComfyUI 提供无缝的桌面体验。我们的目标是确保非技术…

Python教程:制作贪吃蛇游戏存以exe文件运行

Python&#xff0c;作为一种解释型、面向对象、动态数据类型的高级程序设计语言&#xff0c;其简洁易懂的语法和丰富的库使得它成为开发小游戏的理想选择。 下面&#xff0c;我们就来一步步教大家如何用Python制作一个贪食蛇小游戏&#xff0c;并将其打包成exe程序&#xff0c…

活体人脸识别技术总结及实践

文章目录 1、背景2、人脸反伪装技术2.1 活体人脸识别常见模式2.2 学术上反伪装研究 3、工程实现3.1 Silent-Face3.2 Silent-Face模型转rknn3.3 Silent-Face模型的限制 1、背景 1.1 什么是活体检测&#xff1f; 在人脸识别之前&#xff0c;先判断一下屏幕前摄像头捕捉到的人脸是…

【Golang】Gin框架中如何定义路由

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

计算机网络:数据链路层 —— 无线局域网 WLAN

文章目录 局域网无线局域网 WLAN802.11 无线局域网802.11无线局域网的组成WLAN 的组成有固定基础设施的802.11无线局域网漫游服务 无固定基础设施的802.11无线局域网 802.11无线局域网的物理层802.11无线局域网的数据链路层不使用碰撞检测 CD 的原因CSMA/CA 协议CSMA/CA 协议的…

新探索研究生英语读写教程pdf答案(基础级)

《新探索研究生英语读写教程》的设计和编写充分考虑国内研究生人才培养目标和研究生公共英语的教学需求&#xff0c; 教学内容符合研究生认知水平&#xff0c; 学术特征突出&#xff1b;教学设计紧密围绕学术阅读、学术写作和学术研究能力培养&#xff1b;教学资源立体多元&…