Menú principal

miércoles, 1 de julio de 2015

Cómo instalar Metasploit en OS X Mavericks

Homebrew permite al usuario de OS X instalar gran cantidad de paquetes que Apple no proporciona a sus usuarios. Para poder instalar Metasploit en OS X utilizaremos paquetes que podemos obtener con Homebrew de manera sencilla. Es importante que para llevar a cabo la instalación de Metasploit en OS X no se disponga de MacPorts instalado en el equipo, ya que seguramente se tenga problemas con ellos y las dependencias. La instalación de Metasploit puede resumirse en los siguientes pasos que se muestran a continuación:
  • Instalación de Command Line Development Tools Xcode 5 en Mavericks
  • Instalación de Java
  • Instalación de Homebrew
  • Instalación de Ruby 2.1
  • Instalación del escáner Nmap
  • Instalación de la base de datos de PostgreSQL y su configuración
  • Instalación de Metasploit Framework
Como se puede ver la lista de acciones a realizar es grande, pero si seguimos esto paso a paso no deberíamos tener problemas para instalar el framework en OS X Mavericks. En primer lugar hay que asegurarse de que se encuentran instaladas las Command Line Developer Tools y para ello se puede abrir un terminal y ejecutar la siguiente instrucción xcode-select –install, instalándose las herramientas automáticamente. 

Figura 1: Instalación de las Command Line Developer Tools

Hay que asegurarse de tener la última versión de Java, en este caso Java JDK 8. Esto puede ser descargado desde el sitio web de Oracle. Para asegurarse de que se tiene la versión adecuada se puede ejecutar en un terminal la siguiente instrucción java –version. Además, si se quiere comprobar dónde está instalado se puede utilizar el comando whereis.

Ahora, instalaremos Homebrew pudiéndose descargar desde su sitio web. En este punto, y tras instalar Homebrew hay que asegurarse de que los binarios instalados por éste son los primeros que se encuentran en la variable de entorno $PATH. Por ello se ejecutan las siguientes instrucciones echo PATH=/usr/local/bin:/usr/local/sbin:$PATH >> $HOME/.bash_profile; source $HOME/.bash_profile; brew tap homebrew/versions

Para instalar Ruby 2.1 utilizaremos Homebrew, y es tan sencillo como ejecutar la siguiente instrucción brew install homebrew/versions/ruby21. Una vez ejecutada la instrucción se comprueba la versión ejecutando la orden ruby –v en la terminal. Existen otras formas de instalar Ruby en OS X, pero quizá está es una de las más sencillas para los usuarios.

Para instalar Nmap también utilizaremos Homebrew. Con este proceso su instalación es trivial y muy rápida. La instrucción que debe ser ejecutada es brew install nmap en la terminal. Nmap puede ser utilizado desde la consola de Metasploit por lo que es importante su correcta instalación y Homebrew simplifica y mucho el proceso.

La instalación del motor de base de datos PostgreSQL y su configuración es un paso también crítico, ya que después será utilizado por la consola de Metasploit. La instalación se llevará a cabo desde Homebrew con la instrucción brew install postgresql –without-ossp-uuid. Una vez instalado se debe configurar. Para ello hay que inicializar el motor de base de datos con la siguiente instrucción initdb /usr/local/var/postgres. Para configurar PostgreSQL se lanzarán varias instrucciones cuyo objetivo es copiar una configuración al entorno de usuario. Las instrucciones son:
mkdir –p $HOME/Library/LaunchAgents
cp /usr/local/Cellar/postgresql/9.1.4/homebrew.mxcl.postgresql.plist $HOME/Library/LaunchAgents/
launchctl load –w $HOME/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Una vez realizado esto debemos crear un usuario para la base de datos llamado msf que utilizaremos con Metasploit. Para realizar esto ejecutamos la instrucción createuser msf –P –h localhost. Además, se debe crear la base de datos con la instrucción createdb –O msf msf –h localhost.

Ahora toca descargarse el framework con Git. Para obtener la copia del repositorio ejecutaremos la instrucción git clone https://github.com/rapid7/metasploit-framework.git. En este punto ya estaríamos cerca de poder arrancar la consola de Metasploit. Creando el directorio /usr/local/share/metasploit-framework y copiando todo lo que se descarga desde Git podemos crear un enlace simbólico para poder utilizar día a día con facilidad Metasploit. Para todos los binarios que empiezan por msf* de la carpeta de Metasploit se hace un enlace simbólico a la ubicación /usr/local/bin y de este modo aparecen en $PATH y son fácilmente invocables. Una instrucción sencilla sería ejecutar lo siguiente for file in $(ls msf*); do ln –s /usr/local/share/metasploit-framework/$file /usr/local/bin/$file; done.

Ahora damos permisos al resto de usuarios de escritura sobre el fichero /etc/profile, por ejemplo con chmod go+w. Por último hay que configurar la base de datos para que se integre con Metasploit y para ello añadimos al fichero /etc/profile la siguiente instrucción sudo echo export MSF_DATABASE_CONFIG=/usr/local/share/metasploit-framework/config/database.yml >> /etc/profile.

Figura 2: Metasploit en OS X
Utilizamos bundle install para instalar las versiones de las gemas soportadas por el framework. Editamos el fichero /usr/local/share/metasploit-framework/config/database.yml con la siguiente información:
Production:

adapter: postgresql

database: msf

username:msf

password:

host: 127.0.0.1

port: 5432

pool: X (un número que se quiera dar, por ejemplo 75)

timeout: 5
Ejecutamos source /etc/profile y source $HOME/.bash_profile para que todo quede actualizado y podremos lanzar msfconsole. No es un proceso rápido y puede resultar costoso, pero disponer del framework de explotación de Metasploit en tu OS X Mavericks merece la pena.

5 comentarios:

  1. Me indica al introducir en la terminal "echo PATH=/usr/local/bin:/usr/local/sbin:$PATH >> $HOME/.bash_profile; source $HOME/.bash_profile; brew tap homebrew/versions" que no se encuentra "brew" intalado, ¿qué he de hacer?

    ResponderEliminar
  2. Aségurate de que has instala homebrew y que la terminal te reconoce brew. Homebrew lo puedes descargar de aquí: http://brew.sh/

    ResponderEliminar
  3. Al tratar de usar el comando bundle install
    Me aparece esto:
    -bash: /usr/local/bin/bundle: /usr/local/Cellar/ruby193/1.9.3-p551/bin/ruby: bad interpreter: No such file or directory
    mi ruby es
    ruby -v
    ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
    me puedes ayudar? grcias saludos

    ResponderEliminar
  4. Hola @Anónimo,

    ¿Tienes una instalación previa de Ruby? ¿Tienes macports instalado? Si es así intenta quitar todo lo anterior para poder avanzar :) ¿Qué OS X tienes?

    ResponderEliminar
  5. Estoy teniendo problemas al instalar PostgreSQL
    cuando ejecuto el comando:

    -brew install postgresql –without-ossp-uuid.

    me retorna los siguientes errores:

    Error: No available formula with the name "–without-ossp-uuid."
    ==> Searching for similarly named formulae...
    Error: No similarly named formulae found.
    ==> Searching taps...
    Error: No formulae found in taps.

    Me podrías ayudar?

    Gracias y Saludos.

    ResponderEliminar

Entrada destacada

Vente al "Security Innovation Day 2016: Let Security Be"

El Security Innovation Day es el evento desde el que Telefónica y ElevenPaths comparten los últimos lanzamientos y novedades en innovació...

Otras historias relacionadas

Entradas populares