Skip to main content

yt-dlp-web-ui EUVDEUVD-2026-98693

| CVE-2026-109967 HIGH
NULL Pointer Dereference (CWE-476)
2026-10-13 VulnCheck GHSA-vw64-j3q3-fxf9
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach exposed JSON-RPC endpoint
  2. Delivery
    Send Service.Formats request with url '--version'
  3. Exploit
    yt-dlp emits invalid JSON output
  4. Execution
    Parser hits NULL pointer dereference
  5. Impact
    Unrecovered panic terminates process (DoS)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A10:2025 - Mishandling of Exceptional Conditions
ASVS 5.0
V16 - Security Logging and Error Handling Null pointer safety, defensive checks
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

No special configuration is required beyond network reachability of the yt-dlp-web-ui JSON-RPC interface (default Service.Formats method). The attacker needs no authentication, no user interaction, and no prior access (PR:N/UI:N) - a single request with a crafted url value like '--version' is sufficient. The only practical limiting factor is network exposure: the service must be reachable by the attacker (e.g. bound to a routable interface or proxied to the internet rather than restricted to localhost/trusted LAN). Impact is confined to service availability (process crash); there is no data exposure or code execution.

Impact

This is a genuine but narrowly-scoped availability risk. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes a trivially-triggerable, remote, unauthenticated, no-interaction attack, and the 8.7 (High) score is driven entirely by VA:H - availability impact only, with VC:N and VI:N confirming no confidentiality or integrity loss. The CWE-476 NULL pointer dereference causing an unrecovered Go panic matches this profile exactly: a single crafted request terminates the process. A public POC exists (reported by VulnCheck), which raises practical exploitability, but the CVE is NOT on the CISA KEV list, so there is no evidence of active in-the-wild exploitation. No EPSS score and no SSVC decision data were provided, so automatability and real-world exploitation probability cannot be independently quantified. Net: the vulnerability is easy to exploit and the impact (full service crash) is real, but it is a denial-of-service only against a niche self-hosted application, so it should be prioritized for patching on exposed instances rather than treated as a critical compromise risk. Note one input inconsistency: the primary advisory reference is titled 'rpc-arg-injection' while the description and CWE-476 characterize this strictly as a NULL pointer dereference DoS - verify there is no additional argument-injection/code-execution dimension with the vendor/VulnCheck advisory.

Exploit ScenarioDerived

A remote attacker who can reach the yt-dlp-web-ui JSON-RPC endpoint sends a single Service.Formats request with a url value such as '--version'. This produces invalid yt-dlp JSON output that the server fails to handle, triggering an unrecovered panic that terminates the process and takes the service offline. A public proof-of-concept exists, and because the attack needs no authentication, user interaction, or special conditions (AV:N/AC:L/PR:N/UI:N), it is trivially repeatable to keep the service down.

Monitor Track and reassess. Why: Vendor states no customer action required.
1 public PoC No patch listed yet 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

Unauthenticated remote attackers can crash yt-dlp-web-ui 4.0.0 and earlier by sending a single JSON-RPC request to the default Service.Formats method, where a crafted url value such as '--version' is passed to the underlying yt-dlp process and produces unexpected output that fails JSON parsing, leading to a NULL pointer dereference and an unrecovered panic that terminates the server process. No credentials, user interaction, or special configuration are required - the only precondition is network reachability of the JSON-RPC interface - and publicly available exploit code exists, so any instance bound to a routable interface or exposed through a reverse proxy is trivially and repeatedly deniable. The impact is confined to availability: there is no data exposure, integrity loss, or code execution.

RemediationAI

