Diseño para proteger la disponibilidad

Completado
Evite o minimice el tiempo de inactividad y la carga de trabajo del sistema y la degradación en caso de incidentes de seguridad mediante controles de seguridad seguros. Debe mantener la integridad de los datos durante el incidente y después de que el sistema se recupere.

Debe equilibrar las opciones de arquitectura de disponibilidad con las opciones de arquitectura de seguridad. El sistema debe tener garantías de disponibilidad para garantizar que los usuarios tengan acceso a los datos y que estos sean accesibles. Desde una perspectiva de seguridad, los usuarios deben funcionar dentro del ámbito de acceso permitido y los datos deben ser de confianza. Los controles de seguridad deben bloquear a los actores incorrectos, pero no deben impedir que los usuarios legítimos accedan al sistema y a los datos.

Escenario de ejemplo

Contoso Concierge ejecuta un sistema de software de administración de hoteles usado en más de 50 marcas de hoteles en los Estados Unidos. Se encarga de reservar, hacer el registro de entrada y realizar un seguimiento de los servicios de los huéspedes y el personal de limpieza. Es un sistema basado en la nube que se ejecuta sin dos regiones en los Estados Unidos. Se hospeda principalmente en conjuntos de escalado de máquinas virtuales. Los clientes de los hoteles se basan en el explorador.

Mejora de la confiabilidad a través de una seguridad sólida

Use controles de seguridad y patrones de diseño para evitar ataques y errores de código que causen agotamiento de recursos y bloqueo del acceso.

La adopción de este enfoque ayuda a garantizar que el sistema no experimente tiempo de inactividad causado por acciones maliciosas, como ataques por denegación de servicio distribuido (DDoS).

Desafío de Contoso

  • El equipo de cargas de trabajo y las partes interesadas de la carga de trabajo consideran que la fiabilidad de este sistema es de máxima importancia, ya que muchos huéspedes del hotel dependen de él para viajes de negocios y de ocio. Debe ser necesario que los hoteles dirijan su negocio.
  • El equipo ha invertido recursos considerables en probar requisitos funcionales y no funcionales para garantizar que la fiabilidad sea alta, incluido el uso de prácticas de implementación seguras para liberar actualizaciones de aplicaciones de forma fiable.
  • Aunque se han centrado en gran medida en la fiabilidad, el equipo ha prestado menos atención a la seguridad. Hace poco, se publicó una actualización que contenía un error de código que un atacante aprovechó para hacer caer todo el sistema de muchos hoteles. El ataque saturó los servidores de aplicaciones de una región durante más de cuatro horas por la noche, lo que causó problemas a los clientes y huéspedes del hotel.
  • El atacante usó los servidores de aplicaciones de Contoso para enviar solicitudes a una cuenta de almacenamiento regional para recibir información de folio generada previamente. Se generó un folio malicioso de gran tamaño que hizo que los servidores de aplicaciones agotaran los recursos del servidor de aplicaciones a medida que se cargaba en la memoria, y los reintentos del cliente propagaron el problema por todos los servidores de aplicaciones.

Aplicación del enfoque y los resultados

  • El equipo buscó un patrón de diseño para quitar sus servidores de aplicaciones del flujo de solicitudes de folio, optando por un enfoque de Valet Key. Aunque esto no habría impedido el problema, habría aislado el impacto.
  • También agregaron más validación de entrada al sistema para sanear la entrada, lo que ayudará a evitar intentos maliciosos como este en el futuro.
  • Con el saneamiento de entrada y un diseño reforzado, se ha mitigado un tipo de riesgo.

Limitación de forma proactiva los vectores de ataque

Implemente medidas preventivas para vectores de ataque que aprovechan vulnerabilidades en el código de aplicación, protocolos de red, sistemas de identidad, protección contra malware y otras áreas.

