El phishing sigue siendo el vector de acceso inicial más confiable en ejercicios de red team. No porque los defensores sean descuidados, sino porque las personas son personas. La ingeniería social evade todos los EDR del mercado.

Esta guía cubre el stack completo: configuración de infraestructura, despliegue de GoPhish, entrega de correo con SPF/DKIM/DMARC, desarrollo de pretextos y técnicas para evitar filtros de spam. Todo lo que necesitas para ejecutar una campaña de phishing creíble en un ejercicio debidamente autorizado.

Nota legal: Todo lo aquí descrito es exclusivamente para ejercicios de red team autorizados. Obtén autorización escrita explícita antes de utilizar cualquier técnica de esta guía. Sin excepciones.


Por Qué el Phishing Sigue Funcionando en 2026

Los defensores han mejorado considerablemente. Los EDR, sandboxes y gateways de correo detectan mucho más que antes. Pero el phishing sigue siendo efectivo porque:

  • La superficie de ataque son las personas, no la tecnología
  • El robo de credenciales evita por completo las defensas en endpoints
  • El fatiga de MFA y los ataques adversary-in-the-middle (AiTM) neutralizan el segundo factor
  • El spear phishing dirigido supera tasas de apertura del 30% en la mayoría de los ejercicios

El OSCP te enseña a escanear y explotar vulnerabilidades. La experiencia en el mundo real te enseña que el camino más rápido hacia el acceso inicial suele ser un correo bien redactado.


Fase 1: Configuración de Infraestructura

Necesitas infraestructura dedicada para hacer phishing. No uses tu VPS personal, no uses hosting compartido y no uses IPs con historial de actividad ofensiva. Infraestructura limpia para cada ejercicio.

Lo Que Necesitas

  • Un VPS (IP dedicada, idealmente una cuenta nueva o IP limpia)
  • Un dominio de phishing (typosquat, lookalike o temático)
  • Un relay SMTP o servidor de correo propio
  • GoPhish u otro framework similar
  • Opcional: proxy reverso para páginas de destino (evilginx3 para AiTM)

Selección del VPS

Elige un proveedor que no bloquee agresivamente el puerto 25 saliente. Vultr y DigitalOcean funcionan bien para infraestructura de red team: despliega una instancia nueva de $6/mes por ejercicio y elimínala al terminar.

SO recomendado: Ubuntu 22.04 LTS (amplia compatibilidad de herramientas)

# Tras desplegar el VPS — asegura el acceso de inmediato
useradd -m -s /bin/bash redteam
usermod -aG sudo redteam
# Deshabilita login root SSH en /etc/ssh/sshd_config
PasswordAuthentication no
PermitRootLogin no

Selección del Dominio

Tu dominio es lo primero que se verifica. Elige con cuidado.

Estrategias:

  • Typosquatting: microsofft.com, paypa1.com — efectivo para campañas masivas, fácil de detectar
  • Lookalike con palabra clave: microsoft-helpdesk.com, support-paypal.com — mejor para ops dirigidos
  • Dominios temáticos: secure-portal.net, it-helpdesk.org — menos específicos de empresa, más versátiles
  • Punycode/IDN: lookalikes en Unicode — mіcrosoft.com (і cirílico) — cada vez más filtrados

La antigüedad del dominio importa. Los dominios nuevos son marcados automáticamente. Si el presupuesto lo permite, compra dominios con antigüedad (2+ años). Servicios como ExpiredDomains.net listan dominios expirados con reputación existente.

Verifica la reputación antes de comprar:

# Verificación de listas negras en MX Toolbox
# Búsqueda de dominio en VirusTotal
# Verificación en Google Safe Browsing
curl "https://sb-ssl.google.com/safebrowsing/clientreport/lookup?client=api&key=no_key_needed_for_check&pver=4.0&url=https://tudominio.com"

Configuración de DNS

# Registro A — apunta a tu servidor GoPhish
tudominio.com.      300   IN  A     IP_DE_TU_VPS

