Vulnerabilidad en MyTube de franklioxygen (CVE-2026-33935)
Gravedad CVSS v4.0:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
27/03/2026
Última modificación:
01/04/2026
Descripción
MyTube es un descargador y reproductor autoalojado para varios sitios web de videos. Antes de la versión 1.8.72, un atacante no autenticado puede bloquear las cuentas de administrador y visitante de la autenticación basada en contraseña al desencadenar intentos de inicio de sesión fallidos. La aplicación expone tres puntos finales de verificación de contraseña, todos los cuales son de acceso público. Los tres puntos finales comparten un único estado de intento de inicio de sesión respaldado por archivo almacenado en 'login-attempts.json'. Cuando cualquier punto final registra un intento de autenticación fallido a través de 'recordFailedAttempt()', el estado compartido de intento de inicio de sesión se actualiza, aumentando el contador 'failedAttempts' y ajustando las marcas de tiempo y los valores de enfriamiento asociados. Antes de verificar una contraseña, cada punto final llama a 'canAttemptLogin()'. Esta función verifica el archivo JSON compartido para determinar si un período de enfriamiento está activo. Si el enfriamiento no ha expirado, la solicitud es rechazada antes de que la contraseña sea validada. Debido a que el contador de intentos fallidos y el temporizador de enfriamiento se comparten globalmente, los intentos de autenticación fallidos contra cualquier punto final afectan a todos los demás puntos finales. Un atacante puede explotar esto enviando repetidamente solicitudes de autenticación inválidas a cualquiera de estos puntos finales, incrementando el contador compartido y esperando el período de enfriamiento entre intentos. Al hacerlo, el atacante puede aumentar progresivamente la duración del bloqueo hasta que alcance las 24 horas, impidiendo efectivamente que los usuarios legítimos se autentiquen. Una vez que se alcanza el bloqueo máximo, el atacante puede mantener la denegación de servicio indefinidamente esperando que expire el enfriamiento y enviando otro intento fallido, lo que desencadena inmediatamente otro bloqueo de 24 horas si no se produjo ningún inicio de sesión exitoso mientras tanto. La versión 1.8.72 corrige la vulnerabilidad.
Impacto
Puntuación base 4.0
7.70
Gravedad 4.0
ALTA
Puntuación base 3.x
7.50
Gravedad 3.x
ALTA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:franklioxygen:mytube:*:*:*:*:*:*:*:* | 1.8.72 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- 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



