sábado, 20 de noviembre de 2021

Diseño de seguridad de Azure para prevenir ataques: casos de uso

En este artículo, repasaré algunos casos de uso para proteger el entorno de nube de Azure mediante el diseño de seguridad y habilitar las características disponibles con Azure. También expliqué en detalle ataques como DDOS, XSS y SQL injection y cómo prevenirlos en el entorno de la nube de Azure con los 3 casos de uso.
Caso de uso 1: ataque DDoS en una aplicación web alojada en una máquina virtual
 


En el caso de uso anterior, la aplicación web implementada por el cliente en una máquina virtual de Azure se ejecuta en una subred pública
¿Qué es un ataque DDoS?
Un ataque de denegación de servicio distribuido (DDoS) es un intento malicioso de interrumpir el tráfico normal de un servidor, servicio o red objetivo al sobrecargar el objetivo o la infraestructura que lo rodea con una avalancha de tráfico de Internet.
¿Cómo mitigar el escenario anterior?
Aloje la máquina virtual dentro de una red virtual de Azure con el conmutador DDoS habilitado. Al habilitar el modo DDOS en VNet, podemos prevenir los ataques DDOS en Azure y, a continuación, se encuentran los detalles sobre Azure DDoS.
 


Protección contra DDoS de Azure
  • Le permite proteger sus recursos de Azure de los ataques de denegación de servicio (DoS).
  •  La protección DDoS (capas 3 y 4) ofrece dos niveles de servicio: Básico y Estándar .
Características
Básico
  • Habilitado por defecto (gratis).
  • Mitiga los ataques de red comunes.
  • Tanto el básico como el estándar protegen las direcciones IP públicas IPv4 e IPv6.
Estándar
  • Tiene capacidades avanzadas para protegerlo contra ataques a la red, como registro, alertas y telemetría.
  • Mitiga los siguientes ataques:
  • Ataques volumétricos: inunde la capa de red con ataques.
  • Ataques de protocolo: aprovecha una debilidad en las capas 3 y 4.
  • Ataques de capa de recursos: un ataque de capa 7 que interrumpe la transmisión de datos entre hosts.
  • Le permite configurar alertas al inicio y al final de un ataque.
  • Los datos de la métrica se conservan durante 30 días.
  • Proporciona políticas de mitigación ajustadas automáticamente (TCP/TCP SYN/UDP) para cada IP pública.
Caso de uso 2: Ataque XSS en una aplicación web alojada en una aplicación web de Azure (App Service)
Ataque XSS
Los ataques Cross-Site Scripting (XSS) son un tipo de inyección en el que se inyectan scripts maliciosos en sitios web de confianza. Los ataques XSS ocurren cuando un atacante usa una aplicación web para enviar código malicioso, generalmente en forma de un script del lado del navegador, a un usuario final diferente. Las fallas que permiten que estos ataques tengan éxito están bastante extendidas y ocurren en cualquier lugar donde una aplicación web use la entrada de un usuario dentro de la salida que genera sin validarla o codificarla.

En el escenario anterior, la aplicación web se ejecuta y Application Gateway con WAF habilitado con la configuración predeterminada
¿Qué es el Firewall de aplicaciones web de Azure en Azure Application Gateway?
Azure Web Application Firewall (WAF) en Azure Application Gateway brinda protección centralizada de sus aplicaciones web contra vulnerabilidades y vulnerabilidades comunes. Las aplicaciones web son objeto cada vez más de ataques maliciosos que explotan vulnerabilidades comúnmente conocidas. La inyección SQL y las secuencias de comandos entre sitios se encuentran entre los ataques más comunes.

Beneficios de la puerta de enlace de aplicaciones WAF
  • Protección contra inyección de SQL.
  • Protección contra secuencias de comandos entre sitios.
  • Protección contra otros ataques web comunes, como la inyección de comandos, el contrabando de solicitudes HTTP, la división de respuestas HTTP y la inclusión remota de archivos.
  • Protección contra violaciones del protocolo HTTP.
  • Protección contra anomalías del protocolo HTTP, como la falta de agente de usuario del host y encabezados de aceptación.
  • Protección contra rastreadores y escáneres.
  • Detección de configuraciones incorrectas de aplicaciones comunes (por ejemplo, Apache e IIS).
  • Límites de tamaño de solicitud configurables con límites inferior y superior.
  • Las listas de exclusión le permiten omitir ciertos atributos de solicitud de una evaluación WAF. Un ejemplo común son los tokens insertados en Active Directory que se utilizan para los campos de autenticación o contraseña.
  • Cree reglas personalizadas para satisfacer las necesidades específicas de sus aplicaciones.
  • Geo-filtre el tráfico para permitir o bloquear el acceso de ciertos países/regiones a sus aplicaciones.
  • Proteja sus aplicaciones de los bots con el conjunto de reglas de mitigación de bots.
  • Inspeccione JSON y XML en el cuerpo de la solicitud
Modos WAF
El WAF de Application Gateway se puede configurar para ejecutarse en los siguientes dos modos:
Modo de detección : Supervisa y registra todas las alertas de amenazas. Active el registro de diagnósticos para Application Gateway en la sección Diagnósticos . También debe asegurarse de que el registro WAF esté seleccionado y activado. El cortafuegos de aplicaciones web no bloquea las solicitudes entrantes cuando está funcionando en modo de detección.
Modo de prevención : Bloquea las intrusiones y ataques que detectan las reglas. El atacante recibe una excepción de "acceso no autorizado 403" y la conexión se cierra. El modo de prevención registra dichos ataques en los registros de WAF.
¿Cómo mitigar el ataque XSS?
Habilitación del modo de prevención WAF para ataques XSS, inyección de SQL y otros ataques, el modo de prevención bloquea las intrusiones entrantes


 
Caso de uso 3: - Ataque de inyección SQL en una aplicación web (aplicación web + base de datos SQL)
 

Aplicación web que se ejecuta con la base de datos como fondo y WAF de puerta de enlace de aplicaciones configurada para el equilibrio de carga de la aplicación. En el caso de uso anterior, la amenaza tanto del servidor de la base de datos como de la aplicación web también
Para mitigar los ataques a la base de datos SQL, habilite la protección contra amenazas avanzada para la base de datos SQL de Azure.

Advanced Threat Protection para Azure SQL Database detecta actividades anómalas que indican intentos inusuales y potencialmente dañinos de acceder o explotar bases de datos. Advanced Threat Protection puede identificar una posible inyección de SQL , el acceso desde una ubicación o un centro de datos inusual , el acceso desde un principal desconocido o una aplicación potencialmente dañina y las credenciales de SQL de fuerza bruta .
Entonces, hemos configurado el firewall de nivel de base de datos para evitar la inyección de SQL, pero ¿qué pasa con la aplicación web? Es muy simple, como mostramos en el caso de uso 2, simplemente habilitando Application Gateway WAF en modo de prevención.
 
Conclusión:
Hemos visto algunos casos de uso de características de seguridad de Azure como VNet DDOS, modo de prevención WAF de puerta de enlace de aplicaciones para mitigar algunos de los principales ataques OWASP. Estas funciones también están disponibles con otros proveedores de la nube, por ejemplo, en AWS, el servicio AWS Shield está disponible para protegerse de los ataques DDOS.