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.
Clonar el repositorio:
Bashgit clone https://github.com/muraenateam/muraena.git cd muraena
Construir el binario:
Muraena suele incluir un Makefile para facilitar la construcción.
Bashmake 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 (generalmente127.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í:
{
"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:
Ejecutar Muraena:
Bashsudo ./muraena
Es común ejecutarlo con
sudo
para que pueda escuchar en puertos privilegiados como el 443.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.
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.
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.