XSS (Cross-Site Scripting): qué es y cómo prevenirlo
Ejemplo de XSS clásico: un formulario de comentarios que guarda texto plano sin sanitizar. Un atacante pone <script>alert('hack')</script> como comentario. Cuando otro usuario visita la página, el script se ejecuta en su navegador.
Con XSS real (no alert), el atacante puede:
- Robar cookies de sesión
- Redirigir a phishing
- Modificar el DOM para mostrar contenido falso
- Hacer peticiones en nombre del usuario
Prevención:
- Escapar todo input de usuario al renderizar (
htmlspecialcharsen PHP, template engines con auto-escape) - Validar en servidor, nunca confiar en validación cliente
- CSP como red de seguridad — bloquea scripts de orígenes no permitidos
- HttpOnly cookies — hace que las cookies de sesión no sean accesibles desde JavaScript
Por qué importa
XSS sigue siendo top-10 de OWASP en 2024. Cualquier formulario que reciba texto y lo muestre después es potencial vector. La prevención es sistemática: escape por defecto en TODO rendering, y CSP como backup.
¿Esto aplica a tu web?
En 10 segundos te decimos cómo está tu sitio respecto a los términos del glosario: Core Web Vitals, schema, seguridad, accesibilidad, SEO técnico.
¿Tienes un proyecto exigente entre manos?
Cuéntanos qué necesita tu empresa. En la primera llamada evaluamos viabilidad técnica, alcance y presupuesto cerrado. Sin compromiso.