Hacking y como automatizar actividades de phishing con Muraena

 

www.onlinetis.com

La herramienta Muraena es un proxy inverso casi transparente diseñado para automatizar actividades de phishing y post-phishing. En esencia, actúa como un intermediario entre un atacante y la víctima, permitiendo al atacante capturar credenciales y otra información sensible de manera dinámica, sin tener que crear y mantener páginas estáticas de phishing.


¿Cómo funciona Muraena?

Muraena opera re-implementando el antiguo concepto de utilizar un proxy inverso para interactuar con el sitio web de origen que se quiere atacar. En lugar de crear una página falsa que se parece al sitio real, Muraena se conecta directamente al sitio web de la víctima y le sirve su contenido, mientras captura las interacciones de la víctima en tiempo real. Esto permite:

  • Captura de credenciales: Roba nombres de usuario, contraseñas y otros datos de inicio de sesión.

  • Gestión de sesiones: Puede capturar cookies y tokens de sesión para mantener el acceso incluso después de que la víctima se haya autenticado.

  • Adaptabilidad: Al actuar como proxy, se adapta a los cambios en el sitio web de origen, como la implementación de la autenticación de dos factores (2FA), lo que hace que sea más difícil de detectar.


Dado que Muraena es una herramienta avanzada para actividades de ciberseguridad, su instalación, configuración y uso requieren conocimientos técnicos específicos y, en algunos casos, un entorno controlado. A continuación, se detallan los pasos generales, pero ten en cuenta que la información puede variar dependiendo de la versión y las dependencias.

Advertencia: Muraena es una herramienta de seguridad informática. Su uso está destinado a profesionales de la ciberseguridad y pentesting ético. Utilizarla con fines maliciosos es ilegal y está penado. Este tipo de información se proporciona con fines educativos y de concientización sobre la seguridad.

1. Requisitos Previos

Antes de instalar Muraena, necesitas asegurarte de tener las siguientes dependencias:

  • Redis: Muraena utiliza Redis para la persistencia de datos y el manejo de sesiones. Deberás instalar y configurar un servidor Redis.

    • Instalación: En sistemas basados en Ubuntu, puedes usar sudo apt install redis-server.

    • Configuración: Asegúrate de que Redis se ejecute como un servicio y esté accesible.

  • Certificados TLS/SSL: Como Muraena actúa como un proxy inverso HTTPS, necesitas un certificado TLS/SSL para tu dominio de phishing. Para pruebas locales, puedes usar herramientas como mkcert para generar certificados autofirmados. Para un entorno real, necesitarías un certificado de una autoridad de certificación (CA) válida.

  • Go (Golang): Muraena está escrito en Go, por lo que necesitarás tener el compilador de Go instalado para construir la herramienta desde el código fuente.

2. Instalación

Generalmente, la instalación de Muraena se realiza construyendo el binario desde el código fuente disponible en repositorios como GitHub o GitLab.

  1. Clonar el repositorio:

    Bash
    git clone https://github.com/muraenateam/muraena.git
    cd muraena
    
  2. Construir el binario:

    Muraena suele incluir un Makefile para facilitar la construcción.

    Bash
    make build
    

    Esto compilará el código fuente y creará un archivo ejecutable de Muraena.

3. Configuración

La configuración de Muraena se maneja a través de un archivo de configuración, generalmente en formato JSON, ubicado en el directorio config/. Los principales parámetros que debes configurar son:

  • [tls] (Transport Layer Security):

    • enabled: true (para usar HTTPS).

    • certificate: La ruta al archivo del certificado .pem que generaste.

    • key: La ruta al archivo de la clave privada del certificado.

  • [destination] (Destino):

    • host: El host del sitio web que quieres suplantar (ej. www.google.com).

    • port: El puerto del sitio de destino (ej. 443 para HTTPS).

  • [redis] (Redis):

    • address: La dirección de tu servidor Redis (generalmente 127.0.0.1:6379).

  • [http] (HTTP):

    • domain: El dominio que utilizarás para tu ataque de phishing (ej. phishing-domain.com).

    • listen_address: La dirección en la que Muraena escuchará las conexiones.

Un ejemplo de archivo de configuración config/config.json podría verse así:

JSON
{
  "name": "phishing-example",
  "destination": {
    "host": "www.ejemplo.com",
    "port": 443
  },
  "tls": {
    "enabled": true,
    "certificate": "./config/cert.pem",
    "key": "./config/privkey.pem"
  },
  "http": {
    "listen_address": "0.0.0.0:443",
    "domain": "phishing-ejemplo.com"
  },
  "redis": {
    "address": "127.0.0.1:6379"
  }
}

4. Uso de Muraena

Una vez instalado y configurado, el uso de Muraena es relativamente sencillo:

  1. Ejecutar Muraena:

    Bash
    sudo ./muraena
    

    Es común ejecutarlo con sudo para que pueda escuchar en puertos privilegiados como el 443.

  2. Configurar el DNS:

    Para que Muraena funcione, debes apuntar el DNS de tu dominio de phishing (phishing-ejemplo.com) a la dirección IP de la máquina donde se está ejecutando Muraena. Puedes hacerlo a través de la configuración de tu proveedor de dominio. Para pruebas locales, puedes modificar el archivo /etc/hosts en tu sistema.

  3. Lanzar el ataque de phishing:

    Con Muraena en ejecución y el DNS configurado, el siguiente paso es enviar un enlace a la víctima. El enlace debe usar tu dominio de phishing, por ejemplo, https://phishing-ejemplo.com. Cuando la víctima haga clic en el enlace, Muraena interceptará la solicitud, la reenviará al sitio original (www.ejemplo.com), capturará el contenido y lo mostrará a la víctima. Cualquier interacción (como el ingreso de credenciales) será capturada por Muraena y almacenada en Redis.

  4. Recuperar las credenciales:

    Puedes acceder a la información capturada consultando la base de datos de Redis, donde Muraena almacena los datos de la sesión, las credenciales, las cookies y los tokens de sesión.


Nota Importante: La naturaleza de Muraena como proxy dinámico le permite sortear muchas de las defensas modernas de los sitios web, incluida la autenticación de dos factores (2FA), ya que la víctima se autentica directamente en el sitio real a través del proxy. Esto subraya la importancia de la educación en seguridad y la conciencia del usuario para detectar enlaces sospechosos.

Entradas populares de este blog

Ciberseguridad y hacking con Whatweb

Como robar contraseñas haciendo un phishing web

Arsenal software hacking NFC