viernes, enero 29, 2021

O365 Toolkit: El kit de phishing OAuth para pentesters al estilo Sappo

En el año 2016 presentamos el trabajo de SAPPO, una herramienta que permitía hacer pruebas de concienciación a los empleados de una organización que utilizaba Office 365 o que utiliza cuentas de Outlook más orientadas al uso personal. Fue en Rooted CON 2016 cuando, junto a Chema Alonso, presentamos el trabajo. Era un SAPPO que solo utilizaba Office 365. Después lo adaptamos también a ejemplos de ataques con Sappo a Twitter o Dropbox,  o la presentación en sociedad de Ransomcloud O365. Todo gracias a los tokens OAuth.

Figura 1: O365 Toolkit: El kit de phishing OAuth para pentesters al estilo Sappo

A día de hoy seguimos enseñando a SAPPO en charlas para mostrar cómo el phishing evoluciona y no quieren tus credenciales, si no que les vale con un Token OAuth que les da acceso a tu correo, a tu OneDrive o a poder usar emails en tu nombre. Cuando se enseña el phishing, no siempre se habla de esto y debemos enseñar a la sociedad que los ataques evolucionan, como por ejemplo en el caso del Ataque QRCode Jacking con Sappo que os contamos..Así cómo también mostrar los riesgos de la IA utilizándola en el campo de las estafas para suplantar una voz o una imagen de alguien. Enseñar a una IA a hablar como una persona que reconocemos es algo, realmente, peligroso y que hace que algunas estafas hayan evolucionado.


Sappo también puede utilizar en un ejercicio de Red Team, ya que en muchas ocasiones los equipos de pentesting entran en contacto con organizaciones que utilizan Office 365. No hay muchas herramientas que hagan este tipo de cosas de forma ordenada y personalizable. 

Figura 3: RansomCloud O365

Hoy vamos a hablar de una herramienta llamada O365 Toolkit que hace lo mismo que hace nuestro querido SAPPO. Realmente, es un mundo interesante que se puede explorar. Tener un kit de herramientas específico para Office 365 u otros entornos que se apoyan en los Tokens OAuth es un entorno a estudiar, ya que no hay mucha herramienta que ayude a la auditoría o, en este caso, a un equipo de Red Team dentro de su ejercicio.


Es un kit de herramientas que permitirá al auditor/pentester llevar a cabo un ataque de phishing con Tokens OAuth. El objetivo será conseguir acceso a la cuenta a través de estos tokens. Hasta aquí nada nuevo. Esta técnica, la de la obtención y uso de los Tokens OAuth, fue utilizada por grupos como Fancy Bear (APT28) durante campañas en el pasado al dirigirse a Google. Las principales características de o365 toolkit son:

- Extracción de e-mails por palabras claves: Es decir, podemos buscar dentro de los mensajes de e-mail ciertas palabras clave.  
 
- Generar reglas ‘maliciosas’ en Outlook. 
 
- Extraer archivos, es decir, descargarlos desde OneDrive o SharePoint. 
 
- Inyectar macros en documentos de Word almacenados. Esta es una función para conseguir llegar a otras máquinas de la organización dentro del ejercicio de Red Team.

La verdad que analizando la herramienta, tiene bastantes cosas que son útiles y que permiten desde comprometer una cuenta de Office 365 hasta moverse lateralmente a otros equipos de la organización. La arquitectura de o365 toolkit está formada por la Interfaz de gestión, el Backend y el Phishing Endpoint, y puede verse en el Github de la herramienta.


Con el phishing endpoint podemos servir el HTML que realiza el engaño al usuario para obtener el token OAuth. Por ejemplo, se envía un e-mail con el contenido del HTMl. En el caso de SAPPO, ejemplificábamos en la charla de RootedCON 2016, con un e-mail que te ofrecía un ‘AntiSpam PRO’. En las pruebas de concienciación de empleados que se hacen en las organizaciones, suele ser un gancho estilo concurso o algún tipo de producto que se activaría en su cuenta.


Figura 6: Demo de Sappo en Office hecha por Chema Alonso

El backend recibirá el Token OAuth del usuario que proporciona permisos y cae en el paso anterior. Por último, la gestión de interfaz es la parte de la aplicación que será utilizada para interactuar con la API de Microsoft Graph y generar las apps OAuth.

Fichero de configuración de o365 toolkit

El fichero de configuración de o365 toolkit permite configurar el entorno de forma sencilla. Un ejemplo es el siguiente:

[server]
host = 127.0.0.1
externalport = 30662
internalport = 8080

[oauth]
clientid = [REDACTED]
clientsecret = [REDACTED]
scope = "offline_access contacts.read user.read mail.read mail.send files.readWrite.all files.read files.read.all openid profile"
redirecturi = "http://localhost:30662/gettoken"

La configuración que viene por defecto en el Github de la herramienta es bastante instructiva. Los scope indican los permisos que serán solicitados y en la parte “REDACTED” se indican los parámetros de la app OAuth. Cuando se obtiene un token, se puede ver una vista similar a esta en la parte web de o365 toolkit.

Figura 7: Interfaz de gestión de o365-attack-toolkit

Se puede ver que se puede utilizar las búsquedas dentro de los e-mails, enviar mensajes de correo electrónico, buscar en los archivos subidos de dicha cuenta y visualizar los ficheros, pudiendo manipularlos o reemplazarlos. En esta imagen se puede ver el acceso a los ficheros, pudiendo descargarlo o reemplazarlo directamente. Además, en el paso anterior, podíamos ver cómo podemos realizar la búsqueda sobre ficheros.

Figura 8: Búsquedas sobre ficheros

Sin duda es una herramienta interesante, escrita en go, y que puede ayudaros en un ejercicio de Red Team o un Ethical Hacking a conseguir los objetivos del ejercicio. Otra herramienta más que sumar a la mochila del pentester.

Saludos,

 Contactar con Pablo González

No hay comentarios:

Publicar un comentario