Description
jellyfin-web is the web client for Jellyfin, a free-software media system. Starting in version 10.1.0 and prior to version 10.8.10, a stored cross-site scripting vulnerability in device.js can be used to make arbitrary calls to the `REST` endpoints with admin privileges. When combined with CVE-2023-30626, this results in remote code execution on the Jellyfin instance in the context of the user who's running it. This issue is patched in version 10.8.10. There are no known workarounds.
EPSS Score:
1%
Comprehensive Technical Analysis of EUVD-2023-34993
1. Vulnerability Assessment and Severity Evaluation
The vulnerability described in EUVD-2023-34993 pertains to a stored cross-site scripting (XSS) issue in the device.js file of jellyfin-web, the web client for Jellyfin, a free-software media system. This vulnerability allows an attacker to make arbitrary calls to the REST endpoints with administrative privileges. When combined with CVE-2023-30626, this can lead to remote code execution (RCE) on the Jellyfin instance, executing in the context of the user running the service.
Severity Evaluation:
- CVSS Base Score: 9.1 (Critical)
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): Low (L)
- User Interaction (UI): Required (R)
- Scope (S): Changed (C)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
The high CVSS score indicates a critical vulnerability that can have severe impacts on confidentiality, integrity, and availability.
2. Potential Attack Vectors and Exploitation Methods
Attack Vectors:
- Stored XSS: An attacker can inject malicious scripts into the
device.jsfile, which are then stored and executed when the page is loaded by other users. - REST Endpoint Exploitation: The injected scripts can make arbitrary calls to the
RESTendpoints with administrative privileges, allowing unauthorized actions. - Remote Code Execution (RCE): When combined with CVE-2023-30626, the attacker can execute arbitrary code on the Jellyfin instance, potentially leading to full system compromise.
Exploitation Methods:
- Script Injection: The attacker injects a malicious script into a vulnerable input field that is stored and later executed.
- Privilege Escalation: The injected script exploits the administrative privileges to perform unauthorized actions.
- Code Execution: By leveraging CVE-2023-30626, the attacker can execute arbitrary code, potentially leading to data exfiltration, system manipulation, or further malware deployment.
3. Affected Systems and Software Versions
Affected Software:
- jellyfin-web: Versions 10.1.0 through 10.8.9
Affected Systems:
- Any system running the vulnerable versions of
jellyfin-web. - Systems where the Jellyfin instance is accessible over the network, especially those with public-facing interfaces.
4. Recommended Mitigation Strategies
Immediate Mitigation:
- Upgrade: Upgrade to
jellyfin-webversion 10.8.10 or later, which includes the patch for this vulnerability. - Input Validation: Implement strict input validation and sanitization to prevent script injection.
- Access Controls: Restrict administrative privileges and ensure proper access controls are in place.
- Network Segmentation: Segment the network to limit the exposure of the Jellyfin instance to trusted networks only.
Long-Term Mitigation:
- Regular Patching: Establish a regular patching and update schedule for all software components.
- Security Audits: Conduct regular security audits and vulnerability assessments.
- User Training: Educate users on the risks of XSS and the importance of reporting suspicious activities.
5. Impact on European Cybersecurity Landscape
The vulnerability poses a significant risk to organizations and individuals using Jellyfin within the European Union. Given the critical nature of the vulnerability, it can lead to data breaches, unauthorized access, and potential compliance issues with regulations such as GDPR. The widespread use of Jellyfin for media management makes it a potential target for attackers looking to exploit vulnerabilities in widely deployed software.
6. Technical Details for Security Professionals
Vulnerability Details:
- Location:
device.jsfile injellyfin-web - Type: Stored XSS leading to RCE
- Exploit Conditions: Requires user interaction to trigger the stored script, which then exploits administrative privileges.
Patch Information:
- Fixed Version: 10.8.10
- Patch Commit: b88a5951e1a517ff4c820e693d9c0da981cf68ee
References:
- GitHub Security Advisory for jellyfin-web
- GitHub Security Advisory for Jellyfin
- Release Notes for jellyfin-web v10.8.10
Conclusion: The vulnerability EUVD-2023-34993 is critical and requires immediate attention. Organizations should prioritize upgrading to the patched version and implement additional security measures to mitigate the risk of exploitation. Regular monitoring and auditing are essential to ensure the ongoing security of systems running Jellyfin.