CVE-2025-62172:Home Assistant能源仪表板存储型XSS漏洞
漏洞概述
Home Assistant在能源仪表板中存在存储型跨站脚本(XSS)漏洞,认证用户可通过为能源实体设置恶意名称,对查看能源仪表板的任何用户实施XSS攻击。
受影响版本
- 受影响版本:>= 2025.1.0, <= 2025.10.1
- 已修复版本:2025.10.2
漏洞详情
攻击场景
- 用户自定义攻击:认证用户可为能源实体设置包含恶意脚本的名称
- 供应商攻击:能源实体提供商(如Tibber)设置恶意默认名称
- 触发条件:用户在能源仪表板中悬停查看数据点时执行恶意代码
技术分析
漏洞位于前端代码的模板渲染部分,具体位置:
|
|
其中 params.seriesName 参数未经过适当的HTML转义处理,直接渲染到页面中。
源代码追踪
-
数据流路径:
hui-energy-usage-graph-card.ts第467-478行获取实体名称- 调用
getStatisticLabel()函数 - 最终调用
computeStateName()获取实体显示名称
-
名称处理:
- 实体ID中的下划线被替换为空格
- 未对HTML特殊字符进行转义处理
漏洞复现步骤
- 设置新的能源提供商并创建价格传感器
- 为价格传感器设置恶意名称(包含XSS payload)
- 配置能源仪表板使用该价格传感器数据
- 查看数据并在数据点上悬停触发代码执行
影响评估
攻击向量
- 攻击途径:网络远程攻击
- 权限要求:低权限认证用户
- 用户交互:需要用户主动悬停操作
潜在影响
- 通过电力提供商(如Tibber)的默认名称实施远程攻击
- 恶意员工或入侵者可通过能源提供商攻击Home Assistant实例
- 影响范围:机密性、完整性、可用性均受到高度威胁
CVSS评分
- 总体评分:8.5(高危)
- 攻击向量:网络(Network)
- 攻击复杂度:低(Low)
- 权限要求:低(Low)
- 用户交互:需要(Active)
修复建议
建议所有Home Assistant用户立即升级到2025.10.2或更高版本,该版本已对能源仪表板中的实体名称输出进行了适当的HTML转义处理。
参考链接
- GHSA-mq77-rv97-285m
- NVD漏洞详情:CVE-2025-62172
- Home Assistant前端相关源代码文件