¿Cuál es la mejor Plataforma de Hacking?

Durante las clases que dicto, mis alumnos siempre me hacen la misma pregunta: ¿cuál es la mejor herramienta para hackear?

Así que consideré acertado escribir un artículo al respecto.

Responder cuál es la mejor herramienta para hackear podría conllevar una respuesta muy larga y probablemente inexacta, porque primero habría que preguntarse ¿en qué fase del círculo del hacking(1) desea el lector usar la herramienta? Puesto que para cada fase hay un sinnúmero de aplicaciones, ya sean gráficas o en línea de comandos, que realizan tareas similares.

Otra pregunta que cabría hacer es ¿qué plataforma de sistema operativo se desea usar para la estación hacker? Muchos colegas prefieren Linux (y me incluyo), pero hay otros que usan Mac OS e inclusive Windows. Y una vez más, dependiendo del sistema operativo, existen distintas aplicaciones que sirven para el mismo propósito.

Es por este motivo que mi sugerencia es reformular la pregunta y en lugar de hablar de “la mejor herramienta” en singular, nos remitamos “al mejor conjunto de herramientas” de hacking.

Y es ahí en donde entran en escena las famosas plataformas de explotación.

¿QUÉ ES UNA PLATAFORMA DE EXPLOTACIÓN (HACKING FRAMEWORK)?

Usando spanglish, un framework de explotación es un conjunto de herramientas de software que se hayan agrupadas bajo una interfaz común (framework) y que permiten ejecutar tareas pertinentes a todas las fases de un hacking (reconocimiento, escaneo, enumeración, explotación…).

Es decir, que desde un solo entorno se aglutinan diversas funciones que le permitirán al consultor realizar todas las tareas relativas a un hacking ético sin necesidad de salir de dicho ambiente (esto último en teoría, en la práctica los pentesters explotamos mayoritariamente las vulnerabilidades de forma manual, ya sea usando comandos individuales, web-proxys y scripts, pero en lo personal uso frameworks de explotación para ahorrarme tiempo en la explotación de vulnerabilidades conocidas que pueden explotarse sin riesgo de causar denegación de servicio – DoS).

Estos son algunos de los hacking frameworks más populares:

Adicionalmente, Armitage y Cobalt Strike son interfaces gráficas que se “pegan” al Metasploit Framework. Y para aquellos que aman Windows, pues está PentestBox, el cual es un ambiente portable de pentesting que se integra con este sistema operativo, pero eso amerita un artículo completo, así que lo dejaré para otra ocasión.

METASPLOIT

Inicialmente Metasploit Project surgió en el 2003 como un proyecto de código abierto que tuvo como resultado la herramienta Metasploit Framework, cuyo objetivo era replicar la funcionalidad de las plataformas profesionales de pentesting que hasta entonces eran todas de índole comercial (pagadas).

El Metasploit Framework tuvo tanta acogida al interior de la comunidad de pentesters a nivel mundial, que unos años después fue adquirido por la empresa Rapid 7, la cual, honrando el espíritu sin fines de lucro del proyecto inicial, ha mantenido al mismo como de código abierto, pero ha desarrollado alrededor de él versiones adicionales: Metasploit Community y Metasploit Professional (la última es de pago).

Este framework es muy completo e incluye una variedad de módulos que asisten al auditor en su trabajo, haciéndolo más sencillo. La versión open, Metasploit Framework (a partir de aquí MSF), incluye una interfaz tipo línea de comandos llamada msfcli y otra de tipo consola denominada msfconsole. De éstas, la última es la más popular, quizás debido a que hace uso de una estructura jerárquica para clasificar los comandos que se pueden ejecutar, haciendo la búsqueda de módulos apropiados menos compleja.

Veamos cómo luce el msfconsole:

Para quienes no están habituados a la línea de comandos, el msfconsole puede parecer intimidante al inicio, pero una vez que se comprende su estructura se torna fácil usarlo. Vale decir que desde aquí se pueden ejecutar todo tipo de exploits imaginables, inclusive se pueden usar exploits propios, es decir desarrollados por el mismo consultor.

Y para quienes no gustan de las interfaces CLI, siempre se puede usar la interfaz web provista por Metasploit Community o sino Armitage:

