¿Qué información sobre un host vmware está disponible para el invitado?

9

En vmware Workstation, qué información sobre el software y hardware del host está disponible para el sistema operativo invitado.

Para los fines de mi aplicación, me preocupa que un proceso en el sistema operativo invitado obtenga información sobre el hardware físico donde se ejecuta el host. Esto podría incluir detalles como números de serie, direcciones MAC o cualquier cosa que pueda identificar físicamente la computadora que se está ejecutando.

Tanto el host como el invitado ejecutarán Ubuntu Linux.

Editar: vmware-toolsse instalará en el invitado

Edición 2: Agregar recompensa

He investigado mucho sobre esta pregunta, y la mayoría de las respuestas tienen palabras como "no debería" en ellas. Necesito saber con cierto grado de certeza que un invitado de vmware no puede ver ninguno de los siguientes elementos (en ese caso, si estas cosas estuvieran disponibles para el invitado, se consideraría una violación de seguridad masiva)

  • cualquier número de serie de hardware
  • direcciones mac de las interfaces de red del host
  • número de serie de registro del software vmware
  • cualquier archivo en el sistema operativo host

La motivación para esta pregunta es que necesito ejecutar un software altamente no confiable y quiero protegerlo de cualquier información que pueda revelar mi identidad. Por ejemplo, supongo que este software intentará leer el número de serie de mis procesadores e informarlo a su creador, y supongo que esto podría dar lugar a un rastreo de mi identidad en el mundo real. Llama a esto paranoico si quieres. Parte de mi situación requiere que vmware-tools esté instalado.

usuario13137
fuente

Respuestas:

5

La información sobre un host puede filtrarse a un invitado de diferentes maneras. VMware (y los productos de virtualización en general) brindan protección contra muchas cosas. Si bien es poco probable que pueda proporcionar un entorno de aislamiento completo, probablemente haga un trabajo bastante bueno. Por ejemplo, algunos investigadores de virus usan VMware para proporcionar un entorno seguro para estudiar el comportamiento del malware .

La información del host puede filtrarse al huésped:

  • si el invitado ejecuta directamente instrucciones que la capa de virtualización no intercepta.
  • si el invitado puede observar el tráfico de red directamente en el mismo segmento de red que el host.
  • si el invitado puede comunicarse con el mundo exterior y sondear al host.

Su principal preocupación parece ser el primer método de fuga, aunque también debe asegurarse de protegerse contra los otros mecanismos.

VMware (y otros hipervisores) proporcionan virtualización interceptando lo que se consideran instrucciones sensibles. Las instrucciones sensibles revelarían al huésped información sobre el host o permitirían que el invitado escapara de la contención de la capa de virtualización. Por ejemplo, la instrucción que modifica la base de la tabla de páginas (que controla el acceso a la memoria) debe ser detectada por la capa de virtualización, interceptada y reemplazada por una versión "segura" de esa instrucción que preserva la ilusión de la virtualización.

Para proporcionar la ilusión de una máquina separada del host, también se virtualizan las instrucciones que revelan información de identificación sobre el host (como números de serie, direcciones MAC, etc.). En VMware, estas cosas se pueden configurar en el vmxarchivo. Estas cosas son bien entendidas y presumiblemente seguras.

A veces, hay compensaciones sobre lo que está expuesto, como la instrucción CPUID, contra la cual las versiones recientes de VMware brindan cierta "protección". (Consulte VMotion y la compatibilidad de la CPU para obtener más detalles sobre la virtualización de CPUID). Cuando se ejecuta como una instrucción privilegiada, se puede atrapar y emular, pero también se puede ejecutar como una instrucción nativa que puede exponer cierta información (presumiblemente poco interesante) al invitado .

Sin embargo, el invitado también puede aprender pasivamente otra información sobre el host. Por ejemplo, al sondear los tiempos de memoria, el invitado puede obtener información del tamaño de varios cachés. La capacidad de aprender sobre otros invitados (o el anfitrión) a través del tiempo y otros vectores ("canales laterales") es un área de investigación activa. En octubre de 2012, los investigadores descubrieron que, de hecho, es posible extraer claves criptográficas de otras máquinas virtuales . Esto puede ser bastante aterrador y los límites de lo que se puede descubrir y cómo protegerse contra esto aún no están completamente claros.

La mejor manera de estar completamente seguro es aislar su máquina a través del entrehierro del resto del mundo. Entonces, no importa lo que aprenda el software malicioso porque no puede comunicar esa información a nadie. Cuando haya terminado, limpie la máquina. El uso de una herramienta como VMware hace que esta limpieza y recuperación de estado sea más fácil porque el estado de la máquina está encapsulado en un conjunto de archivos.

Emil Sit
fuente
1

El invitado no debe saber nada acerca de la configuración del host, como sus redes, porque se le entrega un hw virtual que debería comportarse (casi) exactamente como el hw físico. Sin embargo, algunas cosas como la CPU que el huésped tiene que saber, pero ese conocimiento no debe comprometer la seguridad.

Entonces, si hay alguna información de configuración que se filtre de host a invitado, sería un agujero de seguridad.

Sin embargo, si habilita hgfs (sistema de archivos host-invitado), al menos parte del sistema de archivos del host estará visible en el invitado y es posible obtener cierta información sobre el host. Debe deshabilitar eso si está preocupado.

Todo esto puede no importar realmente normalmente, ya que en la mayoría de los casos la estación de trabajo se usa personalmente, es decir, usted tiene acceso al host en cualquier caso. De lo contrario, debería estar investigando la virtualización del servidor (vsphere, xen, kvm).

johnshen64
fuente
1

El artículo ¿Cómo extraer información del host desde una VM? describe las utilidades bajo ESX (i) / vSphere que el huésped puede usar para obtener información del host. Esto tiene un alcance necesariamente limitado debido a razones de seguridad.

La primera utilidad es el comando VMware Toolbox. Proporciona información sobre ESX (i) y la configuración de guestOS, incluidas estadísticas básicas de recursos.

UNIX/Linux - /usr/bin/vmware-toolbox-cmd
Windows - C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe

El segundo es la utilidad vmtoolsd (VMware Tools Daemon), donde el parámetro "info-get" puede configurar guestinfo dentro del archivo de configuración .vmx de la máquina virtual o en la memoria VMX mientras la máquina virtual se está ejecutando.

UNIX/Linux - /usr/bin/vmtoolsd
Windows - C:\Program Files\VMware\VMware Tools\vmtoolsd.exe
harrymc
fuente