# Registro MX — para envío de correo
mail.tudominio.com. 300   IN  A     IP_DE_TU_VPS
tudominio.com.      300   IN  MX    10 mail.tudominio.com.

Los registros SPF, DKIM y DMARC van aquí también — los cubrimos en la Fase 3.


Fase 2: Configuración de GoPhish

GoPhish es el framework de phishing de código abierto estándar. Interfaz web limpia, buen seguimiento de campañas, API JSON.

Instalación

# En tu VPS
wget https://github.com/gophish/gophish/releases/download/v0.12.1/gophish-v0.12.1-linux-64bit.zip
unzip gophish-v0.12.1-linux-64bit.zip -d /opt/gophish
cd /opt/gophish
chmod +x gophish

Configuración

Edita config.json:

{
    "admin_server": {
        "listen_url": "127.0.0.1:3333",
        "use_ssl": true,
        "cert_path": "gophish_admin.crt",
        "key_path": "gophish_admin.key"
    },
    "phish_server": {
        "listen_url": "0.0.0.0:80",
        "use_ssl": false,
        "cert_path": "example.crt",
        "key_path": "example.key"
    },
    "db_name": "sqlite3",
    "db_path": "gophish.db",
    "migrations_prefix": "db/db_",
    "contact_address": "",
    "logging": {
        "filename": "",
        "level": ""
    }
}

Importante: El panel de administración solo debe ser accesible a través de un túnel SSH, nunca expuesto a internet.

# Ejecutar GoPhish
cd /opt/gophish && sudo ./gophish &

# En tu máquina de ataque — túnel hacia el panel admin
ssh -L 3333:127.0.0.1:3333 user@IP_DE_TU_VPS

Accede al panel admin en https://127.0.0.1:3333. Las credenciales por defecto se imprimen en el primer arranque.

SSL para Páginas de Phishing

Los usuarios no harán clic si ven advertencias de SSL. Obtén un certificado:

# Instalar certbot
apt install certbot -y

# Obtener certificado (para temporalmente GoPhish en el puerto 80)
certbot certonly --standalone -d tudominio.com

# Certificados en:
# /etc/letsencrypt/live/tudominio.com/fullchain.pem
# /etc/letsencrypt/live/tudominio.com/privkey.pem

Actualiza el config.json del phish_server para usar SSL con estas rutas de certificado.

Ejecutar como Servicio

cat > /etc/systemd/system/gophish.service << 'EOF'
[Unit]
Description=GoPhish Phishing Framework
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/opt/gophish
ExecStart=/opt/gophish/gophish
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

systemctl enable gophish
systemctl start gophish

Fase 3: Entrega de Correo (SPF, DKIM, DMARC)

Aquí es donde fallan la mayoría de las campañas de phishing. Un correo bien redactado que llega al spam no sirve de nada. La autenticación de correo no es opcional.

Configuración de Postfix

apt install postfix -y
# Selecciona "Internet Site" durante la configuración
# Establece el nombre del servidor de correo a tu dominio

# /etc/postfix/main.cf
myhostname = mail.tudominio.com
mydomain = tudominio.com
myorigin = $mydomain
inet_interfaces = all
relayhost =

Registro SPF

SPF indica a los servidores receptores qué IPs están autorizadas para enviar correo en nombre de tu dominio.

tudominio.com. 300 IN TXT "v=spf1 ip4:IP_DE_TU_VPS ~all"
  • ip4:IP_DE_TU_VPS — autoriza tu VPS
  • ~all — fallo suave (mejor entregabilidad que -all para dominios nuevos)

Configuración de DKIM

DKIM firma criptográficamente el correo saliente. Es imprescindible para llegar a la bandeja de entrada en los principales proveedores.

apt install opendkim opendkim-tools -y

# Generar par de claves
mkdir -p /etc/opendkim/keys/tudominio.com
cd /etc/opendkim/keys/tudominio.com
opendkim-genkey -s mail -d tudominio.com

