Protección de máquinas virtuales con Acceso a VM Just-In-Time

Completado

Normalmente, los ataques de registro por fuerza bruta tienen como destino los puertos de administración para obtener acceso a una máquina virtual (VM) o un servidor. Si un atacante tiene éxito, puede tomar el control del host y establecer un punto de apoyo en su entorno. Un ataque por fuerza bruta consiste en comprobar todos los nombres de usuario o contraseñas posibles hasta que se encuentra el correcto.

Esta forma de ataque no es la más sofisticada, pero herramientas como THC-Hydra lo convierten en un ataque relativamente sencillo de realizar. Por ejemplo, la siguiente secuencia de comandos se usa para atacar un servidor de Windows.

user@debian$ hydra -l administrator -P wordlist.txt rdp://13.66.150.191 -t 1 -V -f
Hydra v9.0 (c) 2004 by van Hauser/THC - Please do not use in military or secret service organizations, or for illegal purposes.

Hydra (http://www.thc.org) starting at 2019-10-10 17:38:44
[DATA] max 7 tasks per 1 server, overall 64 tasks, 7 login tries (1:1/p:7), ~0 tries per task
[DATA] attacking service rdp on port 3389
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "123456"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "654321" 
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "password"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "iloveyou"
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "rockyou"
...
[ATTEMPT] target 13.66.150.191 – login “administrator” – pass "P@ssword!123"
[3389][rdp] host 13.66.150.191 login: administrator  password: P@ssword!123
[STATUS] attack finished for 13.66.150.191 (waiting for children to complete tests)

Detención de ataques por fuerza bruta

Para contrarrestar los ataques por fuerza bruta, puede tomar varias medidas, como las siguientes:

  • Deshabilitar la dirección IP pública y usar uno de estos métodos de conexión:

    • Una red privada virtual (VPN) de punto a sitio.
    • Crear una VPN de sitio a sitio.
    • Usar Azure ExpressRoute para crear vínculos seguros desde la red local a Azure.
  • Requerir la autenticación en dos fases.

  • Aumentar la longitud y complejidad de la contraseña.

  • Limitar los intentos de registro.

  • Implementar Captcha.

  • Limitar la cantidad de tiempo que están abiertos los puertos.

Este enfoque final es lo que Microsoft Defender for Cloud implementa en su nombre. Los puertos de administración como Escritorio remoto y SSH solo deben estar abiertos mientras está conectado a la máquina virtual. Por ejemplo, para realizar tareas de administración o mantenimiento. Las características de seguridad mejoradas de Microsoft Defender for Cloud admiten el acceso Just-In-Time (JIT) a máquinas virtuales (VM). Cuando el acceso a máquinas virtuales JIT está habilitado, Defender for Cloud usa reglas de grupo de seguridad de red (NSG) para restringir el acceso a los puertos de administración. El acceso está restringido cuando los puertos no están en uso, para que los atacantes no puedan atacarlos.

Creación de una directiva que habilita el acceso a máquinas virtuales JIT

Al habilitar el acceso JIT para las máquinas virtuales, puede crear una directiva que determine lo siguiente:

  • Los puertos que se ayudan a proteger.
  • El período de tiempo que deben permanecer abiertos los puertos.
  • Las direcciones IP aprobadas que pueden acceder a estos puertos.

La directiva permite mantener el control de lo que los usuarios pueden hacer cuando solicitan acceso. Las solicitudes se registran en el registro de actividad de Azure, para que el acceso se pueda supervisar y auditar fácilmente. La directiva también le ayuda a identificar rápidamente las máquinas virtuales existentes que tienen habilitado el acceso a la máquina virtual JIT. También puede ver las máquinas virtuales en las que se recomienda el acceso JIT.