Implemente escáneres de código, aplique las revisiones de seguridad más recientes, actualice el software y proteja el sistema con antimalware eficaz de forma continua. Esto ayuda a reducir la superficie expuesta a ataques para garantizar la continuidad empresarial.

Desafío de Contoso

  • Las máquinas virtuales que se usan para hospedar el sistema son imágenes de Azure Marketplace con el sistema operativo Ubuntu más reciente. Los procesos de arranque de una máquina virtual configuran algunos certificados, modifican alguna configuración de SSH e instalan el código de la aplicación, pero no se emplean herramientas antimalware.
  • Aunque Azure Application Gateway se encuentra frente a la solución, solo se usa como puerta de enlace de Internet; la función de firewall de aplicaciones web (WAF) no está habilitada actualmente.
  • Ambas opciones de configuración dejan el entorno de proceso desprotegido de vulnerabilidades en el código o mediante la instalación no deseada de malware.

Aplicación del enfoque y los resultados

  • Después de consultar con el equipo de seguridad de Contoso, las máquinas virtuales ahora están inscritas en una solución antivirus administrada por la empresa.
  • El equipo también decide habilitar y ajustar la función WAF para ayudar a proteger el código de la aplicación mediante la eliminación de solicitudes de riesgo conocidas, como los intentos de inyección de SQL, en el nivel de puerta de enlace.
  • La aplicación y la plataforma de aplicaciones ahora tienen defensa adicional en profundidad, para ayudar a protegerse contra vulnerabilidades de seguridad que podrían afectar a la disponibilidad del sistema.

Protección de la estrategia de recuperación

Aplique al menos el mismo nivel de rigor de seguridad en los recursos y procesos de recuperación que en el entorno principal, incluidos los controles de seguridad y la frecuencia de copia de seguridad.

Debe tener un estado de sistema seguro conservado disponible en la recuperación ante desastres. Si lo hace, puede conmutar por error a un sistema secundario seguro o a una ubicación y restaurar copias de seguridad que no introduzcan una amenaza.

Un proceso bien diseñado puede impedir que un incidente de seguridad impida el proceso de recuperación. Los datos de copia de seguridad dañados o los datos cifrados que no se pueden descifrar pueden ralentizar la recuperación.

Desafío de Contoso

  • Aunque el sistema funciona como activo-activo entre regiones, el equipo tiene un plan de recuperación ante desastres para ayudar a restaurar la continuidad empresarial en los peores escenarios.
  • Parte de este plan incluye copias de seguridad de envío a una tercera región de EE. UU.
  • Por desgracia, las copias de seguridad estaban en un sistema que no se supervisaba con frecuencia y tenía controles de seguridad relativamente laxos. Durante un simulacro, se da cuenta de que todas las copias de seguridad se habían infectado con malware. Si ocurriese un desastre real en ese momento, no habrían podido recuperarse correctamente.

Aplicación del enfoque y los resultados

  • El equipo invertía tiempo y esfuerzo para proteger la ubicación de copia de seguridad, agregando controles de red e identidad adicionales para proteger los datos. Las copias de seguridad ahora también se almacenan en un almacenamiento inmutable para evitar alteraciones.
  • Después de revisar sus controles de seguridad, el equipo encuentra que durante el proceso de recuperación, la aplicación se ejecuta sin WAF durante un período de tiempo. Cambian el orden de las operaciones para cerrar esa brecha.
  • Ahora el equipo está seguro de que las copias de seguridad y el proceso de recuperación del sistema ya no son un vector de ataque fácil de aprovechar.

Comprobación de conocimientos

1.

¿Cómo ha usado Contoso los controles de seguridad para responder a un ataque que saturó su sistema?

2.

¿Cuál es un ejemplo de medida preventiva que se puede usar para limitar los vectores de ataque?

3.

Verdadero o falso: cuando se ejecuta en un entorno de recuperación, está bien tener una posición de seguridad relajada en comparación con el entorno de producción.