No vendor-released patch was identified in the available intelligence at time of analysis, so remediation currently depends on exposure reduction and hardening while an upstream fix is awaited; the reference set points only at v4.0.0 source and third-party advisories rather than a fixed release. The most effective immediate step is to stop exposing the JSON-RPC interface: bind yt-dlp-web-ui to 127.0.0.1 or a trusted management network, or place it behind a reverse proxy that enforces authentication and source-IP allow-listing, accepting that this breaks legitimate remote use of the UI. If the Service.Formats method is not needed, disable or remove it from the RPC dispatch table (side effect: format listing in the web UI stops working); if it is needed, add strict server-side validation that rejects any 'url' value beginning with '-' and pass the value to yt-dlp after a '--' argument terminator so flags cannot be injected. Upstream or fork-level code fixes should also wrap RPC handlers in a panic-recovery middleware and check for nil before dereferencing the parsed formats document, since a recovered panic would downgrade this from a process kill to a failed request. As a resilience measure, run the service under a supervisor (systemd Restart=always, Docker restart policy, or Kubernetes with a liveness probe) so recovery is automatic - but note that this only shortens downtime and does not prevent an attacker from looping the crash, so it is not a substitute for removing network exposure. Monitor for repeated Service.Formats requests containing dash-prefixed url values and alert on process restarts as an indicator of exploitation.

Affected VersionsENISA

yt-dlp-web-ui 0 ≤4.0.0

Affected Packages

euvd yt_dlp_web_ui no fix

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

yt-dlp-web-ui is a Go web front-end that wraps the yt-dlp media downloader; its server exposes a JSON-RPC surface, with the formats parser and RPC service implemented in server/formats/parser.go and server/rpc/service.go respectively. The root cause is CWE-476 (NULL Pointer Dereference) combined with argument injection into the yt-dlp subprocess: the user-supplied 'url' field of a Service.Formats request is passed through to the yt-dlp command line without sanitization or a '--' argument terminator, so a value like '--version' is interpreted as a CLI flag instead of a URL. yt-dlp then returns output that is not the expected JSON formats document, the parser dereferences a nil pointer while attempting to consume the failed/garbage parse, and the resulting Go panic is not recovered by the RPC handler, unwinding the goroutine and killing the whole server process. Because the endpoint is reachable without authentication (CVSS vector PR:N/UI:N, AV:N) and the failure occurs on the request path, a single request is enough to take the service down. CPE data places all releases through 4.0.0 in scope (cpe:2.3:a:marcopiovanello:yt-dlp-web-ui:*:*:*:*:*:*:*:*), and source-level references point at the v4.0.0 RPC service and formats parser files where the flaw originates.

Know when Yt Dlp Web Ui 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

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Remote, unauthenticated, low-complexity single request (AV:N/AC:L/PR:N/UI:N); impact limited to a process-terminating crash, so A:H with C:N/I:N and unchanged scope.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

yt-dlp-web-ui through 4.0.0 contains a NULL pointer dereference vulnerability in the Service.Formats JSON-RPC method that allows remote unauthenticated attackers to crash the server. Attackers can send a single request with a url value like --version, causing invalid yt-dlp JSON output and an unrecovered panic that terminates the process.

Technical POC Analysis

CWE-476 (NULL Pointer Dereference), secondary CWE-248 (Uncaught Exception), in the Go RPC server of marcopiovanello/yt-dlp-web-ui.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 public PoC link from github

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

yt-dlp-web-ui 4.0.0 and earlier can be remotely crashed, disrupting availability for users who rely on its web interface for media download management. Publicly available exploit code exists, and no vendor-released patch identified at time of analysis, so leadership should treat any network-reachable instance as an operational resilience risk and prioritize containment and recovery measures.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations include restricting network reachability to the JSON-RPC interface (bind to localhost, firewall allowlists, or security groups), blocking or limiting access to the Service.Formats method where operationally feasible, placing instances behind an access-controlled reverse proxy, segmenting the service from untrusted networks, running it under a process supervisor or container restart policy to limit denial-of-service duration, and monitoring for unexpected process termination.

Threat Intelligence Overview

EPSS Score
0.6%
Top 55% exploitable
Prevalence
Low
self-hosted open-source yt-dlp web frontend, niche/hobbyist deployment, no enterprise footprint
Data Quality
7 sources
Confidence: High

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.6%
Patch available No
Active threat No
Deciding rule
Vendor states no customer action required
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Out-of-Cycle
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

65
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A null pointer dereference occurs when a program attempts to access memory through a pointer that has been set to NULL (address 0x0).

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy