Qué es GoPhish? Como instalarlo en Ubuntu como servicio con ssl?

Qué es GoPhish? Como instalarlo en Ubuntu como servicio con ssl?

Qué es GoPhish?

GoPhish es un sofware gratuito y de código abierto diseñada especialmente para facilitar la formación de terceras personas en cuanto a seguridad. Gracias a esta herramienta vamos a poder lanzar campañas de phishing simuladas, monitorizadas y analizadas para ver los resultados. Gracias a GoPhish podemos ver que campañas según el programa hayan tenido éxito y las que no. Esto nos da una idea más clara de hacia dónde enfocar una posible formación adicional a los alumnos.

Las principales características de GoPhish son:

  • Cuenta con un gran número de plantillas por defecto, idénticas pixel a pixel.
  • Permite configurar campañas de Phishing automáticas.
  • Multiplataforma, disponible para Windows, Linux y Mac.
  • Sofware totalmente gratis y de código abierto.

gophish panel

Instalando GoPhish

  • Paso 1: Instalar Unzip.

Esto es necesario para descomprimir los archivos de instalación de GoPhish una vez que los haya descargado

sudo apt install unzip

  • Paso 2: descargar GoPhish.

En el momento de escribir la versión actual era 0.5.0.

wget https://github.com/gophish/gophish/releases/download/v0.5.0/gophish-v0.5.0-linux-64bit.zip

  • Paso 3: crear una carpeta gophish en el directorio /opt.

sudo mkdir /opt/gophish

  • Paso 4: Descomprimir los archivos GoPhish en tu directorio gophish recién creado.

sudo unzip gophish-v0.5.0-linux-64bit.zip -d /opt/gophish

  • Paso 5: configurar la dirección de escucha para permitir el acceso remoto a la consola de administración.

sudo sed -i ‘s!127.0.0.1!0.0.0.0!g’ /opt/gophish/config.json

Paso 6: Prueba. Compruebe que GoPhish se inicia y que puede acceder a la consola de administración, etc.

cd /opt/gophish
sudo ./gophish
Open a browser and navigate to https://<IP of GoPhish Server>:3333

Presiona CTRL+C para finalizar su sesión de GoPhish

Creamos y configuramos el servicio GoPhish

Ahora que tenemos una instalación básica de GoPhish en funcionamiento, podemos configurarla para que se ejecute como un servicio. El script se puede encontrar aquí: https://github.com/gophish/gophish/issues/586, que se describe en la guía de instalación de GoPhish.

  • Paso 1: crea el archivo de servicio gophish y copialo en el script

sudo nano /etc/init.d/gophish

Script:

#!/bin/bash
# /etc/init.d/gophish
# initialization file for stop/start of gophish application server
# description: stops/starts gophish application server
# processname:gophish
# config:/opt/gophish/config.json

# define script variables

processName=Gophish
process=gophish
appDirectory=/opt/gophish
logfile=/var/log/gophish/gophish.log
errfile=/var/log/gophish/gophish.error

start() {
echo ‘Starting ‘${processName}’…’
cd ${appDirectory}
nohup ./$process >>$logfile 2>>$errfile &
sleep 1
}

stop() {
echo ‘Stopping ‘${processName}’…’
pid=$(/usr/sbin/pidof ${process})
kill ${pid}
sleep 1
}

status() {
pid=$(/usr/sbin/pidof ${process})
if [[ “$pid” != “” ]]; then
echo ${processName}’ is running…’
else
echo ${processName}’ is not running…’
fi
}

case $1 in
start|stop|status) “$1” ;;
esac

Pulsamos CTRL + X para salir, después pulsamos la tecla "y" y después "enter" para guardar los cambios.

  • Paso 2: crear el directorio de log de gophish

sudo mkdir /var/log/gophish

  • Paso 3: hacer que el archivo de script gophish sea ejecutable

sudo chmod +x /etc/init.d/gophish

  • Paso 4: Añadir el servicio gophish a update-rc.d para asegurarse de que se inicie cada vez que se inicie su servidor.

sudo update-rc.d gophish defaults

Se puede dar el caso de recibir una advertencia que indique 'insserv: warning: script' gophish 'missing LSB tags and overrides'. Puedes ignorar esto.

  • Paso 5: inicia el servicio gophish y prueba GoPhish

sudo service gophish start

Ahora abre el navegador y entra en la sigueinte ruta: https://<IP del servidor donde tiene GoPhish>:3333

Configurar SSL para GoPhish

Ahora podemos instalar el certificado SSL para el dominio que utilizará para su campaña de phishing. Para ello vamos a usar Lets Encryp.

  • Paso 1: descargar CertBot-Auto

sudo wget https://dl.eff.org/certbot-auto

  • Paso 2: hacer ejecutable certbot-auto

sudo chmod a + x certbot-auto

  • Paso 3: Ejecute el script certbot-auto.

Una vez que haya instalado algunos requisitos previos, se le pedirá que acepte ciertos términos y condiciones, así como que proporcione la información necesaria para que se cree el certificado. También se le pedirá que cree un registro TXT para el dominio, así que asegúrese de tener el acceso necesario y de que está listo para crear el registro cuando el script lo solicite.

sudo ./certbot-auto certonly -d <su domain> –manual –preferred-challenges dns

  • Paso 4: copie la clave y los archivos cert en el directorio gophish

sudo cp /etc/letsencrypt/live/<your domain>/privkey.pem /opt/gophish/domain.key

sudo cp /etc/letsencrypt/live/<your domain>/fullchain.pem /opt/gophish/domain.crt

  • Paso 5: Modifique la configuración de config.json con la nueva información del certificado.

Cambie el puerto url de 80 a 443, cambie use_tls de false a true, cambie cert_path de example.cert a domain.crt y key_path de exmaple.key a domain.key

sudo nano /opt/gophish/config.json

Editar archivo Config.json

Una vez hecho pulsamos CTRL + X para salir, después pulsamos la tecla "y" y después "enter" para guardar los cambios.

  • Paso 6: reiniciar para que todos las configuraciones surtan efecto

sudo reboot

Una vez que reinicie su servidor ya debes de tener un servidor GoPhish en funcionamiento donde GoPhish se está ejecutando como un servicio y su dominio se está sirviendo a través de HTTPS.