Description
xidown (a yt-dlp/ffmpeg GUI wrapper) builds its yt-dlp command-line invocation (xidown/core/scanner.py and downloader.py) by appending the user-provided or scanned URL as a bare trailing positional argument, with no '--' end-of-options marker and no scheme validation anywhere in the codebase. Because yt-dlp parses any argument beginning with '-' as a CLI option rather than link text, a crafted 'URL' value such as -U (yt-dlp's self-update flag) or --exec=... is parsed as a real yt-dlp option instead of a URL, altering the tool's control flow before its own URL validation runs. Full code execution via --exec was not demonstrated in the single-URL flow tested, but the underlying argument-injection primitive is confirmed and unmitigated across all call sites.
Published: 2026-08-05
Score: 4.4 Medium
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

xidown, a GUI wrapper for yt‑dlp/ffmpeg, creates the yt‑dlp command line by appending the user‑supplied URL directly as a positional argument. Because no end‑of‑options marker or scheme validation is performed, a crafted ‘URL’ that begins with a dash is interpreted by yt‑dlp as a real command‑line option. This flaw can alter yt‑dlp’s execution flow and provides an attacker the ability to inject options such as --exec, potentially allowing arbitrary code execution. The CVE report confirms the injection primitive exists but does not demonstrate successful code execution in the single‑URL scenario; the risk therefore remains theoretical but non‑negligible. The vulnerability is a classic argument injection (CWE‑88). It could be exploited in any environment where xidown is run with user‑supplied URLs—particularly if the wrapper is exposed to untrusted input such as a web interface or shared network pipeline. The attacker would need to supply a malicious URL starting with a hyphen; the tool would then misinterpret the argument and execute yt‑dlp’s internal logic for that option. Given the CVSS score of 4.4, the impact is considered moderate. EPSS is not available, and the flaw is not listed in CISA’s KEV catalog. Without a proven exploit, the likelihood of real‑world attacks is uncertain, but the presence of an argument injection vector warrants immediate attention and cautious mitigation.

Affected Systems

The affected product is xidown, distributed by indravoyager. No specific version information is provided in the CVE entry, so all releases of xidown remain potentially vulnerable until a patch is released.

Risk and Exploitability

The CVSS score of 4.4 indicates moderate severity. Because EPSS is not reported and the CVE is not in the KEV list, the current exploit probability is low but not zero. The attack vector is inferred to be local or remote if xidown is exposed to untrusted input. Even though full code execution via --exec was not demonstrated, the existing argument‑injection primitive could be abused in future releases or in combination with other vulnerabilities.

Generated by OpenCVE AI on August 5, 2026 at 08:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade xidown to the latest version once a vendor patch is available.
  • Validate all URLs before passing them to yt‑dlp by ensuring a proper scheme and rejecting any argument that starts with a dash.
  • Wrap yt‑dlp execution in a sandbox or restrict the process privileges so that even if --exec is injected, the impact is contained.

Generated by OpenCVE AI on August 5, 2026 at 08:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 05 Aug 2026 07:30:00 +0000

Type Values Removed Values Added
Description xidown (a yt-dlp/ffmpeg GUI wrapper) builds its yt-dlp command-line invocation (xidown/core/scanner.py and downloader.py) by appending the user-provided or scanned URL as a bare trailing positional argument, with no '--' end-of-options marker and no scheme validation anywhere in the codebase. Because yt-dlp parses any argument beginning with '-' as a CLI option rather than link text, a crafted 'URL' value such as -U (yt-dlp's self-update flag) or --exec=... is parsed as a real yt-dlp option instead of a URL, altering the tool's control flow before its own URL validation runs. Full code execution via --exec was not demonstrated in the single-URL flow tested, but the underlying argument-injection primitive is confirmed and unmitigated across all call sites.
Title xidown: Argument Injection via Unterminated yt-dlp Command Line Construction
Weaknesses CWE-88
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-05T06:59:26.576Z

Reserved: 2026-08-05T06:56:15.799Z

Link: CVE-2026-71212

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T08:45:16Z

Weaknesses
  • CWE-88

    Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')