# La clave pública va en DNS, la privada permanece en el servidor
cat mail.txt  # Muestra el registro TXT para DNS

Agrega el registro TXT que genera:

mail._domainkey.tudominio.com. 300 IN TXT "v=DKIM1; k=rsa; p=TU_CLAVE_PUBLICA"

Registro DMARC

DMARC vincula SPF y DKIM, e indica a los receptores qué hacer en caso de fallo.

_dmarc.tudominio.com. 300 IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]"

Comienza con p=none (solo monitoreo). Esto no afecta la entregabilidad mientras verificas que todo funciona correctamente.

Verificar Entregabilidad

Antes de lanzar cualquier campaña, prueba:

# Mail-tester.com — mejor puntuación de entregabilidad gratuita
# Envía un correo de prueba a la dirección que te indican y revisa tu puntuación

# MX Toolbox — verifica todos los registros DNS
# https://mxtoolbox.com/SuperTool.aspx

Objetivo: 8+/10 en mail-tester.com antes de cualquier campaña.

Configuración SMTP en GoPhish

En el admin de GoPhish → Sending Profiles:

Name: Campaign SMTP
Host: 127.0.0.1:25
Username: (dejar en blanco para Postfix local)
Password: (dejar en blanco)
From: Soporte IT <[email protected]>

Realiza una prueba con la función de correo de prueba de GoPhish antes de lanzar.


Fase 4: Desarrollo de Pretextos

La infraestructura técnica es el mínimo necesario. El pretexto — la historia que cuenta tu correo — determina si la gente hace clic.

Pretextos con Alta Tasa de Conversión

IT/Helpdesk: Restablecimiento de contraseña, inscripción de MFA, reconfiguración de VPN

“Tu cuenta requiere re-inscripción en MFA antes del cierre de operaciones del viernes, o se suspenderá el acceso.”

RRHH/Finanzas: Actualización de nómina, inscripción en beneficios, informe de gastos

“Por favor revisa y aprueba el informe de gastos del Q3 adjunto antes del cierre de mes.”

Suplantación de ejecutivos: Desde el “CEO” solicitando acción urgente

Alta tasa de clics, alto riesgo de detección si el objetivo llama al CEO

Proveedor/contratista: Factura, contrato, documento compartido

“Por favor revisa el NDA adjunto para el proyecto que inicia el lunes.”

Seguridad IT: Alerta de seguridad, confirmación de política

“Tu cuenta mostró actividad de inicio de sesión inusual. Verifica tu identidad de inmediato.”

Investigación de Pretextos

Cuanto más dirigido, mejor. OSINT sobre la organización objetivo:

# LinkedIn — estructura organizacional, nombres de empleados, cargos
# Sitio web de la empresa — anuncios de proveedores IT, políticas de RRHH
# Ofertas de trabajo — qué herramientas y plataformas utilizan
# Formato de correo — [email protected] vs [email protected]

Herramientas: theHarvester, hunter.io, LinkedIn Sales Navigator.

Reglas para Redactar Correos

  1. El dominio del remitente debe coincidir con el pretexto — correo de IT desde el departamento de IT, no desde un dominio aleatorio
  2. Urgencia sin pánico — plazo ajustado, no “TU CUENTA SERÁ SUSPENDIDA EN 5 MINUTOS”
  3. Formato profesional — imita el estilo real de correo de la empresa (obtén muestras via OSINT)
  4. Un solo CTA claro — un enlace, una acción. Múltiples enlaces reducen los clics
  5. Optimizado para móvil — la mayoría del correo corporativo se lee en teléfonos

Fase 5: Diseño de la Página de Destino

La página de destino debe coincidir con el pretexto y parecer legítima.

Clonar Páginas Objetivo

# HTTrack — clona una página de login
httrack https://accounts.microsoft.com -O /tmp/clone -r2

# O usa el clonador de sitios integrado en GoPhish
# Admin → Landing Pages → Import Site

