Implante, Listener y C2

Bueno bueno muy lindo todo pero ahora que hacemos ?

Ahora que ya comprendemos como es la arquitectura de un C2 y vamos a ver como es la estructura y las partes que componen generalmente a un C2 en este caso y para este curso nuestra creación va a tener el nombre de Malon.

Listener

El listener post nos debe permitir a los operadores enviar tareas , ejecutarlas en el implante y devolver los resultados. También le debe permitir al operador poder leer las tareas que fueron ya ejecutadas.

En este curso vamos a ver 3 tipos de listener:

  • UDP

  • HTTP- sin cifrado

  • HTTP - con cifrado

Esto significa que el listener va a publicar una tarea respondiendo según corresponda a la request POST que recibirá de un agente autenticado en el único endpoint de la comunicación. Esto lo vamos a implementar con una REST API esto nos va a facilitar muchísimo las cosas.

Implante

El implante tiene que ser capas de hacer tareas asincrónicas, para que este pueda seguir hablando con el listener para realizar las tareas que les pedimos. Los tipos de tareas que vamos a ver en este curso van a ser:

  • Screenshot

  • Ejecutar comandos

  • File Upload

  • File Download

¿En nuestro caso, nuestro implante va a estar hecho en GO, por qué?

Algunas ventajas de Go

  • Amplia variedad de bibliotecas de crypto+net que están en la stdlib.

  • ¡Corre en todos lados!

  • Cross-compiler

  • Difícil de reversear.

C2 - Web Gui - Zuthaka

Después de realizar estos pasos obviamente vamos a necesitar alguna manera de poder interactuar con todas estas partes que vamos a desarrollar y poder realizar nuestras tareas como operadores de la mejor manera y podernos comunicar e interpretar lo que nuestro listener nos está reportando. Nuestro comando y control va a ser Zuthaka donde vamos a aprender como este framework nos ayuda a integrar cualquier C2 que queramos.

Fuentes

Última actualización