Page cover image

🎣Gophish

GoPhish es una plataforma de código abierto diseñada para ejecutar campañas de phishing ético y entrenar a los usuarios contra ataques de ingeniería social. Es ampliamente utilizada en ciberseguridad para simular ataques reales y educar a los empleados o usuarios finales sobre cómo reconocer intentos de phishing.

Repositorio de Github

Web oficial

Instalación

git clone https://github.com/gophish/gophish.git
cd gophish
go build

Configuración

Debemos editar el archivo config.json en phish_server y poner nuestra url local 192.168.x.x:

"phish_server": {
     "listen_url": "192.168.1.181:80",
     "use_tls": false,
     "cert_path": "example.crt",
     "key_path": "example.key"
},

Una vez configurado ejecutamos el binario con:

./gophish

Ahora abrimos en un navegador la URL que nos da al final:

time="2025-02-17T20:23:34Z" level=info msg="Starting IMAP monitor manager"
time="2025-02-17T20:23:34Z" level=info msg="Starting phishing server at http://192.168.1.181:80"
time="2025-02-17T20:23:34Z" level=info msg="Starting new IMAP monitor for user admin"
time="2025-02-17T20:23:34Z" level=info msg="TLS Certificate Generation complete"
time="2025-02-17T20:23:34Z" level=info msg="Starting admin server at https://127.0.0.1:3333"
https://127.0.0.1:3333

En la primera ejecución también nos muestra las credenciales por defecto para el usuario admin en la siguiente línea:

time="2025-02-17T20:23:34Z" level=info msg="Please login with the username admin and the password 51555af8a3484baa"

1. Crear cuenta de email SMTP

Vamos a crearnos una cuenta en TurboSMTP para hacer la campaña de prueba. También podríamos usar cualquier servidor de emails que admita SMTP, como Hostinguer por ejemplo.

Podemos ver los datos de conexión en Conectando vía SMTP:

Esos datos los tendremos que vincular en Gophish. En Sending Profiles > New Sending Profile

Probamos a enviar un correo de prueba y vemos que se envía correctamente. Le damos a Save Profile

2. Crear Landing Page

Vamos a crear una landing page para capturar credenciales. En el contexto de phising en una organización podría ser una buena idea generar una landing de un panel de login de una aplicación que use la empresa (Microsoft, Oracle, Figma...)

  1. Le damos a import site y escribimos la URL, en nuestro caso usaremos facebook.com

  2. Activamos los checks de captura de credenciales

  3. Añadimos la página a la que redirigirá al usuario una vez introduzca los datos

  1. Le damos a Save Page y se guarda correctamente

3. Crear plantilla de email

Ahora debemos crear una plantilla de email. Lo que mejor suele funcionar es un email de intento de login en una aplicación, que tenga un CTA de "No he sido yo" o cambiar contraseña, que nosotros como atacantes podemos modificar. Sería un mail parecido a este:

Podríamos usar también herramientas cómo Cyber Phish que nos generan plantillas de email en html para phising. Para importarlo en Gophish necesitamos el html del email. En Gmail por ejemplo se puede conseguir haciendo clic en los 3 puntitos del mail > Mostrar original

Luego le damos a Copiar en el portapapeles:

Ahora en Gophish vamos a Email Templates > New Template > Import Email y pegamos el código fuente del mail anterior. Debemos corregir cualquier error que pueda tener el email para dejarlo prácticamente igual al original.

4. Crear usuarios y grupos

Ahora vamos a añadir los usuarios que queramos que les lleguen los mails. Podemos añadirlos uno por uno manualmente o importar un CSV. Para recoger multitud de emails y nombres de empleados de una empresa podríamos usar técnicas de OSINT como Crosslinked por ejemplo.

python3 crosslinked.py -f '{first}.{last}@microsoft.com' microsoft

5. Crear campaña

Ahora vamos a juntar todos los datos que hemos creado para generar una campaña:

Le damos a Launch Campaign y ya solo nos quedaría esperar a que los usuarios caigan en el phising para recibir credenciales:

Última actualización

¿Te fue útil?