Skip to main content

MyTube EUVDEUVD-2026-116195

| CVE-2026-63433 MEDIUM
Cross-Site Request Forgery (CSRF) (CWE-352)
2026-11-03 security-advisories@github.com
6.8
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

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

  1. Access
    Lure authenticated admin to malicious page
  2. Delivery
    Browser sends cross-origin request with session cookie
  3. Exploit
    Include arbitrary x-api-key header
  4. Execution
    CSRF validation skipped on header presence
  5. Impact
    Server executes destructive admin API call

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Exploitation requires a specific, named misconfiguration: CORS_ALLOWED_ORIGINS must be set permissively (broadly or to '*') so the attacker's origin is allowed - this is not the default and is the primary limiting factor. Additionally, a victim who is an authenticated MyTube administrator with an active session cookie must be lured into visiting attacker-controlled content (the UI:R user-interaction requirement). No valid API key or prior authentication is needed by the attacker: the flaw in shouldSkipCsrfProtection()/isApiKeyRequest() grants the CSRF exemption on mere presence of an 'x-api-key' header or 'Authorization: ApiKey' value, so any arbitrary value (e.g. 'bogus') suffices to skip CSRF token validation while the victim's cookie authenticates the request. Properly restricted CORS origins eliminate the browser-delivered attack path.

Impact

This is a moderate, conditional risk rather than a drop-everything priority. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N, base 6.8) tells a consistent story with the description: network-reachable and unauthenticated from the attacker's side (PR:N), but gated by two real-world frictions - AC:H reflecting the non-default permissive CORS_ALLOWED_ORIGINS requirement, and UI:R reflecting the need to lure a logged-in administrator to attacker-controlled content. The vuln.today decision label is 'this_month', not act_now or emergency, which aligns with the conditional nature. There is no EPSS score, no CISA KEV listing, and no vendor/CISA claim of active exploitation in the supplied data, so there is no evidence of in-the-wild use; the GHSA advisory does include a concrete browser-based PoC, so working-grade exploitation is clearly plausible but the input does not mark the PoC as a confirmed working exploit. The main caveat to flag: exploitability hinges entirely on a permissive CORS configuration (broad or '*'), a setting that is attacker-independent and common in self-hosted deployments but NOT the shipped default, so raw CVSS severity overstates risk for well-configured instances and understates it for careless ones. No SSVC automatable/technical-impact decision fields were supplied to cross-check.

Exploit ScenarioDerived

An administrator is logged into a self-hosted MyTube instance whose CORS_ALLOWED_ORIGINS has been set broadly (e.g. '*' or to include an attacker origin). The attacker lures that admin to a malicious page that issues a cross-origin DELETE/POST to the MyTube API carrying a bogus 'x-api-key' header and the victim's session cookie; because CSRF is skipped merely on header presence, the server executes the state-changing call. A detailed proof-of-concept HTML page is published in the GHSA advisory, though the input does not confirm it as verified working exploit code.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available

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

Alert me

AnalysisAIv1 – Nov 03, 2026

CSRF protection bypass in MyTube, a self-hosted video downloader and player, lets an unauthenticated attacker perform state-changing administrator API actions - deleting media, triggering downloads, altering subscriptions - on behalf of a logged-in admin. The root cause is that shouldSkipCsrfProtection() in backend/src/middleware/csrfConfig.ts delegates to isApiKeyRequest(), which grants the CSRF exemption on the mere presence of an 'x-api-key' header or 'Authorization: ApiKey' value rather than on a validated key, so any bogus value skips the double-submit token check while the victim's session cookie authenticates the request. Exploitation is conditional: it requires CORS_ALLOWED_ORIGINS to be configured permissively (broadly or to '*') so the attacker's origin is reachable from the browser, plus an administrator lured to attacker-controlled content (UI:R, AC:H); no KEV entry or confirmed working exploit is recorded, and the public advisory does include a step-by-step PoC description. The issue is fixed in version 1.10.6.

RemediationAI

Upgrade MyTube to 1.10.6, which replaces the presence-only isApiKeyRequest() guard in shouldSkipCsrfProtection() with the validating isApiKeyAuthorized() helper moved to backend/src/utils/apiKeyAuth.ts (commit b2000d8b239fd2e44b0e6160137c8b636a09cc89; advisory https://github.com/franklioxygen/MyTube/security/advisories/GHSA-9qxv-p8j9-gv5r). Because exploitation depends on the attacker's origin being allowed by the browser, the most direct compensating control before patching is to set CORS_ALLOWED_ORIGINS to an explicit list of trusted origins and never to '*'; the trade-off is that any third-party front end or integration relying on a wildcard or broad origin list must be given an explicit entry or it will break. Note that the vulnerability is only exploitable in the API-key exemption path, so an instance with API key authentication left disabled (apiKeyEnabled not true, as the fixed code requires for the exemption) does not grant the CSRF skip; disabling the API key feature where it is unused narrows exposure, at the cost of breaking API-key-based automation against that instance.

Affected VersionsENISA

MyTube < 1.10.6

Affected Packages

euvd mytube fix: 1.10.6

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

MyTube is an Express/TypeScript backend (npm package 'mytube') protecting state-changing API routes with double-submit-cookie CSRF middleware plus a session-based auth middleware. CWE-352 (Cross-Site Request Forgery) arises here from a logical gap between two control layers: the CSRF layer runs first and decides whether to skip token validation, and it did so using isApiKeyRequest(), a presence-only check (Boolean of req.headers['x-api-key'] || authorization?.startsWith('ApiKey ')). The actual key comparison - constant-time comparison of the supplied key against the configured apiKey, gated on apiKeyEnabled and a non-empty stored key - lived in authMiddleware and ran only afterwards, so the CSRF gate was already open. The fix (commit b2000d8b239fd2e44b0e6160137c8b636a09cc89) extracts the validation helpers into backend/src/utils/apiKeyAuth.ts and has csrfConfig.ts call isApiKeyAuthorized() instead of isApiKeyRequest(), so the exemption is granted only for a positively validated key, with RSS-management requests still excluded from the bypass. A regression test was added asserting that a request with X-API-Key: wrong-key against a protected route returns 403.

Know when the next one hits your stack

  • 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 (github) PRIMARY 6.8 MEDIUM
AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N
vuln.today AI 5.9 MEDIUM

AC:H for the required non-default permissive CORS and UI:R for luring an admin; PR:N as the attacker needs no key; I:H for destructive admin operations, C:L as responses may be read only under permissive CORS.

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

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

1
Patch available
Nov 03, 2026 - 21:03 EUVD

DescriptionCVE.org

MyTube is a self-hosted downloader and player for several video websites. Prior to 1.10.6, shouldSkipCsrfProtection() in backend/src/middleware/csrfConfig.ts delegates to isApiKeyRequest(), which grants a CSRF exemption based only on the presence of an x-api-key header or an Authorization: ApiKey value rather than successful API-key validation. With a permissive CORS_ALLOWED_ORIGINS configuration, an unauthenticated attacker can lure an authenticated administrator to attacker-controlled content that sends a cross-origin state-changing request with an arbitrary API-key value. The victim's session cookie authenticates the request while CSRF token validation is skipped, allowing destructive or other administrator API operations such as deleting media, triggering downloads, or changing subscriptions. This issue is fixed in version 1.10.6.

Threat Intelligence Overview

Prevalence
Rare
niche self-hosted single-author video tool, tiny deployment footprint
Data Quality
3 sources
Confidence: Low

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 MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

34
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.

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