Definición
Un WAF (Web Application Firewall) es una capa de seguridad que inspecciona cada solicitud HTTP a un sitio web y filtra o bloquea patrones maliciosos antes de que lleguen a la aplicación. Se sitúa delante de la aplicación, como proxy inverso o nodo perimetral de CDN, y comprueba los encabezados, parámetros de URL y cuerpo de cada solicitud frente a conjuntos de reglas, detectando normalmente las clases del OWASP Top 10: inyección SQL, cross-site scripting, inclusión de archivos y abuso de autenticación defectuosa, además de bots de relleno de credenciales, scrapers y firmas de exploits conocidos. Hoy en día, la mayoría de los WAF se ofrecen como servicio gestionado en la nube (Cloudflare, AWS WAF, Imperva, Sucuri) en lugar de instalarse en el servidor, por lo que las actualizaciones de reglas se implementan en cuestión de horas tras revelarse una nueva vulnerabilidad, sin necesidad de cambiar la aplicación en sí. Muchos CDN incluyen un WAF en su nivel de seguridad. La contrapartida: las reglas pueden fallar con tráfico legítimo (falsos positivos), y un WAF no puede solucionar una aplicación insegura, solo reduce la superficie de ataque que la alcanza.
Cómo funciona
Un WAF aplica un conjunto de reglas (gestionadas por el proveedor más otras personalizadas) a cada solicitud: bloquea payloads maliciosos conocidos, limita la tasa de IPs sospechosas, desafía a navegadores que parecen automatizados y registra todo para su inspección. Los WAF más potentes combinan conjuntos de reglas con modelos de aprendizaje automático entrenados con tráfico de ataques.
Por qué es importante
Un WAF es la mejora seria más económica para la postura de seguridad de un sitio, defendiendo contra ataques ante los que un WordPress recién instalado o una librería sin parches serían vulnerables. No sustituye a un código bien hecho, pero da tiempo cuando se descubre una vulnerabilidad y absorbe el ruido constante de fondo del tráfico de ataques a escala de internet.