¿Qué es Metasploit? La guía para principiantes

Las pruebas de penetración permiten responder a la pregunta: «¿Cómo puede alguien con intenciones maliciosas meterse en mi red?» Utilizando herramientas de pen-testing, los sombreros blancos y los profesionales de DevSec son capaces de sondear las redes y las aplicaciones en busca de fallos y vulnerabilidades en cualquier punto a lo largo del proceso de producción y despliegue, hackeando el sistema.

Una de estas ayudas para las pruebas de penetración es el Proyecto Metasploit. Este marco de trabajo de código abierto basado en Ruby permite realizar pruebas a través de alteraciones de la línea de comandos o de la interfaz gráfica de usuario. También se puede ampliar a través de la codificación para actuar como un complemento que soporta múltiples idiomas.

¿Qué es el framework Metasploit y cómo se utiliza?

El framework Metasploit es una herramienta muy poderosa que puede ser utilizada tanto por ciberdelincuentes como por hackers éticos para sondear vulnerabilidades sistemáticas en redes y servidores. Debido a que es un marco de trabajo de código abierto, puede ser fácilmente personalizado y utilizado con la mayoría de los sistemas operativos.

Con Metasploit, el equipo de pen testing puede utilizar código ya hecho o personalizado e introducirlo en una red para sondear los puntos débiles. Como otro sabor de la caza de amenazas, una vez que las fallas son identificadas y documentadas, la información puede ser utilizada para abordar las debilidades sistémicas y priorizar las soluciones.

Una breve historia de Metasploit

El proyecto Metasploit fue emprendido en 2003 por H.D. Moore para su uso como una herramienta de red portátil basada en Perl, con la ayuda del desarrollador principal Matt Miller. Se convirtió completamente a Ruby en 2007, y la licencia fue adquirida por Rapid7 en 2009, donde permanece como parte del repertorio de la compañía con sede en Boston para el desarrollo de firmas IDS y herramientas de explotación remota, fuzzing, antiforense y de evasión.

Partes de estas otras herramientas residen en el marco de Metasploit, que está integrado en el sistema operativo Kali Linux. Rapid7 también ha desarrollado dos herramientas propias de OpenCore, Metasploit Pro y Metasploit Express.

Este marco se ha convertido en la herramienta de desarrollo y mitigación de exploits. Antes de Metasploit, los pen testers tenían que realizar todas las pruebas manualmente utilizando una variedad de herramientas que podían o no soportar la plataforma que estaban probando, escribiendo su propio código a mano, e introduciéndolo en las redes manualmente. Las pruebas remotas eran prácticamente desconocidas, y eso limitaba el alcance de un especialista en seguridad al área local y a las empresas que gastaban una fortuna en consultores internos de TI o de seguridad.

¿Quién utiliza Metasploit?

Debido a su amplia gama de aplicaciones y disponibilidad de código abierto, Metasploit es utilizado por todos, desde el campo en evolución de los profesionales de DevSecOps hasta los hackers. Es útil para cualquiera que necesite una herramienta fácil de instalar y fiable que haga el trabajo independientemente de la plataforma o el lenguaje que se utilice. El software es popular entre los hackers y está ampliamente disponible, lo que refuerza la necesidad de que los profesionales de la seguridad se familiaricen con el marco incluso si no lo utilizan.

Metasploit ahora incluye más de 1677 exploits organizados en más de 25 plataformas, incluyendo Android, PHP, Python, Java, Cisco, y más. El marco también lleva casi 500 cargas útiles, algunas de las cuales incluyen:

  • Cargas útiles de shell de comandos que permiten a los usuarios ejecutar scripts o comandos aleatorios contra un host
  • Cargas útiles dinámicas que permiten a los probadores generar cargas útiles únicas para evadir el software antivirus
  • Cargas útiles de medidores que permiten a los usuarios comandar los monitores de los dispositivos utilizando VMC y tomar sesiones o cargar y descargar archivos
  • .
  • Cargas útiles estáticas que permiten el reenvío de puertos y las comunicaciones entre redes

