Icono del sitio Jaymon security

Simulación de phishing con Gophish: campañas realistas paso a paso

1. Introducción

La simulación de phishing con Gophish es una de las herramientas más efectivas para convertir el eslabón humano de una organización en una capa de defensa medible, y Gophish es, sin discusión, la plataforma de código abierto más utilizada para ello. Cada campaña lanzada con Gophish nos devuelve datos objetivos y cuantificables: cuántos empleados abrieron el correo, cuántos hicieron clic en el enlace y cuántos llegaron a introducir sus credenciales en la página de captura. Gracias a esos datos, el programa de concienciación deja de ser una charla anual para convertirse en un proceso continuo de mejora. En este artículo realizamos un laboratorio completo de simulación de phishing con Gophish, paso a paso: instalamos la plataforma, configuramos los perfiles de envío SMTP, diseñamos plantillas y landing pages realistas, lanzamos una campaña contra un grupo de usuarios ficticios y analizamos las métricas resultantes. La simulación de phishing con Gophish nos permite ensayar escenarios de robo de credenciales con control ético y legal, sobre un entorno autorizado, y en esta guía cubrimos exactamente cómo hacerlo del modo correcto. La simulación de phishing con Gophish, bien ejecutada, se convierte en el termómetro del factor humano.

2. Por qué la simulación de phishing con Gophish es esencial en tu programa de seguridad

El 91% de los incidentes de brecha documentados comienzan con un correo de phishing, según los informes anuales del sector. La simulación de phishing con Gophish combate este vector de forma directa: cada empleado que cae en una simulación recibe retroalimentación inmediata y personalizada, y el equipo de seguridad obtiene métricas comparables entre departamentos, trimestres y escenarios. Frente a otras soluciones comerciales que facturan por usuario y por campaña, Gophish ofrece la funcionalidad esencial sin coste: perfiles de envío, plantillas HTML con variables personalizadas, páginas de captura de credenciales, integración con API REST y un panel de resultados en tiempo real. La filosofía de la herramienta es simple y correcta: no se trata de pillarnos, sino de entrenar. Por eso cada campaña termina con una pantalla educativa en la landing page, informando del ejercicio y dando pautas para reconocer un correo malicioso real. Con este enfoque, la simulación de phishing con Gophish reduce de forma demostrable la tasa de clics en correos reales sospechosos y aporta evidencia objetiva antes de las auditorías regulatorias; ninguna estrategia de defensa seria debería omitir la simulación de phishing con Gophish.

3. Instalación de Gophish y configuración inicial

La instalación de la simulación de phishing con Gophish comienza en un servidor Ubuntu 22.04. Descargamos la última versión desde el repositorio oficial, la descomprimimos y arrancamos el binario:

$ curl -sS -L -o gophish.zip \
    https://github.com/gophish/gophish/releases/download/v0.12.1/gophish-v0.12.1-linux-64bit.zip
$ unzip gophish.zip -d gophish/
$ cd gophish/ && chmod +x gophish
$ sudo ./gophish

Fig. 1 – Arranque del servidor de Gophish con los puertos 3333 (admin) y 80 (servidor de landing pages) en el laboratorio (laboratorio propio).

El servidor administrativo escucha en el 3333 y el de campañas en el 80; accedemos con admin y la contraseña que imprime la consola al primer arranque. En producción modificamos el fichero config.json para fijar la URL base pública, cambiar el certificado TLS y restringir la interfaz administrativa a la red de gestión:

{
  "admin_server": {
    "listen_url": "0.0.0.0:3333",
    "use_tls": true,
    "cert_path": "/etc/gophish/admin.crt",
    "key_path": "/etc/gophish/admin.key"
  },
  "phish_server": {
    "listen_url": "0.0.0.0:80",
    "use_tls": true,
    "cert_path": "/etc/gophish/phish.crt",
    "key_path": "/etc/gophish/phish.key"
  }
}

