La funcionalidad de los sistemas modernos de protección de aplicaciones (WAF) debería ser mucho más amplia que la lista de vulnerabilidades de OWASP Top 10

Retrospectiva


La escala, composición y estructura de las amenazas cibernéticas para aplicaciones están evolucionando rápidamente. Durante muchos años, los usuarios han accedido a aplicaciones web a través de Internet utilizando navegadores web populares. En cada momento, era necesario soportar 2-5 navegadores web, y el conjunto de estándares para desarrollar y probar aplicaciones web era suficientemente limitado. Por ejemplo, casi todas las bases de datos se crearon con SQL. Desafortunadamente, después de un corto tiempo, los piratas informáticos aprendieron a usar aplicaciones web para robar, eliminar o modificar datos. Obtuvieron acceso ilegal y abusaron de las capacidades de las aplicaciones usando varios métodos, incluyendo engañar a los usuarios de las aplicaciones, la implementación y la ejecución remota de código. Pronto, aparecieron en el mercado herramientas comerciales de seguridad de aplicaciones web llamadas Firewalls de aplicaciones web (WAF), y la sociedad respondió creando un proyecto de seguridad de aplicaciones web abierto, el Proyecto de seguridad de aplicaciones web abiertas (OWASP), para definir y mantener estándares y metodologías de desarrollo aplicaciones seguras

Protección básica de la aplicación


La lista de los 10 principales de OWASP es el punto de partida para proteger las aplicaciones y contiene una lista de las amenazas más peligrosas y configuraciones incorrectas que pueden conducir a vulnerabilidades de las aplicaciones, así como tácticas para detectar y repeler ataques. OWASP Top 10 es un punto de referencia reconocido en la industria de aplicaciones de ciberseguridad en todo el mundo y define la lista básica de capacidades que debe tener un sistema de seguridad de aplicaciones web (WAF).

Además, la funcionalidad WAF debe tener en cuenta otros ataques comunes en las aplicaciones web, incluida la falsificación de solicitudes entre sitios (CSRF), clickjacking, scraping web e inclusión de archivos (RFI / LFI).

Amenazas y desafíos de seguridad para las aplicaciones actuales


Hasta la fecha, no todas las aplicaciones se ejecutan en la versión de red. Existen aplicaciones en la nube, aplicaciones móviles, API y, en las arquitecturas más recientes, incluso funciones de software individuales. Todos estos tipos de aplicaciones deben sincronizarse y controlarse, ya que crean, modifican y procesan nuestros datos. Con el advenimiento de nuevas tecnologías y paradigmas, surgen nuevos desafíos y desafíos en todas las etapas del ciclo de vida de la aplicación. Esto incluye la integración de desarrollo y operación (DevOps), contenedores, Internet de las cosas (IoT), herramientas de código abierto, API, etc.

La implementación distribuida de aplicaciones y una variedad de tecnologías crea tareas complejas y complejas no solo para los especialistas en seguridad de la información, sino también para los fabricantes de soluciones de seguridad que ya no pueden confiar en un enfoque unificado. Las características de seguridad de las aplicaciones deben tener en cuenta las características específicas de su negocio para evitar operaciones erróneas y comprometer la calidad de los servicios para los usuarios.

El objetivo final de los piratas informáticos suele ser el robo de datos o una violación de la disponibilidad de los servicios. Los atacantes también aprovechan la evolución tecnológica. Primero, el desarrollo de nuevas tecnologías crea más vacíos y vulnerabilidades potenciales. En segundo lugar, en su arsenal aparecen más herramientas y conocimientos para sortear los remedios tradicionales. Esto aumenta en gran medida la llamada "superficie de ataque" y la exposición de las organizaciones a nuevos riesgos. Las políticas de seguridad deben cambiar constantemente después de los cambios en la tecnología y las aplicaciones.

Por lo tanto, las aplicaciones deben protegerse de una variedad cada vez mayor de métodos y fuentes de ataque, y los ataques automáticos deben reflejarse en tiempo real en función de decisiones informadas. Como resultado, los costos operativos y la mano de obra aumentan en medio de posiciones de seguridad debilitadas.

Tarea número 1: administrar bots


Más del 60% del tráfico de Internet es generado por bots, la mitad de los cuales se conoce como tráfico "malo" (según el informe de seguridad de Radware ). Las organizaciones están invirtiendo en aumentar el ancho de banda de la red, esencialmente sirviendo la carga ficticia. La distinción exacta entre el tráfico real de usuarios y el tráfico de bots, así como entre bots "buenos" (por ejemplo, robots de búsqueda y servicios de comparación de precios) y bots "malos" puede generar ahorros de costos significativos y un aumento en la calidad de los servicios para los usuarios.

Los bots no van a facilitar esta tarea, y pueden imitar el comportamiento de usuarios reales, evitar CAPTCHA y otros obstáculos. Además, en el caso de ataques que usan direcciones IP dinámicas, la protección basada en el filtrado por dirección IP se vuelve ineficaz. A menudo, las herramientas de desarrollo de código abierto (por ejemplo, Phantom JS) que pueden ejecutar JavaScript del lado del cliente se utilizan para lanzar ataques de fuerza bruta, ataques de relleno de credenciales, ataques DDoS y ataques automatizados de bot .