Usos y beneficios de Metasploit

visual que muestra los módulos que metasploit te proporciona

Todo lo que necesitas para usar Metasploit una vez instalado es obtener información sobre el objetivo ya sea a través del escaneo de puertos, OS fingerprinting o utilizando un escáner de vulnerabilidad para encontrar una manera de entrar en la red. Luego, es una simple cuestión de seleccionar un exploit y su carga útil. En este contexto, un exploit es un medio para identificar una debilidad en su elección de redes o sistemas cada vez más difíciles de defender y aprovechar esa falla para ganar la entrada.

El marco se construye de varios modelos e interfaces, que incluyen msfconsole cursos interactivos, msfcli a alls funciones msf de la terminal / cmd, la herramienta gráfica de Java Armitag que se utiliza para integrar con MSF, y la interfaz web de la Comunidad Metasploit que soporta las pruebas de pluma remota.

Los probadores de sombrero blanco que tratan de localizar o aprender de los sombreros negros y los hackers deben ser conscientes de que no suelen lanzar un anuncio de que están Metasploiting. A este grupo secreto le gusta operar a través de túneles de red privada virtual para enmascarar su dirección IP, y muchos utilizan un VPS dedicado también para evitar las interrupciones que comúnmente plagan muchos proveedores de alojamiento compartido. Estas dos herramientas de privacidad también son una buena idea para los sombreros blancos que tienen la intención de entrar en el mundo de los exploits y las pruebas de pluma con Metasploit.

Como se mencionó anteriormente, Metasploit le proporciona exploits, cargas útiles, funciones auxiliares, codificadores, oyentes, shellcode, código de post-explotación y nops.

Puede obtener una certificación de especialista Metasploit Pro en línea para convertirse en un pen-tester con credenciales. La puntuación de aprobación para obtener la certificación es del 80 por ciento, y el examen a libro abierto dura unas dos horas. Cuesta 195 dólares, y puedes imprimir tu certificado una vez aprobado.

