yt-dlp 2023.09.24.003044/2023.7.06/2023.11.14 Working Directory unrestricted upload
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.4 | $0-$5k | 0.00 |
Summary
A vulnerability marked as critical has been reported in yt-dlp. This affects an unknown part of the component Working Directory Handler. The manipulation leads to unrestricted upload. This vulnerability is traded as CVE-2024-38519. It is possible to initiate the attack remotely. There is no exploit available. It is suggested to upgrade the affected component.
Details
A vulnerability was found in yt-dlp and classified as critical. This issue affects an unknown code of the component Working Directory Handler. The manipulation with an unknown input leads to a unrestricted upload vulnerability. Using CWE to declare the problem leads to CWE-434. The product allows the attacker to upload or transfer files of dangerous types that can be automatically processed within the product's environment. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
`yt-dlp` is a command-line audio/video downloader. Prior to version 2024.07.01, `yt-dlp` does not limit the extensions of downloaded files, which could lead to aribitrary filenames being created in the download folder (and path traversal on Windows). Since `yt-dlp` also reads config from the working directory (and on Windows executables will be executed from the yt-dlp directory) this could lead to arbitrary code being executed. `yt-dlp` version 2024.07.01 fixes this issue by whitelisting the allowed extensions. This might mean some very uncommon extensions might not get downloaded, however it will also limit the possible exploitation surface. In addition to upgrading, have `.%(ext)s` at the end of the output template and make sure the user trusts the websites that they are downloading from. Also, make sure to never download to a directory within PATH or other sensitive locations like one's user directory, `system32`, or other binaries locations. For users who are not able to upgrade, keep the default output template (`-o "%(title)s [%(id)s].%(ext)s`); make sure the extension of the media to download is a common video/audio/sub/... one; try to avoid the generic extractor; and/or use `--ignore-config --config-location ...` to not load config from common locations.
It is possible to read the advisory at github.com. The identification of this vulnerability is CVE-2024-38519 since 06/18/2024. The exploitation is known to be easy. The attack may be initiated remotely. No form of authentication is needed for a successful exploitation. The technical details are unknown and an exploit is not publicly available. The attack technique deployed by this issue is T1608.002 according to MITRE ATT&CK.
The vulnerability scanner Nessus provides a plugin with the ID 239934 (TencentOS Server 4: youtube-dl (TSSA-2025:0179)), which helps to determine the existence of the flaw in a target environment.
Upgrading to version 2024.07.01 eliminates this vulnerability. The upgrade is hosted for download at github.com. Applying the patch 5ce582448ececb8d9c30c8c31f58330090ced03a is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
The vulnerability is also documented in the vulnerability database at Tenable (239934). Be aware that VulDB is the high quality source for vulnerability data.
Product
Type
Name
Version
License
Website
- Product: https://github.com/yt-dlp/yt-dlp/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.5VulDB Meta Temp Score: 7.4
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
CNA Base Score: 7.8
CNA Vector (GitHub, Inc.): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Unrestricted uploadCWE: CWE-434 / CWE-284 / CWE-266
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 239934
Nessus Name: TencentOS Server 4: youtube-dl (TSSA-2025:0179)
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: yt-dlp 2024.07.01
Patch: 5ce582448ececb8d9c30c8c31f58330090ced03a
Timeline
06/18/2024 🔍07/02/2024 🔍
07/02/2024 🔍
06/18/2025 🔍
Sources
Product: github.comAdvisory: GHSA-79w7-vh3h-8g4j
Status: Confirmed
CVE: CVE-2024-38519 (🔍)
GCVE (CVE): GCVE-0-2024-38519
GCVE (VulDB): GCVE-100-270239
Entry
Created: 07/02/2024 17:36Updated: 06/18/2025 03:42
Changes: 07/02/2024 17:36 (67), 06/18/2025 03:42 (3)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.