Conexiones de Base de Datos
Conexiones sin encriptar, bases de datos accesibles públicamente, credenciales por default, passwords en línea, MongoDB/Redis/Elasticsearch sin auth, límites de pool y validación SSL.
12 vulnerabilidades
Conexión a Base de Datos Sin Cifrado
highTu conexión a la base de datos no usa SSL/TLS, lo que significa que todas las consultas y resultados viajan por la red en texto plano y pueden ser interceptados.
Base de Datos Accesible Públicamente
criticalTu base de datos está vinculada a 0.0.0.0 o expuesta en una IP pública sin VPC o firewall, haciéndola directamente accesible desde internet.
Credenciales de Base de Datos por Defecto
criticalTu base de datos usa credenciales predeterminadas de fábrica como postgres:postgres, root:root o admin:admin — lo primero que prueba cualquier atacante.
Cadena de Conexión con Contraseña Inline
highUna cadena de conexión a base de datos con contraseña en texto plano está hardcodeada en tu código fuente, comprometiendo tus credenciales de base de datos en el control de versiones.
MongoDB Sin Autenticación
criticalTu conexión a MongoDB no tiene credenciales de autenticación, permitiendo que cualquiera que pueda alcanzar el puerto de la base de datos lea, modifique o borre todos los datos.
Redis Sin Autenticación
highTu instancia de Redis no tiene contraseña y es accesible más allá de localhost, permitiendo que cualquiera que pueda alcanzarla lea todos los datos en caché, tokens de sesión y contenidos de colas.
Elasticsearch Accesible Públicamente
criticalTu instancia de Elasticsearch es accesible desde internet sin autenticación, exponiendo todos los datos indexados a cualquiera que conozca la URL del endpoint.
Sin Límites en el Pool de Conexiones
mediumTu pool de conexiones a base de datos no tiene límite máximo de conexiones, lo que significa que un pico de tráfico o una consulta lenta puede agotar todas las conexiones disponibles y tumbar tu app.
Timeout de Conexión a BD Faltante
mediumTu conexión a base de datos no tiene timeout configurado, así que una base de datos lenta o sin respuesta dejará tu aplicación entera colgada indefinidamente en lugar de fallar rápido.
Credenciales de BD en Logs
highTu DATABASE_URL o contraseña de base de datos se imprime en los logs de la aplicación vía console.log o mensajes de error, exponiendo credenciales a cualquiera con acceso a los logs.
Sin Validación de Certificado SSL de BD
highTu conexión SSL a la base de datos usa rejectUnauthorized: false, que cifra el tráfico pero no verifica la identidad del servidor, dejándote expuesto a ataques de hombre en el medio.
Host de Base de Datos Hardcodeado
mediumEl hostname y puerto de tu base de datos están hardcodeados en el código fuente en lugar de variables de entorno, exponiendo la topología de tu infraestructura y haciendo los despliegues inflexibles.