Un Recorrido por El Marco y Componentes de Metasploit

Metasploit puede manejar todo, desde el escaneo hasta la explotación. En este artículo, observaremos qué provoca que Metasploit sea el grupo de herramientas de prueba de penetración más versátil.

Introducción a las pruebas de penetración

Si es nuevo en las pruebas de penetración, permítame explicarle de qué se trata antes de presentarle un instrumento de explotación.

La prueba de penetración es hackear con permiso. Es posible que haya observado hackers geniales en la televisión atacando sistemas informáticos sin ser atrapados. Pero no es así como funciona en el mundo real.

Entonces, si piratear es malo, ¿por qué aprenderlo en primer lugar? Todos los dispositivos en Internet son vulnerables de manera predeterminada a menos que alguien los asegure.

El trabajo del probador de penetración es pensar como un hacker y atacar los sistemas de su empresa. Después, el probador de penetración informa a la misma sobre sus vulnerabilidades y aconseja referente a cómo repararlas.

Las pruebas de penetración son uno de los trabajos mejor pagados de la industria. Siempre hay escasez de pen-testers, debido a que la cantidad de dispositivos en Internet crece exponencialmente.

Metasploit: el marco completo

Metasploit es un marco de prueba de penetración que lo ayuda a hallar y explotar vulnerabilidades en los sistemas. Le ofrece todo lo que necesita, desde escáneres hasta integraciones de terceros que requerirá a lo largo de todo el ciclo de vida de las pruebas de penetración.

Esto incluye reconocimiento, escaneo, explotación, escalada de privilegios y mantenimiento del acceso.

Metasploit es un framework de código abierto escrito en Ruby. Está escrito para ser un marco extensible, de manera que si quiere generar funcionalidades personalizadas con Ruby, puede hacerlo de forma fácil por medio de complementos.

Rapid7, la empresa detrás de Metasploit, da una versión premium de Metasploit con funciones avanzadas.

Metasploit además se actualiza a menudo con nuevos exploits publicados en Common Vulnerabilities and Exposures (CVE). Entonces, si está y publica una totalmente nueva vulnerabilidad, puede empezar a escanear sus sistemas rápido.

Metasploit viene con herramientas anti-forense y de evasión integradas. Además viene preinstalado en el sistema operativo Kali.

Elementos

Ahora que sabe qué es Metasploit, veamos los conceptos básicos de Metasploit.

Metasploit le da ciertos elementos clave para descubrir y explotar vulnerabilidades en una red. Esto incluye exploits, payloads, auxiliares, etcétera. Veamos todos ellos en detalle.

Hazañas

Un exploit es un pedazo de código que se aprovecha de una vulnerabilidad en un sistema. Dichos exploits hacen ocupaciones concretas en función de la gravedad de la vulnerabilidad.

Los exploits tienen la posibilidad de aprovechar vulnerabilidades de programa, vulnerabilidades de hardware, vulnerabilidades de día cero, etcétera. Varias de las vulnerabilidades usuales integran desbordamientos de búfer, inyecciones de SQL, etcétera.

Metasploit da una secuencia de exploits que puede usarse en referencia de las vulnerabilidades existentes en el sistema de destino. Dichos exploits tienen la posibilidad de clasificarse en dos tipos:

  • Exploits activos: los exploits activos se ejecutarán en un sistema de destino, explotarán el sistema, le darán acceso o realizarán una labor específica y después saldrán;
  • Exploits pasivos: los exploits pasivos esperarán hasta que el sistema de destino se conecte al exploit. Los hackers acostumbran usar este enfoque en Internet para pedirle que descargue archivos o programa. Cuando lo hace, se conecta a un exploit pasivo que se hace en la PC del hacker.

Cargas útiles

Una carga útil es un pedazo de código que se hace por medio del exploit. Usa exploits para ingresar a un sistema y cargas útiles para hacer actividades concretas.

Por ejemplo, puede utilizar un keylogger como carga útil junto con un exploit. Cuando el exploit tiene éxito, instala el keylogger en el sistema del objetivo.

Metasploit da una buena colección de payloads como shells inversos, shells de enlace, Meterpreter, etcétera.

Hay varias cargas útiles que funcionarán con la mayor parte de los exploits, pero es necesario algo de búsqueda para hallar la carga útil correcta que funcione con el exploit.

Cuando escoja un exploit, puede enumerar las cargas útiles que funcionarán con aquel exploit usando el comando ‘mostrar cargas útiles’ en Metasploit.

Hay ciertos tipos de cargas útiles en Metasploit. Los que terminarás utilizando más son estos tres tipos:

Simples: cargas útiles que funcionan por sí solas, por ejemplo, registradores de pulsaciones de teclas;
Stagers: cargas útiles que funcionan con otras, por ejemplo, dos cargas útiles: una para entablar una conexión con el objetivo y la otra para dar una instrucción;
Meterpreter: carga útil avanzada que habita en la memoria del objetivo, es complicada de rastrear y puede cargar/descargar accesorios a voluntad.

Tropas auxiliares

Los auxiliares son módulos que lo ayudan a cumplir funciones personalizadas además de explotar un sistema. Esto incluye escáneres de puertos, fuzzers, sniffers y más.

Por ejemplo, puede utilizar el auxiliar CERT para revisar si hay certificados SSL caducados en una red. En otros términos útil para que las administraciones de sistemas automaticen la administración de certificados.

Si está familiarizado con Ruby, puede redactar sus propios auxiliares. Si quiere escanear una red en busca de vulnerabilidades concretas cada semana, puede redactar su propio módulo auxiliar personalizado para hacerlo.

En Comunidad Reparando encontrarás el curso de Metasploit indicado para que aprendas sobre el programa. Considere inscribirse para obtener información en profundidad acerca de cómo funciona el mismo.