Buscar este blog

sábado, 8 de diciembre de 2012

Ocultando entornos virtuales a malware y atacantes

 
En este post vamos a ponernos en la piel de quién tiene que realizar un análisis de un software malicioso. En este caso el entorno va a engañar al malware  y le hará creer que está en un ordenador de una víctima inocente.
En este post de Hexacorn se describen algunas maneras de ocultar que el sistema es realmente una máquina virtual (principalmente VMWare). No es el único modo pero es una buena aproximación a ocultar ficheros, procesos, servicios y claves de registro de cara a evadir los controles anti-VM de algunos tipos de malware.
 
Cambiar la configuración de la máquina virtual

Se describe bastante bien en este paper.

Ocultar procesos (únicamente)

Si sólo quieres ocultar procesos, puedes usar la herramienta HideToolz que puede descargarse desde el sitio web de Fyyre.

Cuando HideToolz está activo, los procesos marcados para ocultarse no son visibles en el Administrador de tareas y no pueden encontrarse mediante las funciones normales del proceso de enumeración.

Esto es lo que ve en HideToolz (los procesos marcados con un asterisco estan ocultos):


 

Y esto es lo que el Administrador de tareas (y Process Explorer) puede ver:



Ocultar archivos, directorios, procesos, servicios, entradas de registro

Cuando se trata de ocultar más cosas, se puede utilizar la ayuda de un buen rootkit como el viejo Hacker Defender (Hxdef) de Holy_Father.

El rootkit usa un archivo de configuración que permite especificar lo que queremos ocultar en el entorno y que incluye:

  •      archivos / carpetas
  •      procesos
  •      servicios y sus entradas de registro asociadas
  •      claves de registro / nombres / valores
Para configurar Hacker Defender tienes que editar/modificar el archivo de configuración por defecto en sth a lo largo de estas líneas:
[Hidden Table]
hxd*
vmu*
vmt*
vmw*
tools*
procexp*
ollydbg*

[Root Processes]
hxd*
vmu*
vmt*
vmw*
tools*
procexp*
ollydbg*

[Hidden Services]
HackerDefender100
vmu*
vmt*
vmw*
procexp*

[Hidden RegKeys]
VMware, Inc.
Sysinternals

[Hidden RegValues]
vmu*
vmt*
vmw*

[Startup Run]

[Free Space]

[Hidden Ports]

[Settings]
Password=infected
BackdoorShell=cmd.exe
FileMappingName=_.-=[Hacker Defender]=-._
ServiceName=HackerDefender100
ServiceDisplayName=HXD Service 100
ServiceDescription=NT rootkit
DriverName=HackerDefenderDrv100
DriverFileName=hxdefdrv.sys
[Comments]
El nuevo archivo de configuración puede cargarse:
hxdef100.exe hide.ini
Y a partir de ahora los elementos seleccionados estarán disponibles sólo a los procesos enumerados en la sección "procesos fundamentales".
Ejemplo: Qué ve Regedit antes de la instalación del rootkit:




y después de su instalación:




Qué ve el Administrador de tareas antes:

 

y después de la instalación del rootkit:

 

Obviamente, la configuración de proporcionada es lejos de ser perfecta y necesita más desarrollo.

Lo que sería ideal es que los desarrolladores de productos VM permitieran ocultar completamente las herramientas y el entorno en el sistema operativo invitado. Por ejemplo, con la asignación aleatoria de los nombres de procesos, títulos de las ventanas, etc. - una técnica simple utilizada durante años por muchas herramientas antirootkit como XUETR y GMER.


Fuente: Hackplayers

No hay comentarios:

Publicar un comentario