La implementación de firewalls es una práctica de seguridad recurrente utilizada en entornos corporativos. A la hora de evaluar la protección de aplicaciones web surge lo que se conoce como WAF o Web Application Firewalls. La importancia de contar con este tipo de protección sobre aplicaciones críticas es lo que analizaremos en esta publicación.

¿Qué es un Web Application Firewall?

Los WAF son un tipo de firewall que se utilizan para controlar el acceso a una aplicación o servicio web. A diferencia de un firewall tradicional, un IPS o IDS, la ventaja de un WAF es que opera sobre la capa de aplicación (capa 7 del modelo OSI), por lo que es posible considerar algunos tipos de protecciones más allá de las tradicionales con los dispositivos mencionados.

¿En que entornos es posible utilizar un WAF?

Durante el desarrollo de una aplicación web suelen detectarse vulnerabilidades. Muchas de ellas residen sobre alguna funcionalidad en particular. Según la criticidad del caso, en algunas circunstancias no es posible mitigarlas de forma inmediata debido a que requiere rediseñar la propia aplicación. En otros casos, la criticidad de la información y las tareas que realiza la aplicación web, no permite realizar los cambios necesarios para mitigar las vulnerabilidades detectadas.

En esta instancia, se suele utilizar un WAF. De esta manera, es posible configurar la regla necesaria para que la vulnerabilidad no pueda ser explotada. Esto permite solventarlas hasta que se solucione a nivel de diseño.

ModSecurity

Uno de los firewalls de aplicaciones web más utilizados para protección de servidores web es ModSecurity. Este firewall es Open Source y funciona a través de reglas que se especifican en diferentes archivos de configuración. Las reglas constan de tres parámetros:

Secrules VARIABLES OPERADORES ACCIONES

Sobre VARIABLES se especifica cuáles son los parámetros de la aplicación web que se controlarán. En el campo OPERADORES se define la regla. En este caso, suele utilizarse expresiones regulares que comprendan aquellas peticiones que se deseen filtrar. Finalmente, en el campo ACCIONES se definen qué medidas se tomarán en el caso de que se cumpla la condición.

Por lo tanto, el funcionamiento de ModSecurity puede resumirse en la siguiente imagen:

Diagrama de funcionamiento de ModSecurity

Asimismo, esta herramienta contiene algunas reglas precargadas que permiten habilitar de forma rápida la protección contra ataques comunes como Inyección SQL, XSS u otros ataques derivados a partir de la entrada de cadenas de texto especiales.

Reglas de Inyección SQL

Este tipo de medidas ayudan a elaborar un plan de acción preventiva, de forma tal de poder elevar el nivel de seguridad de la empresa antes de que un posible ataque ocurra. Este tipo de herramientas permiten disminuir el tiempo de reacción antes de que se solucionen las vulnerabilidades a nivel de diseño.

En futuras ediciones profundizaremos sobre otras funcionalidades de las que dispone este firewall para aplicaciones web y analizaremos diferentes tipos de configuraciones de reglas según la necesidad de la compañía.