Metasploit 3.2 en Ubuntu 8.10


Publicado:   |  Más posts sobre Metasploit Ruby Seguridad Ubuntu

UPDATE: nada de esto es necesario hoy día. Ya salió la actualización de Ruby que permite correr Metasploit sin ningún problema.

Ubuntu 8.10 viene con una versión de Ruby (1.8.7.72) que hace que Metasploit no funcione bien. El problema ya está reportado y dentro de poco sacarán una actualización que lo solucione. Si sos ansioso como yo, estos son los pasos para hacer funcionar Metasploit 3.2 (la versión en desarrollo) en Ubuntu 8.10. Lo que debemos hacer es parchear Ruby y compilarlo:

Primero instalamos Ruby y las librerías necesarias para correr Metasploit:

sudo apt-get install ruby libruby rdoc libyaml-ruby libzlib-ruby libopenssl-ruby libdl-ruby libreadline-ruby libiconv-ruby rubygems libgtk2-ruby libglade2-ruby

Ahora instalamos los paquetes necesarios para compilar Ruby:

sudo apt-get build-dep ruby1.8

Ahora necesitamos las fuentes de Ruby:

apt-get source ruby1.8

Ahora necesitamos descargar y aplicar 3 parches:

Descargar 1, 2 y 3 patch ruby1.8-1.8.7.72/class.c class.c patch ruby1.8-1.8.7.72/eval.c eval.c patch ruby1.8-1.8.7.72/node.h node.h

Compilamos e instalamos:

cd  ruby1.8-1.8.7.72/ autoconf ./configure make make test sudo make install (UPDATE: esto instalará ruby en '/usr/local/bin', que tiene prioridad en la variable $PATH sobre '/usr/bin', donde está el ruby que instala Ubuntu)

Finalmente, seteamos las variables de entorno para decirle a nuestro nuevo Ruby que utilice las librerías del Ruby que viene con Ubuntu:

export GEM_HOME=/usr/lib/ruby/1.8/rubygems/ export RUBYLIB=/usr/lib/ruby/1.8/ (UPDATE: esto hay que hacerlo cada vez que se quiera correr el ruby parcheado con las librerías que instala ubuntu!!!)

Solo queda descargarnos Metasploit 3.2 desde el svn:

svn co http://metasploit.com/svn/framework3/trunk/ (UPDATE: ya salió la versión final de Metasploit 3.2!!!)

Y listo!

Cuando Ubuntu libere la actualiación con estos 3 cambios, no hará falta hacer todo este procedimiento. Cuando esto suceda, eliminamos la versión que acabamos de instalar:

sudo rm -r /usr/local/lib/ruby/ sudo rm /usr/local/bin/erb sudo rm /usr/local/bin/irb sudo rm /usr/local/bin/rdoc sudo rm /usr/local/bin/ri sudo rm /usr/local/bin/ruby sudo rm /usr/local/bin/testrb

Gracias a Christian por su post.

Comments powered by Disqus
Share