La gestión eficaz del tráfico de bot requiere una identificación única de su fuente (como una huella digital). Dado que se producen muchas entradas en el caso de un ataque de bot, su huella digital le permite identificar actividades sospechosas y asignar puntos, en función de las cuales el sistema de protección de la aplicación toma una decisión informada, bloquear / permitir, con una tasa mínima de falsos positivos.

imagen

Tarea # 2: Protección API


Muchas aplicaciones recopilan información y datos de servicios con los que interactúan a través de la API. Al transferir datos confidenciales a través de la API, más del 50% de las organizaciones no verifican ni protegen las API para detectar ataques cibernéticos.

Ejemplos de uso de API:

  • Integración de IoT
  • Interacción de la máquina
  • Entornos sin servidor
  • Aplicaciones móviles
  • Aplicaciones dirigidas por eventos

Las vulnerabilidades de la API son similares a las vulnerabilidades de la aplicación e incluyen inyecciones, ataques de protocolo, manipulaciones de parámetros, redirecciones y ataques de bot. Las puertas de enlace API dedicadas garantizan la compatibilidad de los servicios de aplicaciones que se comunican a través de la API. Sin embargo, no proporcionan seguridad de extremo a extremo para la aplicación, ya que WAF se puede utilizar con las herramientas de seguridad necesarias, como analizar encabezados HTTP, listas de control de acceso (ACL) de capa 7, analizar y verificar cargas útiles JSON / XML y proteger contra todas las vulnerabilidades de Lista de los 10 principales de OWASP. Esto se logra inspeccionando los valores clave de la API utilizando modelos positivos y negativos.

Tarea 3: Denegación de servicio


El viejo vector de ataque de denegación de servicio (DoS) continúa demostrando su efectividad en ataques a aplicaciones. Los atacantes tienen una serie de técnicas exitosas para interrumpir los servicios de aplicaciones, incluyendo inundaciones HTTP o HTTPS, ataques lentos y bajos (por ejemplo, SlowLoris, LOIC, Torshammer), ataques que usan direcciones IP dinámicas, desbordamientos de búfer, fuerza bruta -ataques, y muchos otros. Con el desarrollo de Internet de las Cosas y la aparición posterior de botnets de IoT, los ataques a las aplicaciones se han convertido en el foco principal de los ataques DDoS. La mayoría de los WAF de seguimiento de conexión solo pueden soportar una cantidad limitada de carga. Sin embargo, pueden inspeccionar los flujos de tráfico HTTP / S y eliminar el tráfico de ataque y las conexiones maliciosas. Una vez que se detecta un ataque, no tiene sentido volver a pasar este tráfico. Dado que el ancho de banda de WAF para repeler ataques es limitado, se necesita una solución adicional en el perímetro de la red para bloquear automáticamente los siguientes paquetes "defectuosos". Para este escenario de seguridad, ambas soluciones deben poder interactuar entre sí para intercambiar información sobre ataques.

imagen
Figura 1. Organización de protección integral de redes y aplicaciones utilizando soluciones de Radware como ejemplo.

Tarea 4: Protección continua


Las aplicaciones a menudo están sujetas a cambios. Las metodologías de desarrollo e implementación, como las actualizaciones continuas, significan que las modificaciones se realizan sin intervención y control humanos. En condiciones tan dinámicas, es difícil mantener políticas de seguridad que funcionen adecuadamente sin un alto número de falsos positivos. Las aplicaciones móviles se actualizan con mucha más frecuencia que las aplicaciones web. Las aplicaciones de terceros pueden cambiar sin su conocimiento. Algunas organizaciones buscan un mayor control y visualización para mantenerse al tanto de los riesgos potenciales. Sin embargo, esto no siempre se puede lograr, y la protección de aplicaciones confiable debe usar capacidades de aprendizaje automático para contabilizar y presentar visualmente los recursos disponibles, analizar amenazas potenciales, crear y optimizar políticas de seguridad en caso de modificaciones de la aplicación.

Conclusiones


A medida que las aplicaciones juegan un papel cada vez más importante en la vida cotidiana, se convierten en el objetivo principal de los hackers. El premio mayor potencial para los cibercriminales y las pérdidas potenciales para el negocio son enormes. La complejidad de la tarea de garantizar la seguridad de las aplicaciones no puede exagerarse, dada la cantidad y las variaciones de las aplicaciones y las amenazas.

Afortunadamente, estamos en un momento en el que la inteligencia artificial puede ayudarnos. Los algoritmos basados ​​en el aprendizaje automático proporcionan protección adaptativa en tiempo real contra las amenazas cibernéticas más avanzadas dirigidas a las aplicaciones. También actualizan automáticamente las políticas de seguridad para proteger las aplicaciones web, móviles y en la nube, así como las API, sin falsos positivos.

Es difícil predecir con precisión cuál será la próxima generación de amenazas cibernéticas para las aplicaciones (posiblemente también basadas en el aprendizaje automático). Pero las organizaciones definitivamente pueden tomar medidas para proteger los datos de los clientes, la propiedad intelectual y garantizar la disponibilidad de servicios con grandes beneficios para el negocio.

Los enfoques y métodos efectivos para garantizar la seguridad de las aplicaciones, los principales tipos y vectores de ataques, zonas de riesgo y brechas en la defensa cibernética de las aplicaciones web, así como la experiencia internacional y las mejores prácticas se presentan en el estudio e informe de Radware " Seguridad de aplicaciones web en un mundo conectado digitalmente ".

Source: https://habr.com/ru/post/476490/


All Articles