🔴 严重 | CVE-2026-35198 — HeyForm is an open-source form builder. Prior to v...
🔴 【深度分析】严重安全漏洞:CVE-2026-35198
CVSS 评分: 严重(9.0)🔴 状态: Deferred 发布时间: 2026-07-20
🔍 技术细节速览
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2026-35198 |
| CVSS 评分 | 9.0 🔴 |
| 严重程度 | 严重 |
| CVSS 向量 | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H |
| CWE 分类 | CWE-79 |
| 发布时间 | 2026-07-20 |
| 最后更新 | 2026-07-22 |
| 状态 | Deferred |
| 数据来源 | security-advisories@github.com |
CVSS 评分:9.0(严重)
CVSS 向量:CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
危害等级:严重
漏洞概述
CVE-2026-35198 是 HeyForm 开源表单构建器中的一个 存储型跨站脚本(Stored XSS) 漏洞。该漏洞允许拥有低权限(如普通团队成员)的攻击者在表单编辑过程中注入恶意 JavaScript 代码。当具有高权限的团队所有者(Owner)在后台查看该表单时,恶意脚本会被触发执行,进而导致攻击者能够 完全接管团队所有者的账户,实现权限提升。此漏洞已在 HeyForm 3.0.0-rc.7 版本中得到修复。
受影响组件与版本
- 组件:HeyForm(开源表单构建器)
- 受影响版本:所有 低于 3.0.0-rc.7 的版本
- 固定版本:3.0.0-rc.7 及更高版本
漏洞原理分析
根据现有信息,该漏洞属于典型的 存储型 XSS(CWE-79)。攻击向量分析如下:
存储位置:低权限团队成员在表单编辑界面(如图形化拖拽或代码编辑模式)中,能够将恶意 JavaScript 代码注入到表单组件的内容字段(例如自定义 HTML、提示文本、默认值或自定义脚本块)中。由于 HeyForm 未对这些输入进行充分的 输出编码 或 验证过滤,恶意代码被持久化存储到服务器端。
触发条件:当团队所有者(Owner)通过表单管理后台 预览或查看 该被污染的表单时,服务器返回的 HTML 中包含未经过滤的恶意脚本,并在所有者的浏览器上下文中执行。CVSS 向量中
UI:R(用户交互:必需)即对应这一步骤——需要所有者主动访问受感染表单页面。后果链:恶意脚本获得与所有者相同的会话凭证或权限上下文,可利用表单管理、用户管理等功能完成 账户接管(Account Takeover)。由于影响范围变更(
S:C),攻击者可以横向或纵向跨越至更高权限的会话,最终完全控制团队及其关联资源。
注意:目前公开信息未披露具体的注入点(如是否在富文本编辑器、HTML 块或自定义代码块等位置)。但从 HeyForm 的架构推测,最可能的入口是 “自定义 JavaScript” 或 “嵌入代码” 功能。正式分析需等待官方漏洞详情公开。
影响评估
攻击复杂度与利用条件
| 指标 | 值 | 解读 |
|---|---|---|
| 攻击向量 (AV) | 网络 (N) | 攻击者可通过网络远程利用,无需物理接触。 |
| 攻击复杂度 (AC) | 低 (L) | 无需特殊条件,仅需熟悉表单编辑器操作。 |
| 权限要求 (PR) | 低 (L) | 攻击者只需拥有团队中的“成员”角色(非管理员)。 |
| 用户交互 (UI) | 必需 (R) | 需要团队所有者主动查看受感染表单。 |
| 影响范围 (S) | 已变更 (C) | 漏洞影响从低权限成员扩展到所有者级别权限。 |
| 机密性/完整性/可用性 | 高 (H) | 攻击者可窃取数据、修改表单、删除内容,甚至完全接管账户。 |
潜在后果
- 账户完全接管:攻击者利用所有者会话执行任意管理操作,包括添加/删除管理员、导出敏感数据、修改系统配置。
- 数据泄露:表单中收集的用户数据可能被批量窃取。
- 内部威胁升级:低权限成员可越权控制整个团队资源,形成供应链安全风险。
修复建议
正式修复(推荐)
升级 HeyForm 至 3.0.0-rc.7 或更高版本。该版本已对表单编辑中的输入输出进行了安全过滤,阻止了恶意脚本的存储与执行。
临时缓解措施
若无法立即升级,可采取以下措施:
- 权限收缩:限制低权限成员对表单“自定义脚本”或“HTML 块”等敏感字段的编辑权限。仅保留创建/修改表单项的能力,禁止插入任意代码。
- 输入验证加固:在 Web 应用防火墙(WAF)或反向代理层添加规则,过滤表单提交中的
<script>、javascript:等关键字。 - 审查现有表单:团队所有者应检查所有已存在的表单,清除可疑的 JavaScript 代码段。
- 启用 CSP(内容安全策略):为表单管理页面设置严格的
script-src指令,阻止内联脚本执行(注意可能影响正常功能)。
参考资料
- CVE 详情:https://nvd.nist.gov/vuln/detail/CVE-2026-35198
- CWE-79:https://cwe.mitre.org/data/definitions/79.html
- HeyForm 官方公告:(待公布,请关注仓库 Release Notes:https://github.com/heyform/heyform/releases)
- CVSS v3.1 计算器:https://www.first.org/cvss/calculator/3.1#CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
免责声明:本文分析基于 NVD 公开数据及通用漏洞知识库,未使用未公开的漏洞细节。建议用户以官方修复版本为准,及时更新。