跳到主要内容
指南

Lovable 应用安全检查清单:你的应用安全吗?

Lovable 平台本身的安全和你在它上面构建的应用的安全,是两回事。Lovable 会扫描常见错误,但你的应用到底有多安全,取决于它自己的访问规则、密钥和服务器代码。请检查:每张暴露的表都开启了行级安全且与“谁可以看什么”相符;没有任何 secret 密钥到达浏览器;支付在服务器端确认;有人在盯着线上应用。

Plutonapps 工程团队更新于 事实核对日期
CVE-2025-48757 的成因
行级安全未开启,或范围过宽
可以安全发布
Supabase publishable(anon)密钥
绝不能发布
service role 或其他 secret 密钥
何时复查
每次涉及数据或访问权限的改动之后

Lovable 安全吗?这是否意味着我的应用也安全?

Lovable 表示其支持 SOC 2 和 GDPR 要求,并在信任中心公布了安全文档。这涵盖的是 Lovable 的平台:它的基础设施、访问控制和员工。它不涵盖你应用内部的规则,因为那些规则是你(在 Lovable 的帮助下)写的。

Lovable 的安全扫描会在你每次发布时运行一次快速检查:数据库审查、依赖审计和 MCP 服务器检查。手动启动(Lovable Enterprise 客户可按计划启动)的深度扫描还会审查访问控制、未认证的端点、注入、泄露的密钥、支付、认证和暴露的个人数据。Lovable 自己的文档明确表示,这些工具无法保证完全安全。请把扫描当作烟雾报警器,而不是全面检查。

CVE-2025-48757 是什么?会影响我的应用吗?

CVE-2025-48757 于 2025 年 5 月发布,描述了 2025 年 4 月 15 日及之前由 Lovable 生成的网站中行级安全策略不足的问题,未经认证的攻击者可借此读取或写入数据库表。美国国家漏洞数据库将其列为严重级别,CVSS 3.1 评分 9.3,并注明 Lovable 对此有异议,理由是每位客户应负责保护自己应用的数据。

报告该漏洞的研究员 Matt Palmer 表示,他扫描了 1,645 个项目,在其中 170 个项目中发现了 303 个存在漏洞的端点,并表示 Lovable 于 2025 年 4 月随 Lovable 2.0 推出了安全扫描。无论你如何看待这一争议,实际教训都一样:如果你的应用是在那之前生成的,或者之后你改动过表,请自己检查策略。策略存在,不等于策略正确。

Lovable 安全检查清单应涵盖哪些内容?

Lovable 应用安全检查清单,附每项的测试方法
检查项为什么重要如何测试
暴露 schema 中的每张表都开启 RLS没有它,Supabase 会让任何拥有授权的角色读写整张表运行 Supabase 的 Security Advisor;lint 0013(rls_disabled_in_public)会标记出来
策略符合你的规则像 USING (true) 这样的策略能通过扫描,却仍然对所有人放行以用户 A 登录,通过 API 请求用户 B 的数据行,预期什么都拿不到
开启了 RLS 但没有策略的表它们会拒绝一切,表现为功能失效,而不是数据泄露Advisor lint 0008(rls_enabled_no_policy);然后编写该功能所需的策略
浏览器中没有 secret 密钥service role 密钥会绕过所有 RLS 策略在构建出的 JavaScript 中搜索 sb_secret_ 或旧版 service_role 密钥;轮换任何曾被发布过的密钥
所有涉及费用的操作都在服务器端检查客户端代码可以被使用者自行修改用改过的价格或方案直接调用你的边缘函数,预期会被拒绝
对注册、登录和 AI 调用进行限流不限次数的请求会导致滥用或意外账单在预发布环境中用脚本快速发出 100 个请求,确认大部分被拒绝
泄露密码防护,以及管理员的多因素认证在其他泄露事件中被重复使用的密码,是常见的入侵途径注册时尝试使用一个已知泄露过的密码
审计日志和错误监控没有记录的事情,你无从调查在预发布环境中做一次管理操作,然后在日志中找到它
依据 Supabase 的 RLS、API 密钥和数据库顾问文档以及 Lovable 的安全文档整理,截至 2026 年 9 月 30 日。

如何修复 Lovable 应用中的 Supabase RLS 错误?