Una buena práctica es poner el panel de administración detrás de autenticación adicional o de una VPN, y ejecutar Gophish con un usuario de sistema sin privilegios elevados. Para sobrevivir a reinicios y gestionar logs con systemd, creamos esta unidad y la habilitamos:

[Unit]
Description=Gophish phishing simulation server
After=network.target

[Service]
User=gophish
Group=gophish
ExecStart=/opt/gophish/gophish
Restart=on-failure

[Install]
WantedBy=multi-user.target

En el firewall solo exponemos el puerto 80 público para las landing pages; el 3333 permanece restringido a la red de administración, un aislamiento imprescindible en cualquier despliegue serio de simulación de phishing con Gophish. El siguiente paso dentro de la simulación de phishing con Gophish es preparar el envío.

4. Configuración de SMTP y plantillas realistas

En el apartado Sending Profiles creamos el perfil que hará llegar los correos: un servidor SMTP con TLS, las credenciales de una cuenta de salida dedicada y el remitente. Para que la campaña sea realista, el remitente debe parecer legítimo (por ejemplo, «notification@corp-news-security.com») y el servidor debe estar correctamente autenticado para evitar el bloqueo por SPF y DKIM:

Name         : Simulador-SSO
From         : notifications@security-news-corp.com
Host         : smtp.corp-news.com:587
Username     : phisim@smtp-relay.corp-news.com
Password     : ********
From Address : SAT <notifications@security-news-corp.com>

Fig. 2 – Perfil de envío SMTP configurado para el envío de correos simulados en el laboratorio (laboratorio propio).

Las plantillas aprovechan las variables de Gophish como {{.FirstName}} o {{.Tracker}} (que inyecta el pixel de seguimiento) y deben clonar el formato real de la comunicación de TI, incluido el aspecto gráfico. La landing page replica el portal de SSO corporativo y registra cada visita; en el código fuente insertamos el token que reemplazaremos en el enlace de la plantilla. Para que el phishing simulado resulte creíble, conviene construir el escenario con los mismos ingredientes que usa un atacante real: urgencia («su sesión expira en 24 horas»), un logotipo familiar, una dirección de remitente próxima a la corporativa y una URL de destino cuyo nombre de dominio se parezca al legítimo. La diferencia con un ataque real es nuestra, y es esencial: la página de destino incluye la pantalla de concienciación tras la captura, el proceso queda documentado y el lanzamiento se hace en horario laboral para obtener métricas representativas del comportamiento real; el diseño de estas piezas decide en gran parte el resultado de la simulación de phishing con Gophish.

5. Grupos de usuarios y lanzamiento de campañas

Con el perfil SMTP, la plantilla y la landing page creadas, el siguiente paso de la simulación de phishing con Gophish es definir los grupos de destinatarios. Importamos una lista CSV con nombre, apellido y correo, y creamos grupos segmentados por departamento y nivel de riesgo: los equipos con acceso privilegiado o con historial de incidentes se marcan como objetivo prioritario, y en la simulación de phishing con Gophish reciben hasta dos campañas por trimestre. Un ejemplo del formato CSV aceptado sería este:

First Name,Last Name,Email
María,García,maria.garcia@empresa.es
Carlos,Ruiz,carlos.ruiz@empresa.es
Lucía,Moreno,lucia.moreno@empresa.es

Antes del lanzamiento ejecutamos una campaña de prueba contra una cuenta interna para validar la entrega, el renderizado, el pixel de seguimiento y el registro de clics; el piloto interno es la etapa más rentable de la simulación de phishing con Gophish.

5.1. Lanzamiento de campañas realistas con simulación de phishing con Gophish

