WAF: Web Aplication Firewall

Hace cuestión de días nuestro departamento de Aconsa Seguridad, terminó de desarrollar un firewall de páginas/aplicaciones Web para un importante ISP español. Comúnmente llamado WAF. Web Aplication Firewall. esta herramienta es muy potente a la hora de rechazar ataques.(http://en.wikipedia.org/wiki/WAF)

Todos sabemos que el objetivo del desarrollo de una aplicación Web, es llegar a infinidad de más usuarios que si fuera una aplicación de escritorio de las de toda la vida. Por tanto, al ser accesible a un número mucho mayor de usuarios, será mas propensa a recibir mas ataques.

Al desarrollar las aplicaciones se intenta protegerla y blindarla de posibles fallos aprovechables para realizar determinados ataques, pero esto es casi imposible de evitar.

Cabe destacar que la aplicación WAF es una «ayuda» para proteger una aplicación. Nunca hay que descuidar la protección a la hora de desarrollar la aplicación.

http://www.acunetix.com/wp-content/uploads/2011/05/WebApplicationFirewall.png

Sí, todo está muy bien, pero ¿Qué es un WAF?

Un WAF, es un dispositivo físico que realiza un análisis del tráfico web entre el servidor e Internet. Analiza datos recibidos y protege de diferentes ataques Web tales como Cross Site Scripting, Remote and Local File Inclussion, SQL Injection, Buffer Overflows, Envenenamiento de cookies, etc…

El objetivo de un WAF es proteger de ataques que los ISP no pueden defender. Un firewall en toda regla.

Tipos de de modelos de seguridad en los WAF.

– Seguridad Positiva.

Básicamente deniegan todas las transacciones. Acepta las que cree seguras. Para ello contiene una serie de reglas predefinidas previamente o cargadas mediante algún script, o auto-aprendidas.

Este modelo tiene la ventaja de que nos protege de ataques desconocidos al no coincidir con las reglas predefinidas pero tiene la desventaja de detectar falsos positivos, además del proceso de aprendizaje continuo que necesita para que intuya el funcionamiento de la aplicación.

– Seguridad Negativa.

Este modelo acepta todas las peticiones, y unicamente deniega las que son posibles amenazas o ataques reales. Depende de bases de firmas y actualizaciones, por lo que no suele ser preciso.

A su favor tiene que no necesitan demasiadas configuraciones, ademas de ser fácilmente administrables.

Si bueno, pero ¿Que tipo de ataques bloquea?

Bloquea desde ataques de Cross Site Scripting, SQL Injection, Buffer Overflow analizando las peticioens GET o POST, por ejemplo limitando el uso de carácteres en el Buffer Overflow, o excluyendo peticiones UNION, CONCAT, <script>, etc… en ataques SQL Injection.

Obviamente si nuestra aplicación Web usara cualquier tipo de peticiones mencionadas anteriormente, o la rediseñamos o quitamos las reglas que apunten a cualquier bloqueo en el WAF.

¿Y qué riesgos implica emplear un WAF?

Si no está configurados correctamente, pueden detectar muchos falsos positivos, por tanto, muchas transacciones denegadas y pérdida de capital por parte de la empresa.

La mayoría necesitan adaptación y configuración ante nuevos cambios en el funcionamiento de la aplicación.

Pueden introducir un cierto retardo en las transferencias, por tanto, clientes insatisfechos y jefes molestos. Para atenuar este factor negativo, se pueden implementar aceleradores SSL (es un dispositivo hardware que se encarga de la capa de protección SSL, quita carga al servidor web), usar webchache, comprimir los datos HTML, CSS y JS al enviarlos al navegador.

Pero ¿qué modos de funcionamiento usa?

Trabajan en modo proxy, router, plugin o bridge. Aparte de físicos los tenemos también por Software.

Uno de los mas famosos es mod_security. Un complemento de Apache que «blinda» las transferencias. Todos los WAF, raro es el que no, tienen logs donde fichan todos los eventos acaecidos.

Cabe destacar que podemos bloquear peticiones provenientes de un determinado continente. Por ejemplo, muchos ataques provienen de los Balcanes, países del Este o China, por tanto podemos configurar nuestro WAF para evitar la navegación maligna o no de dichos lugares.

Como vemos, un WAF es un complemento muy versátil a la par que potente para proteger nuestro sitio Web. Aunque como solemos comentar, el mejor amigo de la seguridad, es el sentido común. Por ello, en el caso de adoptar un WAF como medida complementaria para la seguridad de nuestras aplicaciones Web, debemos barajar siempre las mejores opciones y no precipitarse.

Según las pruebas realizadas a nuestro WAF, es sumamente potente a la par que no incide practicamente en el tráfico de red.

Saludos.