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.
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
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.