CVE-2026-33935
CVE-2026-33935 is a high-severity vulnerability in Franklioxygen Mytube with a CVSS 3.x base score of 7.5. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-307.
Key facts
- Severity: High (CVSS 3.x base score 7.5)
- CVSS v4: 7.7
- EPSS exploit prediction: 1% (42nd percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-16521
- Weakness: CWE-307
- Affected product: Franklioxygen Mytube
- Published:
- Last modified:
Description
MyTube is a self-hosted downloader and player for several video websites Prior to version 1.8.72, an unauthenticated attacker can lock out administrator and visitor accounts from password-based authentication by triggering failed login attempts. The application exposes three password verification endpoints, all of which are publicly accessible. All three endpoints share a single file-backed login attempt state stored in `login-attempts.json`. When any endpoint records a failed authentication attempt via `recordFailedAttempt()`, the shared login attempt state is updated, increasing the `failedAttempts` counter and adjusting the associated timestamps and cooldown values. Before verifying a password, each endpoint calls `canAttemptLogin()`. This function checks the shared JSON file to determine whether a cooldown period is active. If the cooldown has not expired, the request is rejected before the password is validated. Because the failed attempt counter and cooldown timer are globally shared, failed authentication attempts against any endpoint affect all other endpoints. An attacker can exploit this by repeatedly sending invalid authentication requests to any of these endpoints, incrementing the shared counter and waiting for the cooldown period between attempts. By doing so, the attacker can progressively increase the lockout duration until it reaches 24 hours, effectively preventing legitimate users from authenticating. Once the maximum lockout is reached, the attacker can maintain the denial of service indefinitely by waiting for the cooldown to expire and sending another failed attempt, which immediately triggers another 24-hour lockout if no successful login occurred in the meantime. Version 1.8.72 fixes the vulnerability.
Frequently asked questions
- What is CVE-2026-33935?
- MyTube is a self-hosted downloader and player for several video websites Prior to version 1.8.72, an unauthenticated attacker can lock out administrator and visitor accounts from password-based authentication by triggering failed login attempts. The application exposes three password verification endpoints, all of which are publicly accessible. All three endpoints share a single file-backed login attempt state stored in `login-attempts.json`. When any endpoint records a failed authentication attempt via `recordFailedAttempt()`, the shared login attempt state is updated, increasing the `failedAttempts` counter and adjusting the associated timestamps and cooldown values. Before verifying a password, each endpoint calls `canAttemptLogin()`. This function checks the shared JSON file to determine whether a cooldown period is active. If the cooldown has not expired, the request is rejected before the password is validated. Because the failed attempt counter and cooldown timer are globally shared, failed authentication attempts against any endpoint affect all other endpoints. An attacker can exploit this by repeatedly sending invalid authentication requests to any of these endpoints, incrementing the shared counter and waiting for the cooldown period between attempts. By doing so, the attacker can progressively increase the lockout duration until it reaches 24 hours, effectively preventing legitimate users from authenticating. Once the maximum lockout is reached, the attacker can maintain the denial of service indefinitely by waiting for the cooldown to expire and sending another failed attempt, which immediately triggers another 24-hour lockout if no successful login occurred in the meantime. Version 1.8.72 fixes the vulnerability.
- How severe is CVE-2026-33935?
- CVE-2026-33935 has a CVSS 3.x base score of 7.5, rated high severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is none, integrity none, and availability high.
- Is CVE-2026-33935 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 1% (42nd percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-33935?
- CVE-2026-33935 affects Franklioxygen Mytube. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-33935?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its high severity, prioritise patching exposed systems.
- Does CVE-2026-33935 have an EU (EUVD) identifier?
- Yes. CVE-2026-33935 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-16521.
- When was CVE-2026-33935 published?
- CVE-2026-33935 was published on 2026-03-27 and last updated on 2026-06-17.
References
- https://github.com/franklioxygen/MyTube/blob/941035909ee3f96a6f80f38acf70cbc3e66b5098/backend/src/services/loginAttemptService.ts#L13
- https://github.com/franklioxygen/MyTube/commit/4d89b146b16d08f27d8fd3e0a9122b109335deb1
- https://github.com/franklioxygen/MyTube/commit/752bc7f0ac83df8c881e6b6d5dd6f36bb274ee58
- https://github.com/franklioxygen/MyTube/commit/dd7b4a611fcc5b25a569f379be9a503eb413b6aa
- https://github.com/franklioxygen/MyTube/security/advisories/GHSA-6w95-qgc4-5jxf
Affected products (1)
- cpe:2.3:a:franklioxygen:mytube:*:*:*:*:*:*:*:*
More vulnerabilities in Franklioxygen Mytube
- CVE-2026-33890 — Critical (CVSS 9.8): MyTube is a self-hosted downloader and player for several video websites Prior to version 1.8.71, an unauthenticated…
- CVE-2026-23837 — Critical (CVSS 9.8): MyTube is a self-hosted downloader and player for several video websites. A vulnerability present in version 1.7.65 and…
- CVE-2026-33735 — High (CVSS 8.8): MyTube is a self-hosted downloader and player for several video websites Prior to version 1.8.69, an authorization…
- CVE-2026-24139 — Medium (CVSS 6.5): MyTube is a self-hosted downloader and player for several video websites. Versions 1.7.78 and below do not safeguard…
- CVE-2026-23848 — Medium (CVSS 6.5): MyTube is a self-hosted downloader and player for several video websites. Prior to version 1.7.71, a rate limiting…
- CVE-2026-24140 — Low (CVSS 2.7): MyTube is a self-hosted downloader and player for several video websites. Versions 1.7.78 and below have a Mass…
All CVEs affecting Franklioxygen Mytube →
Other CWE-307 (Improper Restriction of Excessive Authentication Attempts) vulnerabilities
- CVE-2026-6853 — Critical (CVSS 9.8): Improper restriction of excessive authentication attempts vulnerability in Başbelen Group Food Cafe Businesses…
- CVE-2026-8760 — Critical (CVSS 9.8): The Login with OTP plugin for WordPress is vulnerable to authentication bypass in all versions up to, and including,…
- CVE-2020-37228 — Critical (CVSS 9.8): iDS6 DSSPro Digital Signage System 6.2 contains a CAPTCHA security bypass vulnerability that allows attackers to bypass…
- CVE-2026-33879 — Critical (CVSS 9.8): Federated Learning and Interoperability Platform (FLIP) is an open-source platform for federated training and…
- CVE-2026-33640 — Critical (CVSS 9.8): Outline is a service that allows for collaborative documentation. Outline implements an Email OTP login flow for users…
- CVE-2026-31851 — Critical (CVSS 9.8): Nexxt Solutions Nebula 300+ firmware through version 12.01.01.37 does not implement rate limiting or account lockout…
Browse all CWE-307 (Improper Restriction of Excessive Authentication Attempts) vulnerabilities →