ZCyberNews
English
漏洞高危5 分钟阅读
CVE-2021-47942

HACS路径遍历CVE-2021-47942让攻击者窃取家庭

CVE-2021-47942(CVSS 7.5)在Home Assistant Community Store 1.10.0中允许未经身份验证的攻击者通过/hacsfiles/遍历读取.storage/auth文件,伪造JWT令牌,并获取...

HACS路径遍历CVE-2021-47942让攻击者窃取家庭

执行摘要

Home Assistant Community Store (HACS) 版本 1.10.0 中存在一条路径遍历漏洞 —— 被追踪为 CVE-2021-47942,CVSS基础得分为7.5 —— 允许未经身份验证的攻击者通过向 /hacfsiles/ 端点发送特别制作的请求,从 Home Assistant 文件系统中读取任意文件。根据NVD条目和项目的GitHub仓库,攻击者可以检索包含用户凭证和刷新令牌的 .storage/auth 文件。有了这些令牌,攻击者可以伪造有效的JSON Web Tokens (JWTs) 并升级权限至对 Home Assistant 实例的完全管理控制。该漏洞在 HACS 版本 1.10.1 中被修补,但在披露时没有发布公开通告。

技术分析

HACS 是 Home Assistant 的社区驱动组件商店,Home Assistant 是一个开源的家庭自动化平台。漏洞存在于 HACS 1.10.0 通过 /hacfsiles/ URL路径处理文件服务的方式中。该端点未能清理目录遍历序列(../),使攻击者能够导航到预期的web根目录之外,并以 Home Assistant 进程的权限读取任意文件。

最关键的目标是 .storage/auth 文件,该文件存储了包括用户凭证和刷新令牌在内的认证材料。通过泄露此文件,攻击者可以在无需认证的情况下重建有效的JWT令牌。然后这些令牌可以用于作为任何用户进行身份验证,包括管理员,授予对 Home Assistant 实例的完全控制 —— 包括自动化规则、连接的设备和敏感配置数据。

该漏洞被归类为 CWE-22(对受限目录的路径名限制不当)。CVSS 7.5 分数反映了低攻击复杂性(无需认证,基于网络的攻击向量)和高机密性影响。完整性和可用性没有直接受到影响,但随后的权限升级可能导致整个系统被破坏。

HACS项目在版本1.10.1中通过在 /hacfsiles/ 端点上实施适当的输入验证和路径规范化来解决此问题。修复程序合并到了主分支中,没有正式的安全通告;依赖旧版本的用户仍然处于暴露状态。

缓解措施与建议

运行 HACS 的 Home Assistant 用户应立即检查他们安装的版本,并在尚未这样做的情况下升级到 1.10.1 或更高版本。升级可以通过 HACS 界面执行,或者从官方仓库重新安装组件。

对于无法立即升级的用户,建议进行网络级别的缓解措施:将 Home Assistant Web界面的访问限制在受信任的IP地址或VPN连接,并在反向代理后面放置实例,规则阻止URL路径中的路径遍历模式。监控日志以查找包含针对 /hacfsiles/../ 序列的请求也可能有助于检测利用尝试。

由于漏洞允许未经认证的文件读取,任何暴露在公共互联网上的 Home Assistant 实例都处于风险之中。用户应假设,如果他们的实例在漏洞期间是可访问的,凭证和令牌可能已经被泄露,应进行轮换。

订阅更新

将最新的网络安全资讯直接发送到您的邮箱。

标签:#home-assistant#hacs#path-traversal#cve-2021-47942#jwt-token-theft#iot-security

相关文章