Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft MKV with rooted filename tag
-
DeliveryPlace file in Jellyfin media library
-
ExploitVictim plays video with subtitle burn-in
-
ExecutionJellyfin calls Path.Combine with unsanitized tag
-
PersistAttachment extracted to arbitrary filesystem path
-
ImpactAttacker-controlled file written on server
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 | The MKV file must be present in a Jellyfin media library and must be played back by a Jellyfin client. Subtitle burn-in must be active during playback - this is enabled by default for clients that support it, meaning no special client configuration change is required by the victim. The attacker must control or be able to influence the content of files in the Jellyfin media library (e.g., via a shared network path, a writable NAS mount, or a social-engineering vector such as convincing a user to add an external file). Exploitation is limited by the OS-level write permissions of the Jellyfin server process: on systems where Jellyfin runs as a low-privilege service account, writable paths are restricted to media directories and application data folders. Administrative or root-level Jellyfin deployments face broader exposure. No authentication on the Jellyfin server is required from the attacker's perspective, but delivering the file to the library is the primary prerequisite. |
| Impact | The vendor-assigned CVSS 4.0 score of 1.7 (vector CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:U) reflects the constrained real-world impact: only low integrity is affected (file write to arbitrary path), no confidentiality or availability is impacted, and exploitation status is Unreported. High attack complexity (AC:H) accounts for the requirement to craft a precisely forged MKV and ensure the file reaches a target's library. The impact ceiling is bounded by the OS permissions of the Jellyfin process - on hardened deployments running Jellyfin as a restricted service account, arbitrary file writes may be further constrained. No EPSS data was provided in the input; given the self-hosted niche footprint and low CVSS score, broad automated exploitation is not anticipated. There is no CISA KEV listing and no public proof-of-concept identified. One tension worth noting: the CVSS 4.0 vector assigns UI:N, yet the description requires a user to play back the malicious file - this may understate user-interaction dependency. Defenders should treat this as a meaningful write-primitive risk in the context of Jellyfin's process account privileges, not a critical systemic threat. |
| Exploit ScenarioDerived | An attacker crafts an MKV video file embedding an attachment whose filename tag is set to an absolute or path-traversal path such as '/etc/cron.d/backdoor'. The file is placed into a Jellyfin media library - either through a shared network folder, a compromised upload mechanism, or social engineering. When any Jellyfin client plays the video and the default subtitle burn-in is triggered, the server extracts the attachment to the attacker-controlled path, potentially writing arbitrary content to sensitive filesystem locations within the reach of Jellyfin's process account. No public proof-of-concept has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 24, 2026
Path traversal in Jellyfin prior to 10.11.10 enables an attacker who can place a crafted MKV file in a victim's Jellyfin library to redirect the server's MKV attachment extraction routine to arbitrary absolute filesystem paths on the host. The flaw originates in .NET's Path.Combine behavior: Jellyfin passes the unsanitized MKV filename tag directly into Path.Combine(attachmentFolder, fileName), and .NET silently ignores the base path when the second argument is rooted, enabling full path override. Exploitation is triggered automatically whenever any Jellyfin client plays the affected file with subtitle burning enabled, which is the default behavior. No public exploit has been identified at time of analysis, and the CVSS 4.0 score of 1.7 reflects high complexity and low integrity-only impact.
RemediationAI
Upgrade Jellyfin to version 10.11.10, which introduces path sanitization in PathManager.GetAttachmentPath to reject rooted second arguments and normalize '..' sequences before calling Path.Combine. The vendor advisory is available at https://github.com/jellyfin/jellyfin/security/advisories/GHSA-f47c-m7gr-q92j. For deployments that cannot immediately upgrade, a compensating control is to disable subtitle burn-in in Jellyfin client settings, which prevents MKV attachment extraction from being triggered during playback - note this will degrade subtitle rendering for affected content. Additionally, running the Jellyfin process under a restricted service account with minimal filesystem write permissions limits the blast radius of a successful path traversal to directories that account can access. Neither workaround removes the underlying flaw; patching to 10.11.10 is the only complete fix.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Jellyfin (CPE: cpe:2.3:a:jellyfin:jellyfin:*:*:*:*:*:*:*:*) is an open-source, self-hosted media server written in .NET. MKV (Matroska) containers support embedded attachments - such as subtitle fonts or images - each of which carries a filename tag. Jellyfin's PathManager.GetAttachmentPath method constructs the extraction destination by calling Path.Combine(attachmentFolder, fileName) using the MKV-embedded filename tag verbatim. CWE-22 (Improper Limitation of a Pathname to a Restricted Directory) applies directly: .NET's Path.Combine does not normalize '..' sequences and, critically, treats a rooted second argument (e.g., '/etc/cron.d/evil') as overriding the entire base path, discarding attachmentFolder entirely. A threat actor who forges the filename tag in an MKV attachment can therefore direct the extraction to any path the Jellyfin process has write access to on the server filesystem. The attack surface is activated when subtitle burn-in is attempted during playback, a behavior enabled by default in Jellyfin clients.
Know when Jellyfin 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
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:U
AC:H for craft-and-deliver MKV requirement; UI:R because victim must actively play the file; I:L for bounded arbitrary file write; no confidentiality or availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
1DescriptionCVE.org
Jellyfin is an open source self hosted media server. Prior to 10.11.10, a specifically crafted MKV file containing forged filename tags can be leveraged to exploit missing path sanitization during playback. Jellyfin treats the MKV file name tag on MKV attachments as trusted and passes it unsanitized into Path.Combine(attachmentFolder, fileName) inside PathManager.GetAttachmentPath. Because .NET's Path.Combine neither normalises .. nor rejects a rooted second argument, a crafted MKV can redirect Jellyfin's MKV attachment extraction to any absolute path on disk. This triggers on any playback action of the affected video on a client which will attempt to burn in the subtitles by default.g This vulnerability is fixed in 10.11.10.
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.
Jellyfin is a Free Software Media System for managing and streaming media. Rated high severity (CVSS 8.8), this vulnerab
In Jellyfin before 10.8, the /users endpoint has incorrect access control for admin functionality. Rated high severity (
Jellyfin is a free-software media system. Rated high severity (CVSS 8.1), this vulnerability is remotely exploitable, lo
Jellyfin up to v10.7.7 was discovered to contain a Server-Side Request Forgery (SSRF) via the component /Repositories. R
Jellyfin is a system for managing and streaming media. Rated high severity (CVSS 7.2), this vulnerability is remotely ex
Jellyfin is a Free Software Media System. Rated medium severity (CVSS 6.5), this vulnerability is remotely exploitable,
Arbitrary code execution in Jellyfin iOS GitHub Actions workflow. CVSS 10.0.
Jellyfin is a free software media system that provides media from a dedicated server to end-user devices via multiple ap
jellyfin-web is the web client for Jellyfin, a free-software media system. Rated medium severity (CVSS 5.4), this vulner
In Jellyfin 10.8.x through 10.8.3, the name of a playlist is vulnerable to stored XSS. Rated medium severity (CVSS 5.4),
In Jellyfin 10.8.x through 10.8.3, the name of a collection is vulnerable to stored XSS. Rated medium severity (CVSS 5.4
In Jellyfin before 10.8, stored XSS allows theft of an admin access token. Rated medium severity (CVSS 5.4), this vulner
EUVD-2026-39029
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB