Buenas a todos,
En ocasiones durante una auditoría nos podemos encontrar con la necesidad de lanzar una
campaña de phishing, para ganar acceso, por estar realizando un
APT o simplemente dentro de un programa para concienciar a los
trabajadores.
En la entrada de hoy
vamos a ver Phishing Frenzy un framework escrito en Ruby para
realizar campañas de phishing que nos permite llevar a cabo todas las fases del proceso.
Configuración
Para la prueba de
concepto vamos a utilizar Docker por su sencillez y comodidad.
El siguiente comando
descarga la imagen de Docker Hub y crea un contenedor.
docker run -d -p 80:80 b00stfr3ak/ubuntu-phishingfrenzy
Comprobamos
que el contenedor esta corriendo.
La imagen de docker
que estamos ejecutando esta configurada con el Virtual Host
phishingfrenezy.local. Para ajustarlo a nuestras necesidades podemos
incluir dicho registro en nuestro archivo hosts local o bien
modificar la configuración del contenedor, nosotros vamos a optar
por la segunda.
Para ello, iniciamos
una Shell interactiva en nuestro contenedor y modificamos los
siguientes archivos;
/etc/apache2/pf.conf linea ServerName
/var/www/Phishing-Frenzy/config/application.rb linea SITE_URL
y añadir en el hosts del contenedor.
Reiniciamos Apache,
service apache2 reload y accedemos con el navegador a la interfaz web
de Phishing Frenzy y las credenciales por defecto admin:Funt1me!
Por tanto, lo primero es cambiar la password de admin. [Menu: Admin →
Manage Users → Manage Account]
La Trampa, el correo y la página
Una vez
terminada la configuración lo tenemos todo listo para realizar
nuestra primera campaña de phishing.
Para el ejemplo vamos a utilizar la web de nuestros compañeros como prueba de concepto.
Para el ejemplo vamos a utilizar la web de nuestros compañeros como prueba de concepto.
El primer paso es
clonar la página web con Phishing-Frenzy. [Menu: Resources →
Website Cloner → Clone Website]
Cuando termine el
proceso podemos visualizar y descargar la página.
Ahora creamos un
Template, que es la pieza clave de nuestra campaña. [Menu: Template →
Create]
Le ponemos nombre y
modificamos sus propiedades
Vamos por partes: Nombre, descripción y Notas, está claro.
Index, especifica cual será la página de inicio y en Template Files añadimos todos los archivos necesarios.
Index, especifica cual será la página de inicio y en Template Files añadimos todos los archivos necesarios.
tss.jpg – Imagen
para dar mejor apariencia al correo de phishing.
tss.html.erb –
Correo de phishing usando la imagen que añadimos e invitando a los
usuarios a que hagan login en el sitio.
Aquí la clave son
las etiquetas "<%= image_tag attachments['tss.jpg'].url %>" para incluir la imagen y "<a href="http://<%= @url
%>">" donde Phishing Frenzy inserta el vinculo hasta
nuestro sitio espejo.
index.php – la
copia de la página descargada con Phishing Frenzy.
Es imprescindible
modificar el formulario de la página para que los campos User y Pass
se llamen UsernameForm y PasswordForm sino Phishing Frenzy será
incapaz de registrar los logins.
Además, modificamos
el código de la página para conservar lo más posible el aspecto y
redirigir el formulario a redirect.php.
redirect.php –
redireccionamos a las víctimas a la página de Login fallido del sitio
original con la intención de no alertar al usuario.
rounded-white.png –
este archivo es necesario para la página que estamos clonado.
Guardamos y ya
tenemos listo el Template.
Los Destinatarios
Phishing Frenzy
dispone de una herramienta integrada para buscar los objetivos que funciona con el motor de Bing. Lo primero que tenemos que hacer es introducir nuestra Api Key en la configuración. [Admin → Global
Setting → Bing API Key]
Para
obtener la API key debemos registrarnos aquí o usar la de algún
desarrollador descuidado. Por supuesto hemos optado por la primera.
Con la key configurada vamos a [Resources → Email Enumeration → Enumerate] y
rellenamos el campo con el dominio thesecuritysentinel.es.
Cuando finaliza la
búsqueda tenemos un listado con los resultados y la URL de donde han sido obtenidos.
La Campaña
Ya podemos lanzar
nuestra campaña. [Campaigns → New Campaign] y vamos configurando
opciones
Rellenamos los
destinatarios y el correo de pruebas. Seleccionamos el Template que
hemos creado y marcamos Active.
Cuando Phishing Frenzy activa la campaña crea en Apache un virtual host asociado al FQDN que rellenamos más abajo.
Cuando Phishing Frenzy activa la campaña crea en Apache un virtual host asociado al FQDN que rellenamos más abajo.
Debemos
crear/registrar un registro DNS público apuntando a nuestro servidor
de phishing.
Nosotros, a modo de ejemplo, lo haremos con un domino que tiene un error tipográfico más o
menos imperceptible a simple vista.
Salvamos la campaña
y podemos visualizar y modificar el cuerpo del mensaje. Además podemos lanzar una
prueba a la dirección que hayamos configurado. Esto último es
especialmente útil para ir afinando los detalles.
Cuando estemos
listos pulsamos Launch para lanzar la campaña.
Los Resultados
Nuestros objetivos
reciben el siguiente correo de phishing
Cuando la víctima
pulsa el enlace es direccionada a nuestro servidor de phishing, en el
que si hace login, caerá en la trampa
Para ser finalmente
redirigido a la página original como si hubiese escrito mal las
credenciales.
Pero si en Phishing Frenzy vamos a [Reports → Stats] vemos como se están recogiendo las
credenciales de las víctimas.
Conclusiones
Para asegurar el
éxito y realizar una buena campaña de phishing es necesario cuidar
bien los detalles e intentar que tanto el correo como la página y el
dominio sea lo más parecido al objetivo.
También es
importante configurar bien los registros MX, SPF y DKIM para evadir
los filtros de Spam.
Como defensa es
importante realizar campañas contra nuestros propios usuarios con el objetivo de concienciar al personal frente a futuros ataques.
Hola buenos días, he intentado realizar la configuración pero los primero pasos no me quedan claros. Saludos.
ResponderEliminarBuenas tardes Salvador Vargas. Te refieres a docker? Te explico, docker es un software que te permite virtualizar aplicaciones, es decir, seguro que usas máquinas virtuales con las que probar diferentes sistemas operativos. Pues la función de docker es lo mismo pero orientado a programas. Es un contenedor que tiene todo lo necesario para que puedas ejecutar dicho programa, del cual de otro modo para probarlo, necesitarías por ejemplo instalar librerías, versiones de java, etc. Pero de esta forma, solo con tener instalado docker(que solo corre bajo Linux), puedes ejecutar por ejemplo el framework Frenzy sin tener que instalar y configurar cosas a parte. Lo único que necesitas es tener Docker instalado y configurar los pasos arriba mencionados para poder correr el framework Frenzy. Espero haber despejado tus dudas, sino es así, no dudes en ponerte en contacto con nosotros. Saludos.
ResponderEliminarMuchas gracias, voy a ejecutar los pasos nuevamente y cualquier cosa les aviso. Saludos.
ResponderEliminar