viernes, diciembre 25, 2020

Blue Team & Red Team: Cómo Parallels RAS Gateway Secure revela el espacio de direcciones IP interno de la organización. Leak++

Con la llegada apresurada del teletrabajo, muchas empresas han tenido que buscar soluciones rápidas para llevar los puestos de trabajo a la nube. Parallels RAS (Remote Application Server), es una solución de entrega de aplicaciones e infraestructura de escritorio virtual (VDI: Virtual Desktop Infrastructure) que permite a empleados y clientes de una organización acceder y utilizar aplicaciones, escritorios y datos desde cualquier dispositivo, gracias a las capacidades de virtualización que ofrece.

Figura 1: Blue Team & Red Team: Cómo Parallels RAS Gateway Secure revela el espacio de direcciones IP interno de la organización. Leak++

Con el uso de clientes VDI para acceder a los escritorios de trabajo, tenemos un entorno de tecnologías web para dar acceso a las redes de trabajo de una organización, y, por supuesto, para los que los que se dedican al Hacking de Web Technologies, esto es algo que hay que entender bien, pues nos vamos a encontrar expuestos a Internet estos puntos de acceso de las organizaciones.


En el artículo de hoy vamos a ver cómo es posible encontrar el espacio direcciones IP internas de una organización a partir de RAS Gateway Secure, lo que llevará a dar más información para futuros ataques de red IPv4&IPv6. Vamos a ver cómo funciona esto.

Arquitectura RAS

En la siguiente Figura 3 muestra un escenario en el que el RAS Secure Gateways HTML5 Portal se implementan en la DMZ. El servicio de  RAS Secure Gateway reenviará las peticiones vía HTTP a un host de sesión de escritorio remoto, RAS RD, que tendrá instalada la función de Servicios de Escritorio Remoto (RDS)

Figura 3:Arquitectura de red para una infraestructura Parallels RAS Secure Gateway y RAS RD.

Como se aprecia, el Host RDP se encuentra dentro de la LAN de la organización, aunque también cabría la posibilidad de que estuviese dentro de una DMZ y así reducir la superficie de exposición de los activos de la red interna de la organización. 

Búsqueda de Parallels Remote Application Server

Buscar dispositivos RAS HTML5 Gateway accesibles desde Internet para un pentester es relativamente sencillo. Basta con consultar la Guía de administración del dispositivo para poder extraer patrones de las URLs y luego hacer un poco de Hacking con Buscadores, o usar las funciones avanzadas en el Pentesting con FOCA para llevar a nuestra herramienta a localizar esos puntos de entrada a la infraestructura RAS de la organización.

Figura 4: Guía de administración del dispositivo con información de las URL de acceso.

Como se ve en la imagen superior, las URLs de acceso a estos dispositivos tienen presentes las singularidades “/RASHTML5Gateway/” y “/RASHTML5Gateway/#/login”, lo que facilita en gran medida la localización del formulario de acceso de estos dispositivos conectados en Internet.

Figura 5: Resultados de las búsquedas con las singularidades en la URL.

Se observa que sin mucho esfuerzo en la realización de un dork, Google ofrece un buen número de resultados relacionados con el formulario HTML5 de acceso al portal web de los dispositivos, lo que sin duda hace fácil utilizar las opciones de búsqueda avanzada de FOCA.

Análisis del tráfico HTTP generado por el RAS de Parallels

Uno de aspectos más importantes en cualquier Ethical Hacking o auditoría relacionada con tecnologías web, sean del tipo que sean, es analizar las peticiones y respuestas HTTP para ver si el dispositivo revela información interesante que, a simple vista, y sin la ayuda de un proxy HTTP, podría pasar desapercibida. Para ello se selecciona uno de los resultados devueltos por Google y se observa que el formulario del RAS solicita en el campo del login un usuario centralizado un Active Directory (user@domain) y un password.

Figura 6: Formulario web de acceso al RAS de Parallels.

Utilizando ZAProxy, se observa como al pulsar directamente sobre le botón login, sin la necesidad de introducir un user@domain con contraseña, el RAS Secure Gateway genera una petición HTTP por POST al RAS RD donde releva cuál es su dirección IPv4.

Figura 7: Dirección IPv4 del RAS RD que recibe las peticiones de los recursos de virtualización.

Si el RAS RD se encuentra en la red interna de la organización, el espacio de direccionamiento IPv4 de la organización estaría quedando expuesto. En el mejor de los casos, si el RAS RD se encuentra en una zona desmilitarizada (DMZ), su espacio de direccionamiento IPv4 estaría quedando expuesto, aunque el impacto sería menor.

Cómo minimizar la fuga de información

Consultado la información ofrecida por el fabricante, cabe la posibilidad de que el RAS Secure Gateway pueda realizar las funciones de RAS RD dentro de la misma máquina. Como la máquina es la misma, todas las peticiones HTTP hacia los recursos virtualizados podrían realizarse sobre “localhost”. El resultado para este escenario sería el siguiente:

Figura 8: Petición HTTP desde el servicio del RAS Secure Gateway hacia el servicio RAS RD en la propia máquina.

La dirección IPv4 del RAS RD no estaría siendo revelada, pero sí que se estarían revelando los puertos TCP relacionados con el servicio RAS Secure Gateway (8080/TCP) y el RAS RD (8081/TCP).

Figura 9: Opciones de configuración del RAS Secure Gateway para referenciar al RAS RD. 

En el caso de que el RAS Secure Gateway y el RAS RD se encuentren en redes diferentes, parece muy complicado eliminar la fuga de información presentada en este artículo, debido a que el RAS Secure Gateway tiene que realizar una petición HTTP por POST para comunicarse con el RAS RD.

Saludos y Feliz Navidad,  

Autor: Amador Aparicio (@amadapa), escritor de los libros “Raspberry Pi para Hackers & Makers: PoCs & Hacks Just for Fun!” y "Hacking Web Technologies 2ª Edición" , CSE (Chief Security Envoy) de ElevenPaths

1 comentario:

  1. Además hay caído el CVE el mismo día de Navidad:

    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-35710

    ResponderEliminar