Home Assistant Core
CVE-2025-65713
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain authenticated Home Assistant access
-
ExploitInvoke download_file with traversal subdir
-
ExecutionWrite downloaded file outside download directory
-
ImpactOverwrite or plant sensitive files
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the optional Downloader integration is configured (it is not part of a default Home Assistant install and must be set up with a download directory), and the attacker must be able to call the downloader.download_file service supplying a malicious subdir value - the patch shows the flaw is that subdir was concatenated into the target path without validation (the fix adds raise_if_invalid_path and rejects absolute paths). Limiting factors: the Downloader integration must be enabled; the download_file service must be reachable; and invoking Home Assistant services normally requires an authenticated session or access token, so this is not plausibly reachable by a fully unauthenticated remote attacker against a default deployment despite the PR:N in the published vector. |
| Impact | This is a moderate, not urgent, issue and the signals are consistent in pointing away from widespread exploitation. The official CVSS 3.1 base score is 4.0 (AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N), EPSS is low at 0.40% (34th percentile), the vulnerability is NOT in CISA KEV, and the vuln.today decision label is 'this_month' rather than act_now or emergency - so there is no 'no public exploit identified' claim to make (a PoC reference exists) but also no evidence of active exploitation. The exploitation status is: a public PoC reference exists (a GitHub gist); it is not verified as working exploit code. Two data points conflict and should be verified: (1) the official vector marks this C:L/I:N, yet the underlying flaw is a Downloader integration that concatenates an attacker-supplied subdir into a write path - a path-traversal write affects integrity, not confidentiality, so the impact labeling appears mislabeled relative to the mechanism shown in the patch. (2) The official vector marks PR:N, but the flaw is reached only through the downloader.download_file service, and invoking a Home Assistant service requires an authenticated session or token - so unauthenticated exploitation (PR:N) is questionable; verify with the vendor. Overall this is a genuine but low-to-moderate-priority defect best handled on a normal patch cycle, not an emergency. |
| Exploit ScenarioDerived | An actor with the ability to invoke Home Assistant service calls (an authenticated user or a leaked long-lived token) calls the downloader.download_file service with a crafted subdir containing '../' traversal sequences, causing the downloaded content to be written outside the configured download directory. A public PoC reference (a GitHub gist) exists but is not verified as working exploit code. Because the download target is attacker-influenced, this can be used to drop or overwrite files in sensitive locations within the Home Assistant host's filesystem. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Directory traversal in the optional Downloader integration of Home Assistant Core before 2025.8.0 lets a caller of the downloader.download_file service supply a crafted 'subdir' value that is concatenated into the target path without full validation, so downloads can be written outside the configured download directory (integrity impact; the assessed vector rates confidentiality as unaffected). Only installations that have explicitly set up the Downloader integration with a download directory are exposed, and invoking the service requires an authenticated session or access token, so this is not plausibly reachable by a fully unauthenticated remote attacker on a default deployment. A public PoC reference exists; it is not verified as working exploit code, EPSS is 0.40% (34th percentile), there is no CISA KEV entry, and the issue is not considered urgent.
RemediationAI
Upgrade Home Assistant Core to 2025.8.0 or later, which contains the fix from https://github.com/home-assistant/core/pull/150046 that rejects absolute subdir values and raises validation errors before any path is written; the vendor-released fix is the complete remediation per the available evidence. Because the prerequisite is that the optional Downloader integration is configured and that a caller can reach the downloader.download_file service, a compensating control is to remove or disable the downloader integration where file downloads are not needed (this removes the feature entirely), and to keep the set of principals holding long-lived access tokens or service-call access minimal, since service invocation is normally an authenticated action and reducing that population shrinks the attack surface. Release notes and the vendor advisory referenced through the pull request should be reviewed before upgrading.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) in Home Assistant's Python-based Downloader integration. The vulnerable service handler in homeassistant/components/downloader/services.py read the user-supplied ATTR_SUBDIR and ATTR_FILENAME values and built the destination path by concatenation, running raise_if_invalid_path on the subdir but then still allowing an absolute path (and by extension traversal sequences) to escape the configured CONF_DOWNLOAD_DIR. The upstream fix in PR 150046 adds an explicit os.path.isabs(subdir) rejection and wraps validation failures in a ServiceValidationError with new translation keys 'subdir_invalid' and 'subdir_not_relative', and async_setup_entry now persists the resolved download directory back into the config entry data so the baseline path is stored rather than recomputed. The affected component is the downloader integration identified by CPE cpe:2.3:a:home-assistant:home-assistant:*:*:*:*:*:*:*:* (all versions before 2025.8.0); the flaw is in path handling logic, not in a network protocol, and the exact trigger beyond supplying a malicious subdir value is described only by the patch diff.
Know when Home Assistant gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Reached only via the authenticated download_file service (PR:L, AV:N over the API); traversal lets content be written outside the download dir, so I:L and C/A:N.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
DescriptionCVE.org
Home Assistant Core before v2025.8.0 is vulnerable to Directory Traversal. The Downloader integration does not fully validate file paths during concatenation, leaving a path traversal vulnerability.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
Affected Products (CPE)CVE.org
More in Home Assistant
View allhomeassistant is an open source home automation tool. Rated critical severity (CVSS 10.0), this vulnerability is remotel
Stored/DOM cross-site scripting in the Home Assistant frontend Statistics Graph card lets an authenticated user or a mal
Home Assistant Community Store (HACS) 1.10.0 contains a path traversal vulnerability that allows unauthenticated attacke
Home assistant is an open source home automation. Rated critical severity (CVSS 9.6), this vulnerability is remotely exp
Home assistant is an open source home automation. Rated critical severity (CVSS 9.6), this vulnerability is remotely exp
Path-traversal to remote code execution in Home Assistant Core before 2026.6.0 lets an authenticated user who can supply
Home Assistant before 2021.1.3 does not have a protection layer that can help to prevent directory-traversal attacks aga
Arbitrary file write in Home Assistant Core before 2026.6.0 lets unauthenticated attackers plant attacker-controlled fil
Home assistant is an open source home automation. Rated critical severity (CVSS 9.0), this vulnerability is remotely exp
The Home Assistant Companion for iOS and macOS app up to version 2023.4 are vulnerable to Client-Side Request Forgery. R
Stored cross-site scripting in the Home Assistant Energy dashboard (versions 2025.1.0 through 2025.10.1) lets an authent
Cross-origin JavaScript injection in Home Assistant Companion apps for Android (before 2026.4.4) and iOS (before 2026.4.
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB