Vibe-Coded 应用充斥着可利用的安全漏洞
- 浏览次数 1711
- 喜欢 0
Vibe-coding 正在增加。Vibe-coded 应用往往存在缺陷。这对未来来说是一个令人担忧的迹象吗?
Vibe coding,即使用 AI 辅助或执行代码生成,正在急剧增加。2026 年 5 月,Hostinger 报告称,"截至 2026 年 1 月,90% 的开发者在工作中至少定期使用一种 AI 工具。"在适用于一切的基本业务压力——我们需要更多、更快、更便宜——的推动下,这一比例可能会继续增长。
但是,虽然 vibe coding 的数量在增加,但对 vibe 开发应用安全性的担忧也在增加。
Xint.io,这个提供 Theori 的 AI 驱动自主渗透测试代码(Xint)的网络平台,决定分析 vibe-coded 应用,以量化 vibe coding 在哪些方面、何处、为何以及以何种频率向其接触的应用引入安全弱点。
为了实现这一目标,Xint 创建了三个测试,以反映最常见的 AI 辅助开发工作流:
- 根据编写良好的规范开发新应用(绿地开发,如同有经验丰富的开发者监督整个过程)
- 代表日益增长的随意编码者说"直接构建这个"的新应用(绿地开发)
- 对一个加固过的应用(Gnuboard7)进行测试,以查看加固是否引入了新的漏洞(棕地比较)
虽然 Gnuboard7(一个遗留 PHP 应用)是一个成熟的应用,但 Xint 需要将其视为 AI 辅助应用进行检查。因此,他们将其迁移到 Laravel + React 架构,"并要求 AI 对其进行加固。"迁移创建了一个当代基线,以便发现的漏洞能反映 AI 的推理限制,而非遗留问题。
每个应用都经过 Xint 30 分钟的运行时和源代码分析扫描。它总共发现了 434 个可利用的安全问题:绿地应用中有 196 个,单个棕地应用中有 238 个。
Xint.io 得出的主要结论涵盖四个方面:AI 代码中最常见的缺陷;最常见的严重缺陷;应用规模对引入缺陷的影响;以及 AI 在生成安全代码方面是否取得了任何进展。
缺少速率限制和 DOS 控制是最常见的缺陷。资源耗尽/DOS 占 434 个缺陷中的 93 个。授权和不安全的直接对象引用(用户获取超出其权限的数据)以 88 个缺陷位居第二;访问边界/路径遍历/SSRF 缺陷以 54 个位列第三。
当开发者仅要求功能时,此类缺陷就会发生。"影响不是数据盗窃,但在实际运营中意味着服务器成本失控或攻击者可以击倒的服务器,"报告警告道。
Xint 的建议:"不要仅仅检查 AI 代码是否能编译;要关注它的性能以及在运行时消耗的资源。"
密钥泄露是严重级别缺陷的首要来源。共有 23 个严重发现,其中硬编码或默认密钥最为常见,有 11 个。调试模式下的 RCE 占另外 6 个。
"查找 AI 生成的代码中嵌入的硬编码密钥,例如 API 密钥或 PII,"Xint 建议。
规模很重要。"细粒度授权在小型应用上可以维持,但随着应用的增长而失效,"报告警告道。虽然 IDOR 缺陷在较小的绿地应用中仅占缺陷的 11%,但在较大的棕地 Gnuboard7 应用中占到了 28%。
"随着应用中端点数量的增加,请仔细检查细粒度的对象权限,"Xint 建议。
尽管这些持续的缺陷由 vibe coding 引入,但 Xint 的第四个结论是 vibe coding AI 正在改进。在开始分析之前,Xint 预计会发现大量注入缺陷(SQLi、XSS)和 IDOR/BOLA 类型的访问控制漏洞。结果恰恰相反。注入几乎没出现,而 IDOR/BOLA 缺陷也远低于预期。
"这表明基础模型在这些领域确实有所改进,"报告评论道。
Xint 研究的目的不是为了证明 vibe coding 会引入缺陷(这已是已知的),也不是为了阻止公司使用 vibe coding(这不会发生)。然而,了解最常见的缺陷以及理解它们如何以及为何发生,可以帮助开发者克服它们——要么通过包含消除缺陷的提示,要么在生成后检查它们是否存在。
通过理解 vibe coding 的弱点,开发者未来可以发挥其优势。