Mi primera Shell

Algunos de los lectores del post de “bypassuac” en Windows 8 me preguntaron como se llega al punto de inicio del post, o sea a tener una “shell” de “meterpreter” desde la cual iniciar todos los pasos para lograr el bypass del UAC y escalar privilegios.

Métodos para obtener una “shell” de “meterpreter” en una máquina remota hay muchos, desde utilizando “exploits” para algún servicio remoto vulnerable, hasta el uso de la ingeniería social para lograr que el usuario de la máquina remota ejecute nuestro “payload” de alguna forma.

En este artículo voy a exponer un método mediante el cual un atacante puede tratar de engañar al usuario de una máquina para que ejecute el “payload”.

Distribución de un binario “troyanizado”.

En este caso, lo que vamos ha hacer es construir un binario que ejecute un programa legítimo (en este ejemplo utilizaremos “putty.exe”, un cliente ssh muy conocido) y por debajo ejecute nuestro “payload”. Este binario después se hará llegar a nuestra víctima para que esta lo ejecute en su PC.

Esto se puede hacer de forma muy limpia modificando el código fuente del binario que deseemos si es de código abierto y añadiendo lo que necesitamos, pero también puede hacerse con binarios cerrados, mediante la utilización de “packers”.

Windows trae su propio “packer” llamado “iexpress.exe” que sirve para crear paquetes autoinstalables.

Así pues, descargamos “putty.exe”  y lo guardamos en una carpeta de Windows. Le hemos cambiado el nombre a “puttysrc.exe”.

En la misma carpeta ponemos nuestro “payload”, al cual hemos llamado “puttylib.exe”.

Ahora crearemos un archivo BAT, el cual llamaremos “puttyex.bat” con el siguiente contenido.

@echo off
start /min puttylib.exe
start puttysrc.exe
exit

Este archivo cuando es ejecutado, simplemente arranca “puttylib.exe” (nuestro “payload”) en modo minimizado y “puttysrc.exe” en modo normal. Así pues, cuando la víctima arranque el BAT, le aparecerá la ventana de “putty” y en otra ventana minimizada estará ejecutándose el “payload”, al cual hemos llamado “puttylib” para no levantar sospechas.

Ahora, vamos a coger estos archivos y empaquetarlos en un único archivo ejecutable con el “iexpress”.

Arrancamos “iexpress.exe” desde un “cmd”.

1-iexpress

Siguiente.

2-iexpress

Siguiente.

3-iexpress

Ponemos un nombre al paquete (Putty) y pulsamos siguiente.

4-iexpress

Siguiente.

5-iexpress

Siguiente.

6-iexpress

Pulsamos en “Add” y metemos los tres ficheros que tenemos en la carpeta. Luego pulsamos siguiente.

7-iexpress

En “Install Program” seleccionamos nuestro bat, pero delante añadimos “cmd /c” o no funcionará en Windows 7 o Windows 8, ya que por defecto “iexpress” llama a los BAT con el comando “Command” en lugar de “Cmd” y este ya no existe en Windows 7.

Pulsamos siguiente.

8-iexpress

Siguiente.

9-iexpress

Siguiente.

10-iexpress

Decimos donde queremos guardar el nuevo ejecutable y con que nombre. Marcamos la opción de ocultar la extracción de ficheros y Siguiente.

11-iexpress

Siguiente.

12-iexpress

Marcamos “Don’t Save” y Siguiente.

13-iexpress

Siguiente.

14-iexpress

Finalizar.

Ahora tenemos un binario llamado “putty.exe” listo para distribuir a nuestra víctima.

Una vez distribuido, cuando la víctima ejecute el binario verá lo siguiente:15-putty

Y el atacante obtendrá lo siguiente:

16-meterpreter

Por supuesto, el “handler” de Metasploit se ha preparado tal como contamos en el post “Jugando con exploit/multi/handler” para migrar el proceso a uno seguro en cuanto consigamos la sesión. Así si el usuario cierra el “putty”, y más importante aún cierra la ventana que tiene minimizada ejecutando “puttylib”, el atacante no perderá la sesión de meterpreter.

Otros métodos.

Como hemos dicho al principio del post, este es un posible método, pero existen muchos más, y existen herramientas que pueden ayudarnos con ello.

Un de las mejores herramientas para este cometido es “The Social-Engineer Toolkit” o SET, creado y programado por David Kennedy (@dave_rel1k). Esta herramienta es una suite que ofrece multitud de posibles ataques de ingeniería social, desde clonar páginas web e inyectar “payloads” utilizando vulnerabilidades de los navegadores, hasta crear mails de “phising”, crear medios infectados con “payloads”, etc.

Proximamente dedicaré alguna entrada a esta fabulosa herramienta.

Publicado en: Metasploit
2 comentarios sobre “Mi primera Shell
  1. chwilowki dice:

    Iˇ¦ve learn some just right stuff here. Definitely value bookmarking for revisiting. I wonder how so much effort you set to make any such excellent informative web site.

  2. Q dice:

    Gracias Ignacio:)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

*