Web application firewall
Un firewall de aplicaciones web (WAF) es un firewall que supervisa seguridad web, filtra o bloquea el tráfico HTTP hacia y desde una aplicación Web. Puede filtrar el contenido de aplicaciones web, mientras un firewall de red protege tráfico entre los servidores. Un WAF protege páginas de web contra ataques como inyección SQL, XSS y falsificación de petición de sitios cruzados (CSRF) por el inspector del protocolo HTTP.
Historia
Los firewalls de aplicaciones, que controlan la entrada, la salida y el acceso desde aplicaciones o servicios, se desarrollaron por primera vez a principios de la década de 1990 por Gene Spafford, Bill Cheswick y Marcus Ranum.[1] El producto era un firewall basado en red que podía manejar solo pocos tipos de aplicaciones (como FTP o RSH). En los siguientes años, los productos fueron desarrollados por otros para proporcionar un software de firewall estable para que otros podrán construir sobre ellos.
Los firewalls dedicados de aplicaciones web entraron al mercado más adelante en la década cuando los ataques de los ataques del servidor web se estaban volviendo mucho más notorios.
La primera compañía en ofrecer un firewall de aplicaciones web dedicado fue Perfecto Technologies con su producto AppShield.[2] El AppShield fue enfocada en el mercado de comercio electrónico para proteger contra ataques de web. Perfecto fue renombrado como Sanctum.[3] Perfecto nombró las diez mejores técnicas para prevenir ataques de aplicaciones web y creó las bases para el mercado WAF:
Manipulación de hidden field, Cookie poisoning, Alteración de parámetros,[4] Desbordamiento de búfer, Cross-Site Scripting (XSS), Opciones de backdoor (puerta trasera), Stealth commanding, Navegación forzada[5] y Configuraciones erróneas de terceros,[6] son Agujero de seguridad conocidas
En 2002, el proyecto de código abierto ModSecurity[7] fue creado para hacer la tecnología WAF más accesible y resolver los obstáculos dentro de la industria, como casos de negocios, barreras de costos y las propiedades de conjunto de reglas. ModSecurity finalizó un conjunto de reglas básicas para proteger las aplicaciones web, basado en el trabajo de OASIS Web Application Security Technical Committee’s (WAS TC). En 2003, este trabajo fue ampliado y estandarizó a través de la Top 10 lista de Open Web Application Security Project’s (OWASP). OWASP, publica con cierta regularmente una lista con los 10 riesgos de seguridad más críticos de las aplicaciones web. Esta lista se convertiría en la referencia de la industria para muchos temas de seguridad en la web.
Desde entonces, el mercado ha seguido creciendo y evolucionando, incluyendo la industria del comercio con el aumento del fraude contra tarjetas de crédito. Con el desarrollo del Payment Card Industry Data Security Standard (PCI DSS), un estándar para que las organizaciones incrementen los controles sobre los datos de los titulares de tarjetas y para que la seguridad sea más regulada. El mercado de WAF superó $ 200 millones en tamaño en 2010.[8]
Descripción
Un firewall de aplicaciones web es un tipo de firewall de aplicaciones especial que se aplica a aplicaciones web. Se implementa frente a las aplicaciones web y analiza el tráfico basado en la web (HTTP), detectando y bloqueando tráfico malicioso. El OWASP ofrece una definición técnica amplia para un WAF. Se define como “un firewall de web es un firewall que protege aplicaciones HTTP. Un WAF aplica un conjunto de reglas en las conversaciones HTTP para proteger a las aplicaciones de ataques comunes como son cross-site scripting (XSS) e inyección de SQL. Mientras que los proxies protegen a clientes, WAFs protegen a los servidores. Usualmente los WAFs se despliegan para proteger una aplicación web específica o un conjunto de aplicaciones web.”[9]
En acuerdo con el suplemento de información PCI DSS requisito 6.6, un WAF se define como “un punto de regla de seguridad colocado entre una aplicación web y el punto final del cliente. Esta funcionalidad puede implementarse en software o hardware, ejecutándose en un dispositivo de dispositivo o en un servidor típico que ejecute un sistema operativo común. Puede ser un dispositivo independiente o integrado en otros componentes de red.”[10] Un WAF puede ser un dispositivo físico o virtual que evita que las vulnerabilidades que entran por las aplicaciones web. Estas vulnerabilidades pueden ser causadas porque la tecnología es más antigua o fue codificada de manera insuficiente. Un WAF puede resolver estas vulnerabilidades con configuraciones especiales llamadas “policies.”
Vulnerabilidades previamente desconocidas pueden ser descubiertas con pruebas de penetración o con un escáner de vulnerabilidades. Un escáner de vulnerabilidad de aplicaciones web, también conocido como escáner de seguridad de aplicaciones web, se define en SAMATE NIST 500-269 como “un programa automatizado que examina las aplicaciones web en busca de posibles vulnerabilidades de seguridad. También busca errores de codificación de software.”[11] La resolución de vulnerabilidades generalmente se refiere como corrección. Se pueden hacer correcciones al código en la aplicación. En estas situaciones, necesitan un “custom policy” para una vulnerabilidad de aplicación web única pero es una solución temporal (conocida como parche virtual).
Un WAF no es una solución de seguridad definitiva. Sin embargo es una solución que deber ser utilizado junto con otras soluciones de seguridad como firewalls de red y sistemas de prevención de intrusos, para proporcionar una estrategia de defensa holística.
Los WAF normalmente siguen un modelo de seguridad positivo, un modelo de seguridad negativa o una combinación de los dos según el SANS Institute.[12] Un WAF utiliza una combinación de lógica basada en reglas, análisis sintáctico y firmas para detectar y prevenir ataques tales como scripts de sitios cruzados e inyección de SQL. El OWASP genera una lista de los diez principales defectos de seguridad de las aplicaciones web. Todos los WAF comerciales ofrecer protección contra los diez defectos. También hay opciones que no son comerciales. ModSecurity es una de estas opciones. Un motor WAF no es suficiente para ofrecer protección adecuada, por lo tanto, OWASP junto con Spiderlabs de Trustwave ayudan a organizar y mantener un conjunto de reglas básicas a través de GitHub[13] para usar junto con el motor WAF de ModSecurity.[14]
Opciones de implementación
Los WAF se implementan en tres maneras diferentes. Según NSS Labs, las opciones de implementación son puentes transparentes (transparent bridge), proxy inverso transparente (transparent reverse proxy) y proxy inverso (reverse proxy). Transparente se refiere al hecho de que el tráfico HTTP se envía directamente a la aplicación web. Por eso el WAF es transparente entre el cliente y el servidor. Esto está en contraste con el proxy inverso, donde el WAF actúa como un proxy y el tráfico del cliente es enviado directamente al WAF. El WAF luego filtra el tráfico a las aplicaciones web. Esto puede proporcionar beneficios adicionales, como el enmascaramiento de IP e proporcionar desventajas como la latencia de rendimiento.
Vendedores comerciales
Muchos WAF comerciales tienen características similares, pero las principales diferencias son las interfaces de usuario, opciones de implementación o requisitos para entornos específicos.
WAF basado en dispositivo
- Barracuda Networks WAF
- Citrix Netscaler Application Firewall
- F5 Big-IP ASM
- Fortinet FortiWeb
- Imperva SecureSphere
- Monitorapp AIWAF
- Penta Security WAPPLES
- Positive Technologies PT Application Firewall
- Radware AppWall
- Sophos XG Firewall
WAF basado en la nube
- AIONCLOUD
- Akamai Technologies Kona
- Cloudbric
- Cloudflare
- F5 Silverline
- Hukot.net WAF
- Imperva Incapsula
- QingCloud WAF
- Radware
- Sucuri Firewall
- Webscale Cloud Secure
Opciones de de código abierto
Las soluciones de código abierto están disponibles para uso público general.
- ModSecurity
- NAXSI
Referencias
- ↑ Alam, M. Afshar (2009). Recent Developments in Computing and Its Applications. K International House.
- ↑ «Perfecto Technologies Delivers AppShield for E-Business - InternetNews.». www.internetnews.com. Consultado el 20 de septiembre de 2016.
- ↑ «Identifying the 10 most common application-level hacker attacks - Page 1053900 - TechRepublic». TechRepublic. Consultado el 20 de septiembre de 2016.
- ↑ https://www.owasp.org/index.php/Web_Parameter_Tampering
- ↑ https://www.owasp.org/index.php/Forced_browsing
- ↑ http://www.calavista.com/misconfiguration-can-leave-vulnerable-attackers/
- ↑ «ModSecurity homepage». ModSecurity.
- ↑ http://www.iesgrancapitan.org/blog04
- ↑ Maximillan Dermann; Mirko Dziadzka; Boris Hemkemeier; Alexander Meisel; Matthias Rohr; Thomas Schreiber (7 de julio de 2008). «OWASP Best Practices: Use of Web Application Firewalls ver. 1.0.5». OWASP (en inglés). OWASP.
- ↑ PCI Data Security Standards Council (octubre de 2008). «Information Supplement: Application Reviews and Web Application Firewalls Clarified ver. 1.2» (PDF). PCI DSS. PCI DSS.
- ↑ Paul E. Black; Elizabeth Fong; Vadim Okun; Romain Gaucher (enero de 2008). «NIST Special Publication 500-269 Software Assurance Tools: Web Application Security Scanner Functional Specification Version 1.0». SAMATE NIST. SAMATE NIST.
- ↑ Jason Pubal (13 de marzo de 2015). «Web Application Firewalls - Enterprise Techniques» (PDF). SANS Institute. SANS Institute InfoSec Reading Room.
- ↑ «Core-Rule Set Project Repository». GitHub.
- ↑ «OWASP ModSecurity Core Rule Set Project». OWASP.