Creamos la campaña indicando el perfil de envío, la plantilla, la landing page, la URL donde se alojará el servidor de phishing (podemos usar el puerto 80 integrado o un subdominio con nombre de fantasía) y la fecha de inicio. Gophish lanza el envío de forma escalonada y comienza a registrar cada evento en tiempo real. Los destinatarios reciben un correo con apariencia idéntica a la comunicación interna; quien pincha llega a la página corporativa y, si introduce credenciales, la plataforma las captura de forma segura y muestra la pantalla educativa. La campaña queda ejecutada en minutos, el dashboard refleja los resultados al instante y la simulación de phishing con Gophish queda registrada de principio a fin, lista para el análisis.

6. Análisis de resultados y métricas de la campaña

El panel de campañas de Gophish muestra el desglose completo de cada envío: abiertos, clics, envíos de credenciales y reportes, el lenguaje común de cualquier simulación de phishing con Gophish. Las métricas se pueden exportar a CSV y consultar por API REST con el token correspondiente. En nuestra campaña de laboratorio obtuvimos los siguientes valores sobre 100 destinatarios:

Métrica Valor Tasa Referencia deseable
Correos enviados 100 100% 100%
Correos abiertos 64 64% < 50%
Enlaces clickados 23 23% < 15%
Credenciales enviadas 9 9% < 5%
Correos reportados 7 7% > 10%

Con estos datos, el programa de concienciación se prioriza por departamento: los grupos con peores tasas reciben formación específica y una campaña de seguimiento, y los valores se comparan trimestre a trimestre para medir la mejora. Recomendamos además preparar una dirección de reporte automatizada (por ejemplo, un botón de reportar en el cliente de correo corporativo que remite a phishing@empresa.es) y utilizar una campaña de calibración periódica para verificar que el flujo de reporte funciona, ya que la tasa de reportados es la métrica que más correlaciona con la madurez del programa, un indicador que la simulación de phishing con Gophish permite medir sin ambigüedad. La consulta por API permite además volcar los resultados a nuestro hub de seguridad o al SIEM, automatizando el ciclo completo de la simulación de phishing con Gophish dentro del programa de defensa. Un ejemplo mínimo de consulta sería el siguiente:

$ curl -k -H "Authorization: Bearer $API_KEY" \
    https://phishing.corp.local/api/campaigns/ | python3 -m json.tool | head -60

7. Conclusión

En este laboratorio hemos recorrido la simulación de phishing con Gophish de principio a fin: instalación, perfiles SMTP, plantillas y landing pages realistas, grupos segmentados, lanzamiento de campañas y análisis de métricas por panel y por API. La plataforma convierte el factor humano en un indicador gestionable, y su coste cero la hace accesible incluso para equipos pequeños. Los responsables de seguridad deben integrar la simulación con un programa de formación continuo, usar los datos para priorizar y, sobre todo, tratar a los empleados como aliados: el objetivo es reducir el clic, no castigar al que se equivoca. Como siguiente paso, recomendamos automatizar los informes con scripts que crucen la API de Gophish con el inventario de departamentos y enlazar las campañas con el resto de ejercicios de concienciación (ingeniería social telefónica, pruebas de USB), porque el factor humano se entrena en conjunto y ese entrenamiento empieza con una simulación de phishing con Gophish bien planificada. Para profundizar, recomendamos la documentación oficial en docs.getgophish.com, el código fuente en github.com/gophish/gophish y los datos sectoriales del Anti-Phishing Working Group (APWG), que publica trimestralmente las tendencias de los ataques reales sobre los que diseñar los escenarios de entrenamiento.

Artículos relacionados: cómo montar una campaña de phishing con Gophish y qué es un ataque de DNS spoofing y su relación con el phishing.

¿Necesitas ayuda con Simulación de phishing con Gophish?

En Jaymon Security ayudamos a las organizaciones a proteger sus sistemas. Desde auditorías de seguridad hasta implementación de SIEM/SOC, nuestro equipo de expertos diseña soluciones a medida.

Contacta con nosotros para una evaluación gratuita de tu infraestructura.

Salir de la versión móvil