Bloquea los archivos expuestos .git, .env y copias de seguridad
Un .env o un backup.sql olvidado en tu raíz web puede revelar todas tus contraseñas y claves de API. Comprobarlo lleva un minuto y bloquearlo, unas pocas líneas.
El código y la configuración se mantienen en inglés.
Revisa tu propio sitio
Cada uno de estos debería devolver 403 o 404, nunca 200:
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/.env
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/.git/HEAD
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/backup.sqlRevisa solo sitios que sean tuyos. El análisis profundo de HackGrade prueba muchas más rutas, después de que verifiques la propiedad.
Bloquéalos en nginx
# hidden files and folders (.git, .env, .htpasswd), but keep /.well-known working
location ~ /\.(?!well-known/) { deny all; }
# backups and dumps
location ~* \.(sql|bak|old|orig|swp|log)$ { deny all; }Bloquéalos en Apache
RedirectMatch 404 "/\.(git|svn|hg)(/|$)"
<FilesMatch "(^\.env|\.(sql|bak|old|orig|swp|log)$|~$)">
Require all denied
</FilesMatch>
Options -IndexesSi algo quedó expuesto
- Elimina el archivo de la raíz web. Guarda las copias de seguridad fuera de ella.
- Da por hecho que el contenido se copió: cambia las contraseñas de la base de datos y renueva todas las claves de API y tokens que contenga.
- Si se expuso una carpeta
.git, revisa también el historial de commits en busca de secretos que se hayan subido alguna vez.