RLS 错误分为截然相反的两类,先弄清楚你遇到的是哪一类会很有帮助。

  • 权限被拒绝(Postgres 错误 42501,或返回空结果)。RLS 已开启,但没有策略允许该请求。这说明 RLS 在正常工作。请编写能让功能正常运行的最窄策略,例如只允许所有者列等于当前登录用户 ID 的数据行。
  • 所有人都能正常访问一切。这是更危险的情况。像 USING (true) 这样的策略,或者没打开 RLS 开关,会让任何用户通过。Supabase 的顾问会标记宽松策略(lint 0024,permissive_rls_policy),以及在 RLS 关闭时仍存在的策略(lint 0007,policy_exists_rls_disabled)。
  • 读取用户元数据的策略。Supabase 警告不要基于用户可以自行编辑的元数据编写策略(lint 0015,rls_references_user_metadata)。请改用由你的服务器控制的表,例如团队成员关系表。

当你让 Lovable 修复某条策略后,请重新运行双用户测试。一条让错误消失的提示词,可能是通过放宽访问权限做到的——而这恰恰是你想要避免的故障。

在 Lovable 应用中,哪些密钥可以安全暴露?

Supabase 的文档说明,publishable(anon)密钥可以安全暴露,因为它只能访问行级安全所允许的内容。secret 密钥(包括 service role 密钥)会绕过所有 RLS 策略,绝不能出现在浏览器、已发布的应用或源代码管理中。术语表中关于 anon 密钥与 service role 密钥的条目解释了两者的区别。第三方密钥,例如 Stripe 或邮件服务商的密钥,应放在边缘函数的密钥设置中,而不是应用代码里。参见密钥管理。

线上的 Lovable 应用应该多久复查一次?

每次涉及数据、访问权限或支付的改动之后都要复查,其他方面则按计划定期复查:依赖会出现新的漏洞,密钥应当轮换,新的表也会带来新的策略。这就是为什么安全作为一种习惯,比作为一次审计更有效。在我们的方案中,每一处改动进入生产环境前都会运行安全检查、代码审查和回归测试,并由作者以外的工程师批准。

常见问题

用 Lovable 做真正的商业应用安全吗?

Lovable 是构建和打磨应用的一个合理选择,它也会扫描常见的安全错误。成品应用是否安全,取决于它自己的访问规则、密钥和服务器代码,你应该在真实用户和真实数据到来之前验证这些。Lovable 的文档表示,其扫描无法保证完全安全。

我的 Lovable 应用中的 Supabase anon 密钥是安全问题吗?

不是。Supabase 的文档说明 publishable(anon)密钥可以安全暴露,因为它只能访问行级安全所允许的内容。只有在 RLS 关闭或范围过宽时,它才会成为问题。service role 密钥则不同:它会绕过 RLS,绝不能出现在浏览器中。

CVE-2025-48757 还会影响 Lovable 应用吗?

该 CVE 涵盖 2025 年 4 月 15 日及之前由 Lovable 生成的网站,Lovable 对此有异议。此后 Lovable 增加了安全扫描。任何应用,无论新旧,都仍可能发布范围过宽的策略,所以请用两个用户账户测试你自己的表,而不要只看日期。

一次 Lovable 安全审查要花多少钱?

许多自由职业者和公司以固定价格提供一次性审查。在 Plutonapps 方案中,安全检查和代码审查作为月费的一部分,在每次改动时运行,同时还包括构建、测试、发布和运行应用。方案和价格见我们的价格页面。

我可以自己做这些安全检查吗?

可以。Lovable 在你发布时会运行快速扫描,Supabase 的 Security Advisor 就在你的项目控制台中,清单中的双用户测试只需要两个测试账户。独自一人更难做到的,是在应用上线的整个期间,每次改动都坚持做。

来自我们的案例

本页术语

来源

本页所有外部事实均已于 30 September 2026对照所附来源核实。价格和方案会变化,请点击链接查看最新数据。

  1. Lovable:安全扫描文档
  2. Lovable:安全
  3. NVD:CVE-2025-48757
  4. Matt Palmer:关于 CVE-2025-48757 的声明
  5. Supabase:行级安全
  6. Supabase:API 密钥
  7. Supabase:数据库顾问