De mi experiencia les puedo comentar que se pueden ejecutar hacks complejos y poderosos desde el MSF, sin invertir un centavo en herramientas comerciales, usando los exploits incluidos en el MSF y agregando exploits propios. Sin embargo, para hacerlo hay que invertir algo de tiempo en capacitarse sobre cómo funciona la arquitectura interna del MSF y estar dispuesto a practicar en el uso de los comandos incluidos con el msfconsole y aprender lenguajes de programación como Python.

Para aquellos que prefieren las herramientas de click -> next, tanto la interfaz web del Metasploit Community, como el aplicativo Armitage, agregan valor al MSF una vez más con costo cero. ¿Entonces por qué invertir en la licencia de la versión Professional? Para mí hay tres razones principales:

  1. Ahorro de tiempo: (créanme, totalmente necesario cuando se está haciendo varias auditorías a la par) gracias a que se pueden automatizar varias tareas y dejarlas en segundo plano (background), aunque si invertimos tiempo en escribir scripts esto también puede lograrse con el MSF.
  2. Generación de reportes: la versión pagada de Metasploit incluye la opción de generar informes profesionales, con gráficos estadísticos incluidos, en diversos formatos (HTML, PDF, XML); solo esto de por sí vale el costo de la licencia.
  3. La versión Professional de Metasploit incluye además plugins específicos para efectuar hacking de aplicaciones Web y campañas de ingeniería social.

Por todo lo anterior le doy el primer lugar a Metasploit.

CORE IMPACT PRO

Este software es desarrollado por la empresa Core Security y tiene carácter comercial, es decir, con costo. Una de las características que hacen sobresalir a Core Impact Pro sobre aplicativos similares, es su facilidad de uso a través de la inclusión de wizards (asistentes) que guían de la mano al consultor en la ejecución de las diferentes fases de un hacking particular.

Otra de las bondades que acompañan a esta herramienta es la generación de informes de auditoría personalizados que facilitan la presentación de reportes profesionales al cliente y un API bastante amigable para la importación de exploits desarrollados por terceros.

Esto, sumado a la fuerte inversión en investigación y desarrollo (R&D) para brindar una actualización frecuente de plugins (módulos), hacen de Core Impact uno de los mejores frameworks de explotación profesionales que hay en el mercado.

Sin embargo, su alto costo (por sobre los $40K), hacen que lo clasifique en segundo lugar, puesto que todo lo anterior (bueno, sin tantos wizards) es provisto por Metasploit Professional a una fracción del costo (alrededor de $29K) y gratuitamente (sin elegantes interfaces ni generación de reportes) por el MSF.

He aquí una captura de pantalla de Core Impact Pro.

¿Entonces recomendaría en algún momento Core Impact Pro sobre Metasploit Professional? Sólo si la empresa consultora cuenta con amplio presupuesto y requiere una herramienta que permita un menor tiempo de entrenamiento por parte de los auditores.

IMMUNITY CANVAS

La única razón por la que le doy el tercer lugar a Immunity Canvas es debido a que la generación de reportes es un poco básica y a que su interfaz gráfica es poco amigable, pero desde el punto de vista técnico los plugins que incluye son de los mejores.

Hay que reconocer que Immunity invierte mucho en la detección de nuevas vulnerabilidades y en la programación de los exploits respectivos. Ha habido ocasiones en que a través del Canvas he logrado explotar vulnerabilidades que no fueron posibles por medio de otras herramientas o de forma manual.

Por ello, dado que el costo de la licencia no es tan alto en comparación con sus competidores (alrededor de $11K con actualizaciones por 3 años) vale la pena tenerlo como parte de nuestro portafolio de herramientas de hacking si nos dedicamos a realizar hacking ético de forma profesional.

En el siguiente gráfico vemos a Immunity Canvas en acción:

Por supuesto, existen muchos más frameworks profesionales de hacking que los aquí mencionados. ¿Conoces de alguno interesante que te gustaría que revise? Déjamelo en los comentarios.

Espero que te gustara el artículo, si es así por favor compártelo con tus amigos en tus redes sociales. Gracias de antemano.