Arquivos .env expostos: como atacantes acham seus segredos
Um arquivo .env guarda senhas de banco de dados, API keys e segredos de assinatura. Se ele estiver acessível pela web — em /.env, /.env.production ou um backup como /.env.backup — qualquer um pode baixá-lo e assumir o controle dos seus serviços.
O que é
Arquivos de ambiente devem ficar no servidor e nunca ser servidos aos clientes. Um handler estático mal configurado, uma cópia perdida na raiz web ou um framework que serve dotfiles podem expô-los.
Os atacantes não ficam adivinhando — eles rodam escaneamentos automatizados que requisitam /.env e dezenas de variações contra milhões de hosts, sem parar. Um arquivo acessível é encontrado em questão de horas.
Por que importa
Esses arquivos costumam conter URLs de banco de dados de produção, chaves secretas do Stripe, segredos de assinatura JWT e credenciais de nuvem. Um único vazamento pode significar roubo total de dados, cobranças fraudulentas e tomada de contas.
Como os segredos continuam válidos até serem rotacionados, o dano segue muito depois de o arquivo ser removido, a menos que você rotacione tudo o que ele continha.
Como corrigir
Negue o acesso a .env e outros dotfiles na configuração do seu servidor web ou proxy.
location ~ /\.(?!well-known).* {
deny all;
return 404;
}Guarde a configuração fora de qualquer diretório que o servidor sirva estaticamente, e garanta que o seu build não copie arquivos .env para o resultado publicado.
Se um arquivo chegou a ficar acessível, trate cada segredo nele como comprometido e rotacione imediatamente senhas de banco de dados, API keys e tokens.
FAQ
Removi o arquivo — estou seguro?
Não até você rotacionar os segredos. Quem baixou o arquivo ainda tem credenciais válidas até você trocá-las.
Como eu saberia se o meu está exposto?
Acesse https://seudominio.com/.env no navegador. Se você vir linhas KEY=value em vez de um 404, está exposto. O AppSafe verifica isso automaticamente.
Seu app está afetado?
O AppSafe verifica isso e dezenas de outros problemas em um único escaneamento grátis.
Escanear meu app grátisGuias relacionados
API keys expostas no JavaScript do cliente
Tudo no seu bundle é público. Trate assim.
Source maps em produção vazam o seu código-fonte
Arquivos .map publicados entregam o seu código original.
CORS mal configurado: as armadilhas do curinga e do reflexo
Permita toda origem e qualquer site poderá ler sua API.