Importante: Elimina todas las dependencias externas. Tu página clonada debe cargarse completamente desde tu servidor — sin llamadas a CDNs de Microsoft/Google (estas pueden alertar a equipos de seguridad).

Captura de Credenciales

En GoPhish, marca los campos de usuario y contraseña en tu página clonada. GoPhish captura automáticamente los datos del formulario.

Después de la captura de credenciales, redirige a:

  • La página de login real con un mensaje de “sesión expirada”
  • Un portal interno (“Tu solicitud ha sido enviada”)
  • Nada — solo un spinner (peor UX, mayor sospecha)

Phishing AiTM (Bypass de MFA)

Para ejercicios donde el MFA está en el alcance, los ataques adversary-in-the-middle capturan cookies de sesión — evitando por completo las aplicaciones autenticadoras.

evilginx3 es el estándar actual:

git clone https://github.com/kgretzky/evilginx2
cd evilginx2
make

# Configura los phishlets para tu objetivo
# Hay phishlets disponibles para Microsoft 365, Google, Okta

evilginx3 actúa como proxy reverso — la víctima se autentica con el proveedor real, evilginx captura el token de sesión. Funciona contra TOTP, SMS y MFA basado en notificaciones push. No funciona contra llaves de hardware (FIDO2).

Nota: AiTM requiere autorización explícita en las reglas de enganche del ejercicio.


Fase 6: Evasión de Detección

Las herramientas de seguridad han mejorado. Estas técnicas prolongan la vida útil de la campaña.

Evasión de Gateways de Correo

  • Evita URLs maliciosas conocidas. Organiza el redirect: dominio de phishing → redirect → página de captura real
  • Usa servicios legítimos como redirect inicial. Los redirects de Google y Bit.ly (aunque ambos se detectan cada vez más rápido)
  • Retrasa la entrega del payload. Envía el correo limpio primero, cambia la página después de que cierren las ventanas de análisis (generalmente 30-60 minutos)
  • Ofuscación HTML. Layouts basados en tablas, trucos CSS para ocultar palabras clave de los scanners

Anti-Sandboxing

Los sandboxes hacen clic automáticamente en todos los enlaces. Fíltralos:

// En tu página de destino — detecta comportamiento de sandbox
if (navigator.webdriver || 
    !navigator.plugins.length || 
    screen.width < 100) {
    window.location = 'https://google.com'; // Redirige bots
}

Filtrado por IP: bloquea rangos de sandbox conocidos (Cisco Talos, Symantec, etc.) en nginx.

Trucos de Categorización

Los nuevos dominios son categorizados por proxies de filtrado de URLs. Si tienes tiempo:

  1. Pre-categoriza tu dominio publicando contenido benigno durante una semana antes del ejercicio
  2. Apunta a servicios de categorización de URL (Bluecoat, Fortiguard, Symantec) para enviar manualmente como categoría benigna
  3. Usa dominios sin categorizar — muchas organizaciones permiten el tráfico no categorizado

Timing

  • Envía de lunes a miércoles, de 8 a 10 AM en la zona horaria del objetivo — mayor engagement de correo corporativo
  • Evita los viernes (menor volumen, mayor escrutinio de equipos de seguridad)
  • Envíos en lotes: 50-100/hora parece más orgánico que mandar 500 de golpe

Fase 7: Seguimiento y Reporte

GoPhish rastrea en tiempo real las aperturas de correo (píxel), clics en enlaces y envío de credenciales.

Métricas Clave

  • Correos entregados: Tasa de entrega real (resta los rebotes)
  • Tasa de apertura: Cargas del píxel — indica que el correo llegó a la bandeja de entrada
  • Tasa de clic: % que hizo clic en el enlace — mide la efectividad del pretexto
  • Tasa de envío: % que ingresó credenciales — mide la página de destino + pretexto
  • Tasa de reporte: % que reportó el correo al equipo IT — mide la concienciación en seguridad

Exportar y Reportar

# API de GoPhish — exportar resultados
curl -k -X GET https://127.0.0.1:3333/api/campaigns/1/results \
  -H "Authorization: Bearer TU_API_KEY" | python3 -m json.tool

