¿Qué modelo de sistema de detección de intrusos funcionará mejor para proteger las máquinas virtuales de los ataques comunes en la nube?

Tirar de la red y el enchufe de alimentación será la mejor manera de prevenir cualquier ataque, pero probablemente no ayudará a brindar un servicio.

La primera pregunta antes de mirar cualquier software en particular para lidiar con los hilos es identificar los hilos abstractos, cuáles podrían ser los resultados y qué tiempo de inactividad es aceptable.
Apagar su sistema de groupware privado en caso de un ataque DDOS está perfectamente bien. Desactivar la bolsa de valores de Nueva York considerablemente menos.
A veces, puede considerar corregir esto como un concepto formal de seguridad, porque su seguro comercial lo desea, en otros casos, puede ser suficiente ejecutar un correo electrónico corto para intercambiar sus ideas con sus compañeros de trabajo.

Si observa su red desde arriba hacia abajo, el ISP en el extremo superior hasta el servidor, siga la idea para evitar ataques lo antes posible, pero suponga que se transmiten.

El primer paso es en el ISP. Los Blackholes y las listas negras de IP o de red basadas en ISP son la mejor manera de prevenir la denegación de servicio (distribuida) y los ataques de fuerza bruta. Comúnmente, el ISP puede detectar la primera clase al filtrar el paquete vacío. Cada vez más común también tiene la idea de filtrar mensajes sin cifrar para puertos cifrados.
Por supuesto, esto solo funciona si tiene una conexión dedicada a su nube. Su colección de máquinas virtuales de Amazon no podrá utilizarla.

El siguiente paso son los enrutadores de puerta de enlace y los equilibradores de carga, a veces en relación con los monitores de tráfico y las ollas de miel. En la configuración más sencilla, solo evitan más de X conexiones por segundo.
Más eficiente es detectar patrones de tráfico. Si entra una conexión http al servidor A y después de 10 segundos se establece una conexión ssh del servidor A al servidor B y ambos tienen un rendimiento similar, dígale al firewall que desconecte la conexión a A.
Snort es el sistema de detección más común.

La última instancia está en el servidor mismo. Aquí tienes más opciones. Una es buscar archivos de configuración modificados, por ejemplo, si la configuración de ssh cambia. Las actividades en el archivo de registro son otro punto a tener en cuenta. El firewall del host es el último lugar que puede detectar ataques contra un host específico. También funcionarán en la nube, pero tienen el problema de que, si bien un host está limpio, es difícil decir si una combinación de hosts o toda la red es segura.
OSSEC es el más utilizado basado en Linux.

Alienvault tuvo una buena comparación de las diferentes herramientas. Herramientas de detección de intrusos de código abierto: una descripción general rápida

Es mejor que tenga un modelo que sea una combinación de diferentes métodos de protección. En términos de seguridad, esto se llama Defensa en profundidad. Si tiene que elegir solo unos pocos, un firewall web y parches automáticos.

Mantenga su máquina virtual y su aplicación bajo control de código fuente como git para almacenar el código de implementación. Utilice tecnologías de automatización de implementación como Ansible, Puppet, Chef y en el centro del sistema de Windows. De esa forma, puede volver a implementar rápidamente sus máquinas virtuales a un buen estado conocido en caso de que se vean comprometidas. Pruebe que esto funciona mediante la redistribución de máquinas.

Mantenga un equilibrador de carga redundante frente a las máquinas web para que implementar el equilibrador de carga o el servidor de aplicaciones en las máquinas virtuales no importe el tiempo de actividad y la disponibilidad de la aplicación.

Un cortafuegos web para evitar que su aplicación sea pirateada por métodos de ataque comunes como la inyección de SQL y las secuencias de comandos de sitios cruzados. Ejemplos de cortafuegos web Imperva considera el mejor, F5 Sam, modseguridad para Apache y Naxsi para Nginx.

Un sistema de detección de intrusiones de host que detecta ataques dentro de la máquina virtual. Un ejemplo de código abierto de HIDS es OSSEC

Un sistema de detección de intrusos en la red como Snort que detecta las firmas de ataque que entran y salen de la red que se ejecuta fuera de la máquina virtual para que los atacantes no puedan modificarla.

Active el parcheo automático de su sistema operativo. De esta forma, tendrá un período de tiempo más corto para las vulnerabilidades de las que el atacante puede aumentar sus privilegios.

Escanee su aplicación web si esa es la aplicación en ejecución con escáneres como Qualsys Guard. Esta es una práctica recomendada según el estándar de seguridad de datos PCI DSS de la industria de tarjetas de crédito, pero seguirlas aunque no maneja pagos sigue siendo una buena práctica. https: //www.pcisecuritystandards

Lea los veinte controles de seguridad críticos del instituto SANS, incluidas las prioridades, implemente y siga eso. https://www.sans.org/critical-se

Escribe y usa código seguro. Evite utilizar software que haya tenido muchas vulnerabilidades de seguridad en el pasado, lo que puede ser un signo de malas prácticas de seguridad. CVE tiene una base de datos sobre vulnerabilidades conocidas. La firma de seguridad Secunia tiene un informe anual que cubre las aplicaciones más vulnerables.

Utilice la autenticación de dos factores para que las contraseñas administrativas de la máquina virtual no puedan ser robadas. Yubikey, authy, Google authenticator y Duosec son ejemplos de sistemas de autenticación de dos factores.