7 nov 2011

Impersonalización (Parte II de II)

 

El presente artículo es la continuación de la serie sobre impersonalización realizada en Flu Project. En dicho artículo se tratará la técnica de pass the hash o impersonalización de credenciales de usuarios Windows de una forma práctica y sencilla. Utilizaremos distintas herramientas, las cuales serán explicadas intentando dar una visión global del objetivo y del uso de dicha herramienta.

La primera fase, que no está relacionada directamente con la impersonalización, es la obtención de los hashes y usuarios. Para lograr estas credenciales un atacante podría compremeter un equipo de manera remota, mediante algún exploit y a partir de ahí utilizar alguna herramienta como pwdump. De manera física una de las elevaciones de privilegios más conocidas es la de Sticky Keys, de la cual hablamos en Flu Project.

Proponemos el siguiente entorno, una máquina con XP en la que hemos conseguido un privilegio y podemos ejecutar la aplicación pwdump para obtener la lista de usuarios y hashes LM y NT que hay en el sistema. El objetivo de la propuesta es suplantar la identidad de un usuario de una máquina Windows 7. El usuario de la máquina Windows 7 se encontrará en la máquina XP, pero nosotros no sabemos la contraseña y perderíamos mucho tiempo en crackearla ya que la contraseña es de 14 caracteres o superior, ¿Por qué no?

En primer lugar obtenemos la lista de usuarios y hashes. A continuación vemos un CMD de XP dónde ejecutamos la aplicación con el ataque de Sticky Keys previo.

No hace falta más almacenamos esa información y no perdemos el tiempo en crackear credenciales, las suplantaremos en memoria. Ahora hablaremos de la aplicación Windows Credential Editor, WCE, la cual nos permite, entre otras cosas, realizar el cambio en memoria de las credenciales. Como modificador interesante mostraros el -l, con el que podremos listar las credenciales con las que estoy logueado en cada momento.

En esta imagen no vemos a ningún usuario logueado porque estamos con la máquina recién iniciada y con el ataque de Sticky Keys realizado. Tengo la lista de usuarios y hashes anterior. Con el modificador -s podré especificarle que usuario y hashes quiero suplantar. A continuación veis una imagen del proceso. Hay que introducir la siguiente orden: wce.exe -s <usuario>:<nombreEquipo>:<hashLM>:<hashNT>. Dónde nombre de equipo podría ser un dominio también.

Como aclaración ya hemos puesto el dominio/nombre máquina remota para ir más rápido. El XP tiene como nombre de máquina XP y la máquina Windows 7 a la que queremos acceder tiene como nombre wee-PC. Ya tenemos las credenciales en caliente suplantadas. Ahora entraremos a los recursos compartidos, siendo Administrador un recurso compartido interesante es c$, pero nos valdría para cualquier otro recurso de la máquina remota a la que ese usuario suplantado tuviera acceso.

Vemos el potencial que tiene este tipo de técnica, pero hay algo más la ejecución de procesos remotos gracias a la suplantación de las credenciales. Con la suite PSTools podemos realizar gran cantidad de acciones remotas, una de las más interesantes abrir una shell remota que se ejecuta en la máquina remota y que podemos controlar desde el equipo local. A continuación os dejo la captura utilizando la herramienta PsExec.exe de la suite. Os recomiendo que probéis las diferentes herramientas de la suite ya que son muy interesantes.

Para finalizar comentaros que esta técnica es útil para utilizar en ciertas auditorias y que la idea final es quién tiene un hash tiene acceso. Los usuarios ven importantes las contraseñas y el ponerlas robustas, pero las contraseñas robustas y las frágiles al fin y al cabo son sólo un simple hash LM o NT en los sistemas operativos Windows.

 

=========================================================- Impersonalización (Parte I de II)Impersonalización (Parte II de II)=========================================================

 

2 comentarios:

  1. [...] se realiza un ataque Pass The Hash? Las herramientas o vías utilizadas para obtener derechos de administración locales en un equipo son muy diversas, pero una vez [...]

    ResponderEliminar
  2. [...] en la máquina remota, además esa misma cuenta deberá disponer de la misma contraseña (Impersonalización de usuarios? pass the hash implícito?). Aunque, por supuesto, existe la opción de poder indicar con qué credenciales se quiere [...]

    ResponderEliminar