.gitignore Inadecuado
Un .gitignore que no cubre archivos .env, artefactos de build y configuraciones de IDE puede llevar a que secrets o datos sensibles sean accidentalmente commiteados.
Cómo Funciona
Si .env, .env.local y archivos similares no están en .gitignore, un 'git add .' commitea todos tus secrets. De igual forma, los archivos de configuración de IDE frecuentemente contienen tokens de API, configuraciones personales o rutas absolutas que filtran información de la máquina del desarrollador.
# MAL: .gitignore mínimo que omite archivos de secrets comunes
node_modules/
dist/
# Faltan: .env, .env.local, .env.production, *.pem, .DS_Store# BIEN: .gitignore completo para un proyecto Node.js
node_modules/
dist/
.next/
# Secrets
.env
.env.local
.env.*.local
*.pem
*.key
# IDE
.vscode/settings.json
.idea/
# OS
.DS_Store
Thumbs.dbEjemplo Real
En 2022, un desarrollador accidentalmente commiteó .env.production a un repo público de GitHub. Contenía keys de producción de Stripe, credenciales de base de datos y tokens de la API de Twilio. El repo estuvo público durante 8 horas antes de ser descubierto, resultando en cargos fraudulentos.
Cómo Prevenirlo
- Usa las plantillas oficiales de .gitignore de GitHub como punto de partida para tu lenguaje/framework
- Siempre incluye .env, .env.local, .env.*.local, *.pem y *.key en .gitignore
- Corre 'git status' y revisa cada archivo antes de commitear, especialmente al configurar un proyecto por primera vez
- Instala la configuración global de gitignore para tu SO (como .DS_Store) en ~/.gitignore_global
Tecnologías Afectadas
Data Hogo detecta esta vulnerabilidad automáticamente.
Escanea Tu Repo GratisVulnerabilidades Relacionadas
Sin Archivo .env.example
lowSin un archivo .env.example, los nuevos colaboradores no saben qué variables de entorno se requieren, lo que lleva a soluciones inseguras como hardcodear valores.
Sin Linting de Seguridad
lowSin reglas de ESLint orientadas a seguridad, vulnerabilidades comunes como sinks XSS, dangerouslySetInnerHTML y uso de eval() pasan desapercibidas en code review.
Sin Git Hooks de Seguridad
lowSin hooks de pre-commit que escaneen en busca de secrets y problemas de seguridad, los desarrolladores pueden accidentalmente pushear API keys y contraseñas al repositorio.
npm Scripts Inseguros
mediumLos npm scripts que obtienen y ejecutan código remoto, o que incrustan secrets como argumentos de shell, son un riesgo de supply chain y exposición de credenciales.