Para el reporte, captura:

  • Línea de tiempo de cada acción
  • IP de origen (si es necesario para atribución)
  • Credenciales capturadas (hash o nota — las credenciales reales van directamente al cliente de forma segura)
  • Capturas de pantalla de la página de destino tal como fue encontrada

Combina los resultados con tu plantilla de reporte de red team para un entregable completo.


Seguridad Operacional

Tu infraestructura te expone tanto como expone a los objetivos. Mantenla limpia.

  • Nunca reutilices infraestructura entre ejercicios
  • VPN o Tor para todo acceso administrativo al VPS de phishing
  • Sin datos personales en el registro del dominio — usa protección de privacidad o una identidad separada
  • Documenta todo — lo necesitarás para el reporte y para la respuesta a incidentes si algo sale mal
  • Destruye la infraestructura al terminar el ejercicio — no dejes instancias de GoPhish activas

La Guía de OPSEC para Red Teams cubre esto en profundidad.


Poniendo Todo Junto: Checklist de Campaña

Antes del lanzamiento:

  • VPS desplegado, IP limpia, asegurado
  • Dominio registrado, DNS propagado (espera 24-48 horas)
  • Certificado SSL emitido
  • GoPhish instalado y funcionando
  • SPF, DKIM, DMARC configurados y verificados
  • Puntuación en mail-tester.com: 8+/10
  • Página de destino clonada, dependencias solo locales, redirect configurado
  • Pretexto revisado (ortografía, formato, credibilidad)
  • Correo de prueba enviado a Gmail + Outlook + corporativo — verifica colocación en bandeja de entrada
  • Lista de objetivos importada (formato CSV en GoPhish)
  • Mecanismo de reporte definido (qué sucede cuando los objetivos hacen clic)
  • Reglas de enganche revisadas — alcance, timing, pretextos autorizados

Durante la campaña:

  • Monitorea el panel de GoPhish cada 30 minutos
  • Observa la primera respuesta del equipo de seguridad (harán clic desde los mismos rangos de IP)
  • Documenta todo

Después de la campaña:

  • Exporta todos los resultados antes del desmontaje
  • Revoca/destruye la infraestructura
  • Transfiere de forma segura las credenciales capturadas al cliente

Costo de la Infraestructura

Stack completo para una campaña de phishing de dos semanas:

ElementoCosto
VPS (Vultr/DO, 1 mes)$6–12
Dominio (.com, 1 año)$10–15
Certificado SSL$0 (Let’s Encrypt)
GoPhish$0 (código abierto)
Total~$20–30

Despliega en Vultr o DigitalOcean — ambos tienen instancias de $6/mes que manejan el tráfico de phishing sin problemas.


Qué Viene Después

El phishing te da acceso inicial. Lo que haces con él determina el resultado del ejercicio:

  • Relleno de credenciales: Prueba las credenciales capturadas contra VPN, Outlook, SSO
  • Despliegue de C2: Si un usuario ejecutó un payload, establece persistencia con Sliver o Havoc
  • Phishing interno: Desde un buzón comprometido, tu credibilidad es 10 veces mayor
  • Movimiento lateral: Usa credenciales capturadas con NetExec o Pass-the-Hash

¿Necesitas Ayuda con Reportes de Red Team?

Si ejecutas ejercicios de phishing de forma profesional, tu entregable importa tanto como tu acceso. CipherWrite ayuda a profesionales de seguridad a producir informes técnicos y documentación de hallazgos de calidad profesional.

Conoce más sobre CipherWrite


El phishing es un arte. El stack técnico se aprende en un día. El desarrollo de pretextos y el ajuste de entregabilidad — ahí es donde se nota la experiencia. Cada ejercicio enseña algo que beneficia al siguiente. Comienza con un laboratorio controlado, prueba contra tus propias cuentas de correo, itera hasta que llegues consistentemente a la bandeja de entrada.

Después ve por ese acceso inicial.