Seguridad
20 de septiembre de 20266 min de lectura
10 Hoyos de Seguridad que Tu Sitio Probablemente Tiene Ahora Mismo
El 73% de los sitios fallan en al menos 3 de estos puntos. Checklist rápido para dormir tranquilo.


La seguridad web no es opcional—es responsabilidad legal. Un breach puede costarte millones en multas y destruir la confianza de tus clientes. Aquí está el checklist que usamos en cada proyecto.
73%
Sitios vulnerables
$4.5M
Costo promedio breach
287
Días para detectar
60%
PyMEs cierran post-breach
Los 10 Hoyos Más Comunes
1. HTTPS No Configurado Correctamente
No basta con tener certificado SSL. Necesitas configuración correcta de headers y redirecciones.
typescript
// next.config.js - Headers de seguridad
const securityHeaders = [
{ key: 'X-Content-Type-Options', value: 'nosniff' },
{ key: 'X-Frame-Options', value: 'DENY' },
{ key: 'X-XSS-Protection', value: '1; mode=block' },
{ key: 'Strict-Transport-Security', value: 'max-age=63072000' },
{ key: 'Referrer-Policy', value: 'origin-when-cross-origin' },
];2. Inyección SQL
Sigue siendo el ataque #1. Nunca concatenes input del usuario en queries.
typescript
// ❌ MALO - Vulnerable a SQL injection
const user = await db.query(`SELECT * FROM users WHERE id = ${userId}`);
// ✅ BUENO - Parametrizado
const user = await db.query('SELECT * FROM users WHERE id = $1', [userId]);
// ✅ MEJOR - Usa un ORM como Prisma
const user = await prisma.user.findUnique({ where: { id: userId } });3. XSS (Cross-Site Scripting)
Permite a atacantes inyectar JavaScript malicioso. React escapa por defecto, pero cuidado con dangerouslySetInnerHTML.
Important
Si usas dangerouslySetInnerHTML, SIEMPRE sanitiza el HTML con una librería como DOMPurify.
4. Autenticación Débil
- Usa 2FA — Obligatorio para cuentas con acceso a datos sensibles
- Passwords hasheados —
bcryptoargon2, nuncaMD5oSHA1solos - Rate limiting — Máximo 5 intentos de login por minuto
- Sessions seguras —
httpOnly,secure,SameSitecookies
5-10. Más Vulnerabilidades Críticas
| # | Vulnerabilidad | Solución |
|---|---|---|
| 5 | CSRF | Tokens anti-CSRF en forms |
| 6 | Exposición de datos | Encriptar datos sensibles en DB |
| 7 | Configuración insegura | Audit de headers y permisos |
| 8 | Componentes vulnerables | npm audit, actualizaciones |
| 9 | Logging insuficiente | Logs de acceso y errores |
| 10 | APIs sin autenticación | JWT o API keys en todo |
Herramientas de Auditoría
- OWASP ZAP — Scanner gratuito de vulnerabilidades
- Snyk — Detecta vulnerabilidades en dependencias
- SecurityHeaders.com — Verifica headers HTTP
- SSL Labs — Analiza configuración HTTPS
La seguridad no es un producto, es un proceso. Audita regularmente, actualiza siempre, y asume que ya te hackearon.
¿Necesitas ayuda con esto?
Esto es justo lo que hacemos en Build (Desarrollo). Nuestro equipo puede implementarlo en tu empresa.
¿Quieres implementar esto en tu empresa?
Podemos ayudarte a llevar tu negocio al siguiente nivel con tecnología de punta.