miércoles, agosto 09, 2017

Open Source: Mercure para hacer campañas de phishing en tu empresa

Sabemos que la concienciación en una empresa es vital, ya que todos formamos parte de la seguridad de la misma. Mercure es una de esas herramientas que permiten, de manera muy sencilla, llevar a cabo una gestión de campañas de phishing. El objetivo puede ser claro, verificar la concienciación de los empleados. Además, este tipo de herramientas se utilizan en procesos de Ethical Hacking para comprobar el nivel de concienciación de los empleados de la empresa que se está auditando.

Figura 1: Open Source: Mercure para hacer campañas de phishing en tu empresa

¿Qué ofrece Mercure? La verdad que el simple hecho de automatizar y customizar este proceso es mucho. La herramienta se puede obtener desde su Github en la URL: https://github.com/synhack/mercure. Mercure ofrece la posibilidad de:
• Crear plantillas o templates para los correos electrónicos que se enviarán. 
• Crear listados de objetivos con sus direcciones de correo electrónico y sus nombres. 
• Crear las landing pages, es decir, los sitios web que se copiarán de los originales o se personalizarán. 
• Gestionar los ficheros adjuntos que se quieren enviar. Por ejemplo, si se quiere adjuntar un PDF que explote alguna vulnerabilidad y se quiera comprobar. 
• Hacer un seguimiento de qué usuarios han pinchado en el enlace que se les envía. Esto es interesante para saber qué usuarios han hecho clic. Además, se puede recolectar credenciales, en caso de que el usuario haya introducido credenciales. Aquí se ven diferentes niveles de riesgo. 
• Además, se puede hacer tracking de cuándo se abre el correo, cuando se visita la página y cuando se ejecuta el fichero adjunto.
Para llevar a cabo la instalación de Mercure, se puede descargar desde su Github. Tal y como se ve en la imagen, el proceso es fácil y sencillo.

Figura 2: Instalación de Mercure vía pip

Es importante indicar que los requisitos para instalar la herramienta es tener Python version 3 y pip. Después de descargar con git clone la herramienta y asegurarse de tener Python3 y pip en la máquina y ejecutándose hay que ejecutar una serie de instrucciones que irán creando el entorno de la herramienta.

En primer lugar, hay que ejecutar manage.py makemigrations. Esto crea un modelo para el correcto uso de la herramienta. La segunda instrucción a ejecutar es manage.py migrate. La tercera instrucción es manage.py collectstatic que crea el contenedor dónde se almacenará información que se obtenga.

Figura 3: Creación de modelo para uso de la herramienta

La cuarta instrucción es manage.py createsuperuser. Esta instrucción nos permite crear el usuario que controlará la herramienta, por lo que es un paso importante.

Figura 4: Creación del usuario administrador de Mercure

La quinta, y última, instrucción nos llevará a levantar el servidor con la instrucción manage.py runserver. Como se puede ver, es importante utilizar Python3, si no nos funcionará correctamente.

Figura 5: Ejecución del servidor en Mercure

Al arrancar el servidor nos encontraremos con el panel de login, dónde se nos pedirán las credenciales del usuario que hubiéramos creado en el paso 4. Las opciones que tenemos disponibles en la aplicación son:
• Creación de campañas. 
• Creación de plantillas de email. 
• Gestión de ficheros adjuntos. 
• Creación de landing page. 
• Configuración y creación de grupos de targets.
Los pasos lógicos son comenzar por la creación de una plantilla de correo electrónico. En esa pantalla nos pedirán en nombre de quién enviamos un correo electrónico, funciona bien el tema de RRHH, en nombre de qué empresa enviamos el correo e, incluso, podemos configurar el HTML del correo electrónico con un editor que viene en la herramienta.

Figura 6: Servicio de Mercure para hacer campañas de "phishing" para concienciar

Después, podemos elegir si el correo llevará adjunto o no. Es un paso importante. La creación, importación o copia del landing page también es importante. En este paso se creará la página web falsa que hará que el usuario caiga en la trampa.

Figura 7: Creación de los objetivos con Mercure

Antes de lanzar la campaña, hay que crear el grupo de empleados objetivo. Como se puede ver en la imagen, se indica e-mail, nombre y apellidos. Se crea un grupo que podrá ser seleccionado en la ventana de campaña.

Figura 8: Comienzo de la campaña de phishing

Antes de lanzar la campaña hay que seleccionar una serie de parámetros. Los importantes son la plantilla que se utilizará en el envío de correo electrónico, el grupo de empleados a los que llegará el correo electrónico y habrá que configurar el servidor de correo electrónico que se utilizará. Este último paso es fundamental.

Una vez la campaña es lanzada, se podrá acceder a un Dashboard en el que se pueden ver los progresos de la campaña. Qué usuarios han abierto el correo, quién ha hecho clic en el enlace, quién ejecutó el fichero, etcétera.

Figura 9: Estadísticas en Mercure sobre el éxito de la campaña

Sin duda, Mercure es una herramienta para tener en la mochila del pentester de cara a pruebas de concienciación y de simulación de APT que puedan ser llevados a cabo en los procesos de Ethical Hacking.

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en ElevenPaths

2 comentarios:

  1. Hola, tengo este error, alguna idea por favor?

    python3 manage.py runserver
    Traceback (most recent call last):
    File "manage.py", line 8, in
    from django.core.management import execute_from_command_line
    ImportError: No module named 'django'

    Saludos

    ResponderEliminar
    Respuestas
    1. No lo he probado todavía pero tienes que instalar las dependencias del paquete. Entre ellas el paquete django. Ese es tu error.

      # pip3 install django

      Lo mismo para cualquier otro paquete de Python ;) (y ya si te lo instalas en un entorno virtual sería la leche, pero ahí te dejo investigar)

      Eliminar