Protocolos de administración remota de Windows
Last updated
Last updated
Los servidores Windows se pueden administrar localmente mediante las tareas de administración del Administrador de Servidor en servidores remotos. La administración remota está habilitada de forma predeterminada a partir de Windows Server 2016. La administración remota es un componente de las funciones de administración de hardware de Windows que gestionan el hardware del servidor local y remotamente. Estas funciones incluyen un servicio que implementa el protocolo WS-Management, diagnóstico y control de hardware mediante controladores de administración de placa base, y una API COM y objetos de script que permiten crear aplicaciones que se comunican remotamente mediante el protocolo WS-Management.
Los principales componentes utilizados para la gestión remota de servidores Windows y Linux son los siguientes:
Protocolo de Escritorio Remoto ( RDP
)
Administración remota de Windows ( WinRM
)
Instrumental de administración de Windows ( WMI
)
El ( RDP
RDP) es un protocolo desarrollado por Microsoft para el acceso remoto a un ordenador con el sistema operativo Windows. Este protocolo permite la transmisión de comandos de visualización y control mediante la interfaz gráfica de usuario (GUI) cifrada a través de redes IP. RDP funciona en la capa de aplicación del modelo de referencia TCP/IP, utilizando normalmente el puerto TCP 3389 como protocolo de transporte. Sin embargo, el protocolo UDP sin conexión también puede utilizar el puerto 3389 para la administración remota.
Para establecer una sesión RDP, tanto el firewall de red como el del servidor deben permitir conexiones externas. Si se utiliza ( NAT
) en la ruta entre el cliente y el servidor, como suele ocurrir con las conexiones a Internet, el equipo remoto necesita la dirección IP pública para acceder al servidor. Además, se debe configurar el reenvío de puertos en el router NAT hacia el servidor.
RDP gestiona ( TLS/SSL
) desde Windows Vista, lo que significa que todos los datos, y especialmente el proceso de inicio de sesión, están protegidos en la red gracias a su buen cifrado. Sin embargo, muchos sistemas Windows no insisten en esto, sino que siguen aceptando un cifrado inadecuado mediante . No obstante, incluso con esto, un atacante aún está lejos de ser bloqueado, ya que los certificados que proporcionan identidad son simplemente autofirmados por defecto. Esto significa que el cliente no puede distinguir un certificado genuino de uno falsificado y genera una advertencia de certificado para el usuario.
El Remote Desktop
servicio se instala de forma predeterminada en servidores Windows y no requiere aplicaciones externas adicionales. Se puede activar mediante [nombre del host] Server Manager
y viene con la configuración predeterminada para permitir conexiones solo a hosts con ( NLA
).
Analizar el servicio RDP puede proporcionarnos rápidamente mucha información sobre el host. Por ejemplo, podemos determinar si NLA
está habilitado en el servidor, la versión del producto y el nombre del host.
Además, podemos --packet-trace
rastrear los paquetes individuales e inspeccionar su contenido manualmente. Vemos que el RDP cookies
( mstshash=nmap
) que Nmap utiliza para interactuar con el servidor RDP puede ser identificado por threat hunters
varios servicios de seguridad, como ( EDR
), y puede bloquearnos como evaluadores de penetración en redes reforzadas.
La autenticación y la conexión a estos servidores RDP se pueden realizar de varias maneras. Por ejemplo, podemos conectarnos a servidores RDP en Linux mediante xfreerdp
, rdesktop
, o Remmina
e interactuar con la interfaz gráfica del servidor según corresponda.
Tras la autenticación exitosa aparecerá una nueva ventana con el acceso al escritorio del servidor al que nos hemos conectado.
Administración remota de Windows ( WinRM
) es un protocolo simple de administración remota integrado en Windows basado en la línea de comandos. WinRM utiliza el Protocolo simple de acceso a objetos ( SOAP
) para establecer conexiones con hosts remotos y sus aplicaciones. Por lo tanto, WinRM debe habilitarse y configurarse explícitamente a partir de Windows 10. WinRM se basa en TCP
los puertos 5985
y 5986
para la comunicación, siendo el último puerto 5986 using HTTPS
, ya que anteriormente se utilizaban los puertos 80 y 443 para esta tarea. Sin embargo, dado que el puerto 80 estaba bloqueado principalmente por razones de seguridad, actualmente se utilizan los puertos 5985 y 5986, más recientes.
Otro componente que WinRM utiliza para la administración es Windows Remote Shell ( WinRS
), que permite ejecutar comandos arbitrarios en el sistema remoto. El programa viene incluido por defecto en Windows 7. Por lo tanto, con WinRM, es posible ejecutar un comando remoto en otro servidor.
Servicios como sesiones remotas con PowerShell y la fusión de registros de eventos requieren WinRM. Está habilitado de forma predeterminada a partir de la Windows Server 2012
versión, pero primero debe configurarse para versiones de servidor y clientes anteriores, y crear las excepciones de firewall necesarias.
Como ya sabemos, WinRM usa los puertos TCP 5985
( HTTP
) y 5986
( HTTPS
) por defecto, que podemos escanear con Nmap. Sin embargo, a menudo veremos que solo TCP 5985
se usa HTTP ( ) en lugar de HTTPS ( TCP 5986
).
Instrumental de Administración de Windows ( WMI
WMI) es la implementación de Microsoft y también una extensión del Modelo de Información Común ( CIM
CMN), funcionalidad esencial de la Administración Empresarial Web estandarizada (WMI WBEM
) para la plataforma Windows. WMI permite acceso de lectura y escritura a prácticamente todas las configuraciones de los sistemas Windows. Como es lógico, esto la convierte en la interfaz más importante del entorno Windows para la administración y el mantenimiento remoto de equipos Windows, ya sean PC o servidores. Se suele acceder a WMI mediante PowerShell, VBScript o la Consola de Instrumental de Administración de Windows (WMI WMIC
). WMI no es un único programa, sino que consta de varios programas y bases de datos, también conocidos como repositorios.
Nuevamente, es necesario mencionar que el conocimiento adquirido al instalar estos servicios y experimentar con las configuraciones en nuestra propia máquina virtual de Windows Server para adquirir experiencia y desarrollar el principio funcional y la perspectiva del administrador no puede reemplazarse con la lectura de manuales. Por lo tanto, recomendamos encarecidamente configurar su propio Windows Server, experimentar con la configuración y analizar estos servicios repetidamente para ver las diferencias en los resultados.
también ha desarrollado un script de Perl llamado que puede identificar de forma no auténtica las configuraciones de seguridad de los servidores RDP basándose en los protocolos de enlace.
Si queremos averiguar si se puede acceder a uno o más servidores remotos mediante WinRM, podemos hacerlo fácilmente con PowerShell. El cmdlet se encarga de ello y se le pasa el nombre del host en cuestión. En entornos Linux, podemos usar la herramienta , otra herramienta de pruebas de penetración diseñada para interactuar con WinRM.
La comunicación WMI siempre se inicializa en TCP
el puerto 135
y, tras establecerse correctamente la conexión, se transfiere a un puerto aleatorio. Por ejemplo, se puede usar el programa del kit de herramientas Impacket.