Antes del examen, se recomienda realizar el curso de formación de Metasploit y tener competencia o conocimientos prácticos:

  • Sistema operativo Windows y Linux
  • Protocolos de red
  • Sistemas de gestión de vulnerabilidades
  • Conceptos básicos de pen testing
  • Obtener esta credencial es un logro deseable para cualquiera que quiera convertirse en un pen-tester o analista de seguridad comercializable.

    Cómo conseguir Metasploit

    Metasploit está disponible a través de instaladores de código abierto directamente desde el sitio web de Rapid7. Además de la última versión de los navegadores Chrome, Firefox o Explorer, los requisitos mínimos del sistema son:

    Sistemas operativos:

    • Ubuntu Linux 14.04 o 16.04 LTS (recomendado)
    • Windows Server 2008 o 2012 R2
    • Windows 7 SP1+, 8.1, o 10
    • Red Hat Enterprise Linux Server 5.10, 6.5, 7.1, o posterior
    • Hardware:

      • Procesador de 2 GHz+
      • Mínimo 4 GB de RAM, pero se recomiendan 8 GB
      • Mínimo 1 GB de espacio en disco, pero se recomiendan 50 GB
      • Tendrás que desactivar cualquier software antivirus y cortafuegos instalado en tu dispositivo antes de empezar, y obtener privilegios administrativos. El instalador es una unidad autónoma que se configura por ti cuando instalas el framework. También tienes la opción de la instalación manual si quieres configurar dependencias personalizadas. Los usuarios con la versión de Kali Linux ya tienen la versión de Metasploit Pro pre-empaquetada con su sistema operativo. Los usuarios de Windows pasarán por el asistente de instalación del escudo.

        Después de la instalación, al iniciar, te encontrarás con estas opciones:

        • Crear base de datos en /Users/joesmith/.msf4/db
        • Iniciar Postgresql
        • Crear usuarios de base de datos
        • Crear un esquema de base de datos inicial

        Aprendiendo a usar Metasploit: Tutorial + Consejos

        La facilidad para aprender a usar Metasploit depende de tus conocimientos de Ruby. Sin embargo, si estás familiarizado con otros lenguajes de scripting y programación como Python, dar el salto a trabajar con Metasploit no debería ser muy difícil de ponerte al día. Por lo demás, es un lenguaje intuitivo y fácil de aprender con la práctica.

        Debido a que esta herramienta requiere desactivar sus propias protecciones sistemáticas y permite la generación de código malicioso, debes ser consciente de los riesgos potenciales que conlleva. Si es posible, mantenga esta utilidad instalada en un sistema distinto de su dispositivo personal o de cualquier ordenador que contenga información potencialmente sensible o que tenga acceso a dicha información. Debes utilizar un dispositivo de trabajo dedicado cuando hagas pen-testing con Metasploit.

        Razones para aprender Metasploit

        Este paquete de framework es imprescindible para cualquier persona que sea analista de seguridad o pen-tester. Es una herramienta esencial para descubrir vulnerabilidades ocultas utilizando una variedad de herramientas y utilidades. Metasploit permite entrar en la mente de un hacker y utilizar los mismos métodos para sondear e infiltrarse en redes y servidores.

        Aquí tienes un diagrama de la arquitectura típica de Metasploit:

        diagrama de la arquitectura típica de metasploit

        Metasploit paso a paso

        Empezaremos un breve tutorial de un exploit sencillo asumiendo que tienes los requisitos básicos del sistema y del SO. Para configurar un entorno de pruebas, vas a necesitar descargar e instalar Virtualbox, Kali y Metasploitable para crear una máquina de hacking virtualizada. Puedes descargar e instalar Windows XP o superior con el fin de crear una tercera máquina virtual para este exploit.

        Una vez que tengas tus herramientas de prueba instaladas, querrás abrir tu consola de Metasploit. Se verá así:

        consola de Metasploit con las herramientas de prueba instaladas

        Un atajo es escribir «help» en la consola, lo que hará aparecer una lista de comandos de Metasploit y sus descripciones. Debería verse así:

        visual del comando metasploit help

        Una herramienta potente y útil, para empezar, es la GUI Armitage, que permite visualizar los objetivos y recomendar los mejores exploits para acceder a ellos. Esta herramienta también muestra funciones avanzadas de post-explotación para una penetración más profunda y pruebas posteriores. Para seleccionarla desde la consola, ve a Aplicaciones – Herramientas de Explotación – Armitage.

        Una vez que tengas el campo del formulario en tu pantalla, introduce el host, el número de puerto, el ID de usuario y la contraseña. Escribe ‘enter’ después de que todos los campos se hayan completado y estarás listo para iniciar tu exploit.

        Recursos para aprender Metasploit

        Una gran cosa acerca de la comunidad de código abierto es el compromiso de compartir recursos e información. Es la encarnación moderna de por qué se creó Internet en primer lugar. Permite la colaboración sin fronteras y promueve la flexibilidad.

        Con ese fin, ofrecemos una lista de recursos que le permitirán realizar todo el alcance de la promesa de Matspoit.

        Uno de los mejores recursos, y el primer lugar que debe visitar, es la propia y extensa base de conocimientos de Metasploit. Allí encontrarás guías de inicio rápido, metamódulos, exploits e identificación y corrección de vulnerabilidades. También puedes aprender sobre los diferentes tipos de credenciales y cómo obtenerlas.

        Otro recurso útil es el Varonis Cyber Workshop. Ofrece una serie de tutoriales y sesiones con expertos de la industria de la seguridad.

        Las pruebas de penetración son esenciales para erradicar las vulnerabilidades y prevenir las redes de exploits y hacks. Al trabajar con una empresa de ciberseguridad orientada a los datos y a los resultados como Varonis y al emplear un marco de trabajo como Metasploit, tendrá una ventaja a la hora de proteger sus redes.