← Todas las CVEs

CVE-2026-53547

Termix · Account Takeover via Global Settings Disclosure · CVSS 8.8 Alta

Resumen

El endpoint POST /database/export de Termix permite a cualquier usuario autenticado, sin importar su nivel de privilegio, descargar un export completo en SQLite que incluye la tabla de configuración global de la instancia — no solo sus propios datos. Esa tabla global guarda, entre otras cosas, los códigos y tokens temporales del flujo de reseteo de contraseña de todos los usuarios, lo que permite secuestrar cualquier cuenta, incluidas las de administrador.

Producto afectado

Termix (Termix-SSH), versiones ≤ 2.3.1. Corregido en 2.3.2.

La vulnerabilidad

Al exportar la base de datos, el backend sí filtra correctamente por userId la mayoría de las tablas — cada usuario solo debería llevarse lo suyo. El problema es que la tabla de configuración global (settings) se copia completa al archivo exportado, sin ese mismo filtro, porque en teoría es "configuración de instancia" y no datos de usuario.

El fallo es que el flujo de recuperación de contraseña guarda ahí mismo, en esa tabla global sin protección, los códigos de reseteo y tokens temporales que se generan para cualquier cuenta. Un atacante con una cuenta de bajo privilegio solo necesita:

Impacto

Escalada de privilegios y compromiso total de cuentas ajenas a partir de un endpoint que solo requiere autenticación básica: confidencialidad, integridad y disponibilidad afectadas por completo (CVSS 8.8), ya que tomar la cuenta de un administrador abre el resto de la plataforma.

Cronología

Remediación

Corregido en Termix 2.3.2: la exportación de base de datos ya no incluye la tabla global de configuración sin filtrar, y los códigos/tokens de reseteo dejaron de almacenarse en un lugar accesible vía ese endpoint.

Referencias