授权漏洞解析:编辑器权限越权操作管理员工作区功能

本文详细分析了Lovable Cloud平台存在的权限验证漏洞,编辑器角色的用户可通过API端点越权禁用管理员专属的工作区功能,导致服务中断风险。

授权漏洞报告 #3371414 - 不当授权导致编辑器可切换管理员专属工作区功能(Lovable Cloud)

摘要

具有编辑器角色的账户可以成功调用API端点/workspaces/<WORKSPACE_ID>/tool-preferences/supabase/enable来禁用工作区范围内的管理员专属功能(Lovable Cloud)。该API未对此操作实施服务器端角色检查,允许垂直权限提升(访问控制破坏)。

重现步骤

前置条件

两个账户是同一工作区Victim-Workspace的成员:

  • 账户A(所有者/管理员)- 在Victim-Workspace中具有所有者角色
  • 账户B(编辑器)- 在同一Victim-Workspace中具有编辑器角色

操作步骤

  1. 以账户A(管理员)身份登录,并在工作区内切换云功能为关闭状态
  2. 捕获此端点(负责禁用云功能)
1
2
3
4
5
6
POST /workspaces/<WORKSPACE_ID>/tool-preferences/supabase/enable HTTP/2
Host: lovable-api.com
Authorization: Bearer <OWNER-JWT>
Content-Type: application/json

{"approval_preference":"disable"}

注意:<WORKSPACE_ID>是Victim-Workspace的工作区ID。

  1. 修改请求以使用编辑器JWT令牌 将Authorization头部替换为账户B(编辑器)的JWT:
1
2
3
4
5
6
POST /workspaces/<WORKSPACE_ID>/tool-preferences/supabase/enable HTTP/2
Host: lovable-api.com
Authorization: Bearer <EDITOR_JWT>
Content-Type: application/json

{"approval_preference":"disable"}

当使用编辑器的JWT再次发送请求时,请求成功并且Lovable Cloud设置在工作区中被关闭。

概念验证

视频:Lovable_Cloud_Feature_POC.mp4(8.37 MiB)

影响

编辑器可以禁用Lovable Cloud功能,该功能为工作区提供后端支持(数据库、身份验证、存储和无服务器功能)。这可能导致工作区范围内的停机时间,以及所有项目和用户的功能中断,由于潜在的服务中断和业务损害,影响被评为高级。

时间线

  • 2025年10月5日下午1:08 UTC:d0maxploit向Lovable VDP提交报告
  • 2025年10月5日下午7:47 UTC:Lovable VDP工作人员将严重性从高(8.3)调整为低,并关闭报告状态为已解决
  • 2025年10月5日下午8:32 UTC:d0maxploit请求披露此报告
  • 9天前:此报告已被披露

报告详情

  • 报告ID:#3371414
  • 状态:已解决
  • 严重性:低(0.1 ~ 3.9)
  • 披露时间:2025年11月4日下午8:32 UTC
  • 弱点:不当授权
  • CVE ID:无
  • 赏金:无

厂商回应

Lovable VDP工作人员表示:“很好的发现:)非常感谢您帮助我们保持安全!我们已经有了修复方案,应该很快就会发布!…按照设计,即使没有这个漏洞,用户仍然可以破坏自己的工作区。”

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计