Todas las guías
Severidad CríticaErrores de configuración

Archivos .env expuestos: cómo los atacantes encuentran tus secretos

Un archivo .env guarda contraseñas de bases de datos, API keys y secretos de firma. Si es accesible desde la web — en /.env, /.env.production o un backup como /.env.backup — cualquiera puede descargarlo y tomar control de tus servicios.

Qué es

Los archivos de entorno deben quedarse en el servidor y nunca servirse a los clientes. Un handler estático mal configurado, una copia perdida en el web root o un framework que sirve dotfiles pueden exponerlos.

Los atacantes no adivinan: ejecutan escaneos automatizados que solicitan /.env y docenas de variantes contra millones de hosts continuamente. Un archivo accesible se encuentra en cuestión de horas.

Por qué importa

Estos archivos suelen contener URLs de bases de datos de producción, claves secretas de Stripe, secretos de firma JWT y credenciales de la nube. Una sola fuga puede significar robo total de datos, cargos fraudulentos y toma de cuentas.

Como los secretos siguen siendo válidos hasta que se rotan, el daño continúa mucho después de eliminar el archivo, salvo que rotes todo lo que contenía.

Cómo solucionarlo

Bloquea los dotfiles en el servidor

Deniega el acceso a .env y otros dotfiles en la configuración de tu servidor web o proxy.

location ~ /\.(?!well-known).* {
  deny all;
  return 404;
}
Mantén los archivos de entorno fuera del web root

Guarda la configuración fuera de cualquier directorio que el servidor sirva estáticamente, y asegúrate de que tu build no copie archivos .env al resultado publicado.

Rota todo lo que estuvo expuesto

Si un archivo llegó a ser accesible, trata cada secreto que contenía como comprometido y rota de inmediato las contraseñas de bases de datos, API keys y tokens.

Preguntas frecuentes

Eliminé el archivo, ¿ya estoy a salvo?

No hasta que rotes los secretos. Quien lo haya descargado sigue teniendo credenciales válidas hasta que las cambies.

¿Cómo sé si el mío está expuesto?

Solicita https://tudominio.com/.env en un navegador. Si ves líneas KEY=value en lugar de un 404, está expuesto. AppSafe lo verifica automáticamente.

¿Tu app está afectada?

AppSafe verifica este y docenas de problemas más en un solo escaneo gratis.

Escanear mi app gratis