miércoles, marzo 09, 2016

SAPPO: Spear APPs to steal OAuth-tokens (4 de 4)

Para la última parte de esta serie podemos hacer exactamente el mismo ataque que hemos visto en el caso anterior pero ahora contra una cuenta de Windows Live. Para ello podríamos utilizar la misma App que creamos inicialmente o crear otra distinta, y podríamos usar el mismo correo electrónico con ingeniería social o distinto, pero deberemos cambiar la SCOPE_LIST del correo de petición de permisos para adecuarlos a los disponibles en Windows Live, que son distintos a los que existen en Office 365.

Figura 30: Atacando cuentas de Windows Live

Una vez que la víctima decidiera aceptar dar permisos a la app "besar al sappo" con un clic en YES, nuestra plataforma recibiría un AccessToken que le permitiría invocar la API de Windows Live para acceder a todos los recursos concedidos. Como se puede ver, en la implementación existente a día de hoy en Windows Live no se permite - aún - acceder al correo electrónico, aunque sí que existen los SCOPES definidos para ello. Actualmente, están en un proceso de migración que todavía no han concluido y en el que pronto dejarán disponible el acceso para todos los buzones.

Figura 31: Un AccessToken válido para una cuenta de Windows Live en Sappo

Desde nuestra plataforma es posible, sin embargo, hacer uso de otras APIs, como acceder a los contactos o al servicio de almacenamiento de ficheros OneDrive. Como parte de la PoC hemos implementado el acceso a OneDrive de forma gráfica, así que basta con hacer clic en el botón de OneDrive y acceder a la estructura de documentos contenida.

Figura 32: Accediendo a los documentos de las carpetas de OneDrive

Allí se pueden descargar todos los ficheros, navegar por las carpetas para ir buscando documentación e, incluso, lanzar consultas de búsquedas de palabras dentro de documentos, lo que ayudaría a encontrar la información de forma mucho más dirigida.

Figura 33: Con la API de OneDrive en Windows Live se pueden buscar docs

Al igual que en el caso de Microsoft Office365, en Windows Live es posible ver los permisos concedidos a las apps. En este caso, además es posible ver en detalle todos los permisos que se han concedido. Hay que ir a la zona de Aplicaciones y Servicios y allí estará la app.

Figura 34: Lista de Apps con permisos concedidos

Y si hacemos clic en detalles podremos ver la lista detallada de todos los permisos que se han concedido a esta app.

Figura 35: Lista de permisos concedidos a esta app

Dependiendo de cuál sea el IDP las funciones que se podrían realizar con este tipo de Apps maliciosas cambiará, pero al final el concepto es siempre el mismo. Conseguir un AccessToken para una serie de SCOPES e implementar el acceso.

Ask the Experts

Como hemos venido contando a lo largo de la serie, al final el gran problema es que hemos estado entrenando a los usuarios a detectar un tipo de ataque de phishing muy concreto en el que se solicitan las credenciales a través de una página web alojada en un servidor hackeado o falso en el que no se identifica de forma correcta el dominio del sitio, pero todas estas recomendaciones fallan cuando hablamos de un ataque de Spear App.

Figura 36: Pregunta a los expertos }:)

Cuando el usuario tiene que dar clic en YES - besar al sappo - lo hace en el sitio web original de Microsoft. Está en el dominio Microsoft.com, está bajo una conexión HTTPs, con un Certificado Digital de Validación Extendida - verde - que es correcto y pertenece a Microsoft, y además nunca se está solicitando ningún usuario ni contraseña.

Figura 37: La URL está dentro de Microsoft.com siempre

Además de todo eso, el filtro AntiPhishing implementado en el navegador tampoco puede detectar nada ya que la URL en la que se está es la correcta de Microsoft, y no va a bloquearla.  Hay que entrenar a los usuarios para detectar este tipo de ataques con Spear Apps, además de entrenarlos para detectar el Spear Phishing.

Soluciones: Awarenes & Cloud Analytics

Como posibles contramedidas a estas soluciones se presentan varias alternativas. Por supuesto, reforzar las tecnologías AntiSpam en los sistemas de correo electrónico debería ser parte de la estrategia, pero al basarnos en servicios de Cloud Pública como Office365 no hay demasiado que hacer en ese aspecto. Lo que sí que se puede hacer es una monitorización activa de las situaciones anómalas por medio de un análisis de los logs de los proveedores de Cloud, tal y como hacemos en nuestros servicios de Security Monitoring.

Figura 38: Security Monitoring de Eleven Paths basado integrado con LogTrust

En Microsoft Office 365 es posible acceder a los logs de actividad de todas las cuentas de un dominio corporativo para proceder a su análisis. Un Sistema de Detección de Intrusiones en Cloud que analice estos logs para detectar patrones anómalos o comportamientos no habituales podría detectar la aparición de una nueva app asociada a un buzón de correo.

Figura 39: Esquema de funcionamiento de Elastica de Blue Coat

Tecnologías como LogTrust que permite analizar todos los logs y crear reglas de uso o soluciones como Elastica de BlueCoat pueden dar soporte a este tipo de trabajos a realizar por los equipos de seguridad de una empresa.

Soluciones: Cifrado de Nube Pública

Por último, otra opción posible para evitar el robo de datos por medio de apps maliciosas podría ser el uso de soluciones de cifrado de datos de nube pública. En este caso, una solución como Vaultive que cifra Office 365 haría que, si una app consigue permisos para acceder a los correos mediante un AccessToken, esta app no pueda acceder a los datos descifrados de la cuenta si no lo hace vía el Gateway corporativo que realiza el cifrado y descifrado de los datos.

Figura 40: Cifrado de Office 365 con Gateway de Vaultive

En esta conferencia tienes un ejemplo de cómo funciona Vaultive en Office 365, que estuvieron en nuestro Security Innovation Day mostrando la integración que han hecho con Latch.


Figura 41: Cifrado de Office 365 con Vaultive

Si la app consiguiera el AccessToken, pero intentara acceder desde fuera de la red de la empresa - sin pasar por el gateway que cifra y descifra la nube pública - entonces obtendrías todos los datos de los mensajes de correo electrónico cifrados, tal y como se ve en la siguiente imagen.

Figura 42: El correo al que se accede está cifrado.

Una aplicación maliciosa podría seguir destrozando los correos o accediendo a la lista de remitentes, pero nunca podría leer los correos electrónicos del buzón, ya que están todos cifrados.

Conclusiones

Estas técnicas no son nuevas, y en el mundo del cibercrimen se han utilizado puntualmente en muchos escenarios de ataque. En el pasado ya se habló por aquí de ataques de SPAM Phishing para conseguir Tokens OAuth y es una de las recomendaciones de seguridad de Hotmail y Gmail que debes revisar para saber si te están espiando ahora, pero es importante que los responsables de identidades en las organizaciones sean totalmente conscientes de los peligros de estos ataques que son mucho mayores que los típicos ataques de Spear Phishing - ya de por sí muy peligrosos en las organizaciones -.

Autores: Chema Alonso & Pablo González

*****************************************************************************************
*****************************************************************************************

2 comentarios:

  1. Y colorín colarado, esta serie a terminado!
    Ahora voy a meter la cabeza bajo el grifo >.<

    Saludos y gracias de nuevo, soys unos achas!

    ResponderEliminar
  2. alguien me explica ese sappo verde que usa chema ,, se crea??? o se descarga?? en 2020 es diferente creo

    ResponderEliminar