CVE-2026-50574

yt-dlp: Arbitrary code execution via manifest downloads with aria2c

Published Jun 23, 2026 CVSS 3.1 · 8.3 High EPSS < 1% KEV · Not listed
Description
yt-dlp is a command-line audio/video downloader. Prior to 2026.06.09, if aria2c is used as an external downloader for a fragmented manifest format (such as an HLS/DASH stream), yt-dlp passes insufficiently sanitized input to aria2c that allows an attacker to perform an arbitrary file write. On Windows platforms, this can lead to immediate arbitrary code execution. On non-Windows platforms, this can lead to arbitrary code execution upon the next invocation of yt-dlp. This vulnerability is fixed in 2026.06.09.

Analysis

AI-generated

Technical impact

yt‑dlp is a command‑line audio/video downloader. Prior to 2026.06.09, if aria2c is used as an external downloader for a fragmented manifest format, such as an HLS/DASH stream, yt‑dlp passes insufficiently sanitized input to aria2c that allows an attacker to perform an arbitrary file write. On Windows platforms, this can lead to immediate arbitrary code execution. On non‑Windows platforms, this can lead to arbitrary code execution upon the next invocation of yt‑dlp. This vulnerability is fixed in 2026.06.09.

Affected Systems

The vulnerability impacts all users of yt‑dlp versions earlier than 2026.06.09 on both Windows and non‑Windows platforms. Windows users can experience immediate code execution, whereas non‑Windows users can achieve code execution on the next execution of yt‑dlp.

Risk and Exploitability

The CVSS score of 8.3 reflects a high severity. Although no EPSS score is available, the system‑wide impact and absence of a mitigated alternative mean exploitation is not theoretically improbable. The vulnerability is not listed in KEV. The likely attack vector involves an attacker providing a malicious fragmented manifest (or URL containing a crafted path) to yt‑dlp when aria2c is used as the external downloader. Once the file write is performed, a hostile executable can be placed in a location that yt‑dlp or the underlying operating system will subsequently load or launch, achieving code execution with the privileges of the yt‑dlp process.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade yt‑dlp to version 2026.06.09 or later, which removes the vulnerable behaviour.
  • If an upgrade is not immediately possible, avoid using aria2c for fragmented manifest downloads by switching to yt‑dlp’s default downloader or another safe alternative.
  • Restrict and verify any manifest URLs to trusted sources before passing them to yt‑dlp to prevent malicious input from reaching the downloader.

Generated by OpenCVE AI on June 24, 2026 at 11:09 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-vx4q-3cr2-7cg2 yt-dlp: Arbitrary code execution via manifest downloads with aria2c
History
Type Values Removed Values Added
First Time appeared Yt-dlp
Yt-dlp yt-dlp
Vendors & Products Yt-dlp
Yt-dlp yt-dlp
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description yt-dlp is a command-line audio/video downloader. Prior to 2026.06.09, if aria2c is used as an external downloader for a fragmented manifest format (such as an HLS/DASH stream), yt-dlp passes insufficiently sanitized input to aria2c that allows an attacker to perform an arbitrary file write. On Windows platforms, this can lead to immediate arbitrary code execution. On non-Windows platforms, this can lead to arbitrary code execution upon the next invocation of yt-dlp. This vulnerability is fixed in 2026.06.09.
Title yt-dlp: Arbitrary code execution via manifest downloads with aria2c
Weaknesses CWE-74
References
Metrics cvssV3_1

{'score': 8.3, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H'}

Weaknesses
  • CWE-74

    Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jun 25, 2026, 3:55 AM
Reserved
Jun 4, 2026, 9:34 PM
Status
Analyzed
Published
Jun 23, 2026, 5:17 PM
Modified
Jun 26, 2026, 8:11 PM