Mostrando entradas con la etiqueta spoofing. Mostrar todas las entradas
Mostrando entradas con la etiqueta spoofing. Mostrar todas las entradas

jueves, agosto 26, 2021

On-the-fly: Una nueva herramienta para auditar redes TI, IoT & ICS

En el equipo de Ideas Locas tenemos algunas sorpresas para estas semanas. Una de ellas es la publicación de una nueva herramienta denominada on-the-fly, la cual ya está disponible en su Github. Pronto anunciaremos algo más sobre un par de herramientas y algunos sitios donde se podrán ver y donde realmente se darán a conocer. 

Figura 1: On-the-fly. Una nueva herramienta para auditar redes TI, IoT & ICS

Hoy queremos hablar del trabajo que ha sido sacar esta herramienta. La idea es proporciona una herramienta modular que permita al usuario ir configurando módulos que permitan realizar ataques de redes tanto en el mundo TI, IoT o ICS.
Algo que se debe tener claro es que la utilización de diferentes tecnologías entre estos dispositivos que nos rodean hace que la seguridad sea heterogénea. Cuando se afronta un Ethical Hacking en cualquier entorno, uno de los factores importantes es la red. La red conecta el mundo del Internet de las cosas, el mundo de los sistemas de control industrial y el mundo de las tecnologías de la información.

Figura 3: Libro de Ethical Hacking 2ª Edición

La irrupción del paradigma IoT, la conectividad del mundo OT / ICS y el crecimiento exponencial del mundo TI hacen que el pentester requiera conocer todos estos espacios para poder trabajar acorde a lo necesario. Una herramienta que centraliza diferentes técnicas de evaluación de vulnerabilidades o debilidades en una red es un concepto interesante. Dándole el concepto de modular se consigue lograr varias cosas:

1. Que cualquier usuario de la comunidad (hay que recordar que la herramienta es Open Source) puede colaborar y ampliar las posibilidades de ésta, gracias a la implementación de un módulo. 
 
2. Disponer de diferentes técnicas modernas para llevar a cabo este tipo de evaluación y que fácilmente sea ampliable. 
 
3. Lectura y entendimiento sencilla para poder implementar módulos y compartirlos con la comunidad.

Según podemos encontrar en el artículo de presentación de la herramienta

La herramienta ‘on-the-fly’ es un framework que proporciona funcionalidades para llevar a cabo tareas de pentesting en redes de datos en entornos IoT, ICS y TI. La herramienta permite ejecutar diferentes acciones de forma simultánea y de forma modular, simplificando el encadenamiento de acciones y otorgando la posibilidad de realizar diferentes ataques simultáneos.


on-the-fly’ tiene una arquitectura modular y dispone de más de 40 módulos con funcionalidades para el pentesting en entornos IoT, ICS & TI. Esto es algo interesante, ya que cualquier usuario podría ampliar la base de conocimiento de la herramienta. La arquitectura de la herramienta es la siguiente:

Figura 5: Arquitectura de "on the fly"

A continuación se enumeran los tipos de módulos principales:

Figura 6: Módulos de 'on-the-fly'

- Discovery: En este tipo de módulos se pueden encontrar funcionalidades para descubrir diferentes tipos de servicios y máquinas. Se utilizan diferentes protocolos: Modbus para descubrimiento ICS, TCP para descubrimiento de servicios y máquinas, MDNS y SSDP, etcétera.

- Manipulation: Este tipo de módulos permiten manipular ‘al vuelo’ (on-the-fly) el tráfico que pasa a través de la máquina. Son módulos especializados en cambiar valores que pueden observarse y manipularse. Permiten obtener ventaja, por ejemplo, manipulando las consultas a una base de datos y consiguiendo acceso.
 
- Server: Este tipo de módulos proporcionan al pentester la posibilidad de levanar un servicio o servidor y disponer de un servicio fake sobre SSDP, MQTT o DNS, por ejemplo.

- Spoof: Este tipo de módulo permite llevar a cabo ataques de spoofing entre diferentes máquinas. Por ejemplo, se puede hacer los clásicos ARP Spoofing, DNS Spoofing o NTP Spoofing, pero también ataques de spoofing en COAP y MQTT (IoT) y en Modbus (ICS).

- Pivot: Este tipo de módulo permite utilizar ‘on-the-fly’ como herramienta para pivotar en un pentest. Permite utilizar SOCKS4 y un port-forwarding sobre TCP para redirigir el tráfico. Una funcionalidad necesaria para el pentester.

- Sniffer: Este tipo de módulo permite llevar a cabo un ‘sniffing’ de paquetes. Hay módulos que vienen preparados para ‘sniffar’ tráfico concreto, y otros módulos permiten configurar qué se quiere sniffar, cómo y dónde almacenarlo.

- Examples: Este tipo de módulo muestra ejemplos de implementación de un módulo. Esto sirve para que un usuario pueda crear de manera sencilla su propio módulo con la funcionalidad que quiera.

Los comandos disponibles en la herramienta ‘on-the-fly’ son los siguientes que puedes ver en la siguiente captura. De ellos, el comando jobs muestra los módulos que generan ‘hilos’ y están en ejecución. Desde este comando podemos ‘terminar’ un módulo cuando se quiera. ‘on-the-fly’ tiene un sistema de gestión de hilos interno para poder ejecutar en background cualquier trabajo y poder finalizarlo cuando el usuario lo requiera.

Figura 7: Comandos de 'on-the-fly'

Esta funcionalidad es la que permite poder cargar diferentes módulos para un ataque de red y poder juntar funcionalidades a través del uso de hilos. La gestión se lleva a cabo a través del comando Jobs.

Figura 8: Descripción de los comandos de 'on-the-fly'

Próximamente hablaremos de cómo hacer un módulo en on-the-fly o ver algunas de las funcionalidades interesantes que podemos encontrar. Es un proyecto en fabricación y que ha visto la luz recientemente. Todos los comentarios de mejora serán bienvenidos. Hay mucho más detalle en su repositorio de Github. Para finalizar, os dejamos con los siguientes vídeos donde se puede ver un ataque de SSDP fake, engañando a los dispositivos de la red tal como se puede ver en el artículo sobre EvilSSDP.
 

Figura 9: Ataque SSDP Fake

Por otro lado, os dejamos un ejemplo de spoofing en Modbus.

Figura 10: Demo de Spoofing de Modbus con 'on-the-fly'

Han sido meses de ir haciendo poco a poco la herramienta, pensar los módulos e ir añadiendo funcionalidades. Todavía queda camino, ya que el proyecto puede acabar con un gran número de implementaciones. Gracias a todos los miembros del equipo que han ido participando en el proyecto. Casi todos hemos pasado por la herramienta para aportar nuestro granito de arena. Pronto más noticias :)

Saludos,

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advanced Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root",  “Pentesting con Powershell” y de "Empire: Hacking Avanzado en el Red Team", Microsoft MVP en Seguridad y Security Researcher en el equipo de "Ideas Locas" de la unidad CDCO de Telefónica.  Para consultas puedes usar el Buzón Público para contactar con Pablo González

Figura 11: Contactar con Pablo González

jueves, abril 15, 2021

WhatsApp y la desactivación de cuentas con un mensaje de e-mail

Hace un par de días publiqué en el blog el artículo de "WhatsApp: Cómo un atacante puede bloquear tu cuenta sin que la puedas desbloquear" escrito por Luis Márquez Carpintero y Ernesto Canales Pereña en el que se "weaponizan" dos características de seguridad de WhatsApp, para convertirlo en un ataque para la personas.

Figura 1: WhatsApp y la desactivación de cuentas con un mensaje de e-mail

Esto no es la primera que sucede, y es algo bastante más habitual de lo que las personas se pueden imaginar. En este tipo de escenarios, una medida de seguridad mal diseñada acaba convirtiéndose en un problema - en este caso de disponibilidad del servicio - para un usuario. Si quieres ver muchos ejemplos de esto, di una conferencia el año pasado sobre justo este tema que se llamaba "Weaponizing Features", donde explicaba muchos ejemplos de estas mismas características.

Figura 2: Conferencia de Weaponizing Features

En el caso concreto del bloqueo de la cuenta de WhatsApp, lo que hacen los investigadores es explotar o "weaponizar" de dos medidas de seguridad. Por un lado la de medida de seguridad que evita los ataques de fuerza bruta o adivinación de los códigos de activación de enviados por SMS, con una protección temporal para hacer inviable prácticamente en tiempo útil un ataque de esas características, y una segunda medida de protección - y esta es la más curiosa - por la que un usuario (cualquier) puede desactivar cualquier cuenta de WhatsApp, sea la suya o no, con un simple mensaje de correo electrónico.

Figura 3: Luis Márquez Carpintero, uno de los investigadores de este bug.

La explicación de cómo funciona este correo electrónico para desactivar una cuenta está en la web de WhtasApp, y existe para proteger la privacidad de un terminal ante robos o pérdidas de dirección de e-mail. Basta con que se envíe un mensaje de e-mail al la dirección de WhatsApp, y listo, la cuenta se desactiva.

La explicación de esta medida es fácil. Un usuario sufre el robo de su teléfono desbloqueado, y lo que debe hacer automáticamente es llamar para bloquear la SIM, urgentemente, y evitar así que se reciban llamadas o códigos de verificación por SMS, y luego pedir un cierre de sesión siguiendo el mecanismo antes explicado.
Lo que hace endiabladamente sutil y peligroso es esa regla de "usabilidad", por la que desde cualquier dirección de e-mail se pueda bloquear cualquier sesión en cualquier número de teléfono registrado en WhatsApp. Es verdad que, una dirección de e-mail solo puede usare una vez y para un solo número de teléfono, lo cual es un acierto como forma de mitigar un poco el ataque descrito en el artículo de hace dos días, con lo que una persona que quiera estar cerrando sesiones de WhatsApp debe estar creando mensajes de correo electrónico nuevos cada vez.

Figura 5: Sesión de WhatsApp cerrada por un e-mail

Por supuesto, esta medida es también fácilmente saltable para un atacante con hacer un poco de spoofing de e-mail, suplantando en cada petición una dirección de correo diferente, lo que la hace un poco inútil. Y es algo curioso, pues de nuevo, el correo electrónico - ese caos maravilloso que digo yo - se ha convertido no en un sistema de comunicación sino en algo más, que como ya explicaba en el artículo de "El e-mail ha muerto. ¡Larga vida al e-mail!", le hemos ido dando atribuciones más allá de la de ser un buzón de comunicación.

Llegados a este punto, lo que pasaba por mi cabeza durante el día de ayer, era... ¿cómo puede WhatsApp mitigar este ataque de una manera más racional? Pues usando características extras de protección a la cuenta y mitigación de weaponización.

Por ejemplo, si el usuario tiene un 2FA de WhatsApp asociado a un e-mail, que solo pueda ser desactivada la cuenta de esa dirección de e-mail. Esto dificultaría al atacante la explotación porque tendría que conocer y adivinar cuál es la dirección de e-mail configurada como 2FA. Cuando se configura ese 2FA ya se asocia, implícitamente, la seguridad de la cuenta a la seguridad del e-mail, y además es una solución bastante curiosa, porque realmente no es demasiado práctica si el e-mail está protegido por un 2FA basado en SMS, como os expliqué en el artículo de "WhatsApp y la paradoja de la SIM como Verificación en 1 paso", pero al menos sirve para eso, para asociar un e-mail a un cuenta de WhatsApp, que en este caso puede tener mucho sentido.
Luego, se pueden buscar otras soluciones de mitigación, como por ejemplo hacer un desafío al e-mail para garantizar que no es un correo electrónico suplantado. Para ello, el proceso de desactivación debería ser en dos pasos. Paso uno, se pide la desactivación de la cuenta. WhatsApp genera un OTP y se lo devuelve por e-mail a la dirección de correo electrónico que pide la petición de desactivación. El solicitante de la desactivación envía la confirmación de la desativación con el OTP, para así garantizar que ese correo existe y no está suplantado. Esto reduciría la facilidad de "weaponización" de este ataque.

Y por supuesto, buscar otras soluciones por las que la re-activación no se pueda ver bloqueada por un esquema similar, dando al usuario alguna otra forma de reactivar la cuenta y evitar el bloqueo de los códigos de verificación de forma tan sencilla y automatizable. 

En cualquier caso, este es un ejemplo de una medida de seguridad que se convierte en un problema para la vida del usuario, no solo para su usabilidad, sino también para la disponibilidad, por lo que debe servirnos como ejemplo y muestra del cuidado que debemos tener en cada implementación de una nueva medida de seguridad, que nuestro objetivo es hacerle la vida más segura y fácil, y no nada de lo contrario.

martes, mayo 05, 2020

EvilSSDP: Cómo poner dispositivos maliciosos en la red en un ejercicio de Red Team

El año pasado presentamos en BlackHat Europe 2019 una herramienta llamada HomePwn. A finales de 2018 estuve estudiando un poco el funcionamiento del protocolo SSDP. Un protocolo que sirve para que las máquinas puedan descubrir de manera sencilla otros dispositivos en una red. Es fácil, cuando cualquier usuario se compra, una tele, bombillas inteligentes, un NAS, una tostadora conectada a Internet, etcétera, tiene que existir un procedimiento sencillo para que los dispositivos se encuentren y conozcan los servicios que otros ofrecen.

Figura 1: EvilSSDP: Cómo poner dispositivos maliciosos en la red en un ejercicio de Red Team

Empecé a estudiar el SSDP gracias al ChromeCast, otro dispositivo de “conéctame a una red” y disfruta. Aquí surgió HomePwn, aunque algunos no lo sepan, y fue así como se hizo una prueba de concepto en Ruby. Más tarde, llevé el proyecto a mis compañeros de Ideas Locas donde se hizo un gran trabajo. El objetivo de HomePwn principal era aprovechar este tipo de protocolos y otros para enumerar dispositivos en una red, sobretodo, dispositivos que no fueran ordenadores al uso. El objetivo era integrar módulos de Ethical Hacking para dichos dispositivos.

Figura 2: HomePwn Paper

Más tarde, fueron surgiendo nuevas ideas y llegó la idea del pentesting a todos esos dispositivos que puedes tener en una empresa, que utilizan tecnologías que están en un nuestro día a día, pero que van más allá de un simple pentesting a una máquina al uso. Aparecieron módulos para tratar BLE, para jugar con NFC. HomePwn creció y llegó a BlackHat con un gran número de módulos y pruebas que mostraban el potencial de la herramienta. En el siguiente video se puede ver la demo de BlackHat con HomePwn.


Figura 3: Demo de HomePWN en BlackHat

En el artículo de hoy quería reflexionar sobre una de las opciones que se barajó con HomePwn y, que después de ver esta herramienta, se puede incorporar de manera sencilla. La herramienta EvilSSDP .

EvilSSDP

Esta herramienta implementa una prueba de concepto, mezclando el spoofing con el phishing con un objetivo: capturar credenciales mediante el spoofing de dispositivos en una red empresarial. La idea es muy interesante, ya que se abusa del protocolo SSDP para anunciar que hay un dispositivo en la red, cuando realmente éste no es tal.

Figura 4: EvilSSDP en GitHub

Es la herramienta EvilSSDP la que está “comportándose” como un dispositivo de red que no es. Cuando el usuario accede a dicho dispositivo se encontrará con un panel de login, digamos que “el que toque” en función de la plantilla o “spoofing” hecho.
Figura 5: Libro de "Empire: Hacking Avanzado en el Read Team" de 0xWord

Como se puede ver la idea es sencilla, pero bastante potente de cara a un Ethical Hacking o un ejercicio de Red Team. Como se indica en la descripción del proyecto EvilSSDP permite hacer spoof sobre SSDP y crear dispositivos UPnPfake”. El objetivo es “robar” credenciales e incluso jugar con el protocolo SMB para credenciales de red, en ese caso.

Probando EvilSSDP

La instalación es trivial, simplemente hacer un git clone sobre la URL y tendremos descargado EvilSSDP. Es importante que tengamos Python3 en el equipo, ya que es un requisito. Viendo la ayuda de la herramienta, tal y como se puede ver en la imagen donde lo hemos instalado en nuestro Kali Linux, queda claro la sencillez de la herramienta.

Figura 6: EvilSSDP en nuestro Kali Linux

La herramienta trae una carpeta denomina templates. Esta carpeta muestra las diferentes plantillas que pueden ser utilizadas para spoofear dispositivos. Este es el mecanismo por el que la herramienta puede crecer. Crear plantillas es algo sencillo y que, simplemente, con incluir en dicha carpeta estaría preparado. Al final, cada template consta de:
- El fichero XML device. Aquí viene la descripción de la lista de servicios y la URL de presentación. Apunta también al fichero present, en el tag “presentationURL”. 
- El fichero XML service. 
- El fichero HTML present. Es la web que se presentará y que será el phishing.
Visto. Como se puede ver es fácil crear un dispositivo “fake”. Lo que hay que hacer es generar el spoof en la red, pero esto no es complejo, hay que generar el tráfico SSDP dando a conocer dicho dispositivo. Los replies se generan cuando hay peticiones de descubrimiento del SSDP, por lo que cuando el usuario acceda a “Network” en un sistema Windows, éste hará el descubrimiento automático y nuestro EvilSSDP responderá.

Lanzando EvilSSDP

Ahora vamos a probar a lanzarlo. Lo primero va a ser crear un dispositivo “fake” de escáner. El típico recurso como una impresora o escáner que podemos tener conectado a la red local en cualquier sitio. La sintaxis de ejecución es muy sencilla:
evil_ssdp.py [interfaz de red] –template [template a utilizar]
Figura 7: Usando la template scanner

En este instante, ya tenemos EvilSSDP en activo. En la siguiente imagen, se puede ver el anuncio y vemos una petición que viene de la dirección IP 10.0.0.2. Esa máquina es un Windows 7 que tenemos preparado. Se puede ver fácilmente, por el User-Agent que utiliza. Solicita la descripción a través del GET.

Figura 8: El usuario hace clic

Cuando el usuario haga clic sobre el dispositivo, se abrirá un navegador y se redirige a la URL de la directiva “PresentationURL” del fichero device.xml. En ese momento, se le presenta una web falsa que, en caso de que el usuario introduzca datos, estos son recogidos. Este tipo de técnica puede ser muy útil en un Ethical Hacking o en un ejercicio de Red Team, como comenté anteriormente. En la imagen siguiente se pueden ver las credenciales introducidas en el navegador del  equipo cliente con Windows 7 en el apartado de  “[CREDS GIVEN]".

Figura 9: Redirección a la URL controlada y Credenciales obtenidas

Ahora vamos a hacer un ejemplo con Office365. La plantilla que viene en EvilSSDP es para spoofear un Backup Online de Office 365. El procedimiento es igual que el anterior, solo que cambiando la plantilla. Como se puede ver en la imagen, veremos un dispositivo llamado “Office365 Backups”.

Figura 10: Falso dispositivo de Office365 backups

Si hacemos doble clic en ese dispositivo se nos abrirá un navegador con la siguiente web. Se puede ver fácilmente el ataque de phishing (o no) por la dirección URL. Pero... ¿tienes a todos tus usuarios entrenados para descubrir el ataque?

Figura 11: Phishing de Office365 en la red local

Al introducir credenciales obtendremos algo parecido a lo que hicimos antes. En la siguiente imagen se puede ver todo el intercambio de mensajes que nos da la aplicación con este caso. De nuevo, vemos el CREDS GIVEN.

Figura 12: Captura de credenciales en el ataque de Phishing

Lo más interesante de todo es proceso es el potencial que tiene esto en un Ethical Hacking o ejercicio de Red Team, ya que puede ser utilizado para encontrar caminos en el test de intrusión que antes no teníamos. Los vectores “no comunes” pueden aportar una gran cantidad de casos de éxito, ya que la concienciación y el conocimiento de las empresas pueden ir en su contra ante el pentester.
Figura 13: Hacking Windows

Sin duda, curiosa técnica de Hacking Windows que debemos controlar y, además, la herramienta permite fácilmente reutilizarla para el caso de trabajo que tengamos entre manos. Es decir, si estás en un pentesting y tienes que hacer uso de ella, pero la plantilla o el caso de uso que necesitas no está, puedes fácilmente incorporarlo. Metemos la herramienta EvilSSDP en la mochila del pentester.

Saludos,

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advanced Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root",  “Pentesting con Powershell” y de "Empire: Hacking Avanzado en el Red Team", Microsoft MVP en Seguridad y Security Researcher en el equipo de "Ideas Locas" de la unidad CDCO de Telefónica.  Para consultas puedes usar el Buzón Público para contactar con Pablo González

Figura 14: Contactar con Pablo González

viernes, noviembre 03, 2017

Grabar en Snapchat vídeos e imágenes con autodestrución usando Snapprefs

Todos conocemos la aplicación de mensajes con autodestrucción Snapchat. Desde casi al inicio de la aplicación escribe una notificación cuando se hace una captura de pantalla del chat/fotos en una conversación. Y por este blog vimos cómo saltarse esta notificación con “Movie Recording de Quicktime” o usando una aplicación tipo "Reflector".

Figura 1: Grabar en Snapchat vídeos e imágenes con autodestrución usando Snapprefs

Desde Snapchat se pueden enviar imágenes o videos de varios segundos a un receptor, grabaciones recién tomadas en el momento de enviar un Snap o enviarlos desde la galería de nuestro terminal con una gran diferencia: las imágenes que se envíen desde la galería aparecerán como miniatura en la conversación de chat y las imágenes que se acaban de hacer aparecen como imágenes autodestructivas a los segundos que el emisor haya configurado. En definitiva, el receptor puede saber en cada momento desde donde se ha enviado la fotografía, pudiendo así, determinar si la imagen es verídica o es un engaño.

Figura 2: Imagen en miniatura e imagen en tocar para ver

El principal problema de esta aplicación es que, debido a su tecnología, la utilización que le dan muchos usuarios tiene que ver con el “Sexting”, una costumbre peligrosa que puede llevar a - si se practica con desconocidos - terminar en las famosas sextorsiones.

Ya vimos cómo grabar fotos, vídeos y conversaciones con autodestrucción de Snapchat usando Quick Time Movie Recording & Reflector, pero os voy a explicar otro método alternativo. Con esto un cibercriminal podría fácilmente engañar a otras personas haciéndose pasar por chicas o chicos y así conseguir el robo de información para futuros chantajes o problemas mayores.

La aplicación que quiero comentar es “Snapprefs”. Esta aplicación que se instala mediante un módulo de Xposed (necesario ser Root) puedes hacer todo esto arriba comentado y más. Teniendo la aplicación instalada cada vez que un usuario nos envíe una imagen o un video se guardará automáticamente en nuestra galería subdividido en carpetas por nombre de usuario.

Figura 3 : Snapprefs en GitHub

Las conversaciones de texto serán almacenadas en archivo de copias de seguridad y en la propia aplicación sin necesidad de que el usuario haga “pulsación larga”. Recordamos aquí que para guardas las conversaciones de texto, un usuario deberá dejar pulsado unos segundos en mensaje.

Con Snapchat existe la posibilidad de añadir una localización en cada imagen, o que aparezca nuestro usuario en un mapa como localización a tiempo real, como no iba a ser menos, desde Snapprefs se puede suplantar nuestra localización pudiendo engañar, una vez más, al usuario con la localización. Tan simple como añadir una latitud y una longitud y la otra persona creerá que te encuentras en ella.

Figura 4: SnapPrefs en Android

Podremos saltarnos la limitación de varios segundos, pudiendo ver las imágenes el tiempo que queramos o ver los videos tantas veces como queramos y otras muchas más opciones y por supuesto, sin que el usuario tenga ninguna constancia de ello. Si bien es cierto que la aplicación no salió con esas expectativas (o eso quiero creer) es una aplicación que se debe conocer, sabiendo que existe tenemos que tener cuidado con las cosas que enviamos por este tipo de aplicaciones. Veamos un ejemplo real con el siguiente video.


Figura 5: Demo de Snapprefs en Snapchat

Snapchat se dio cuenta hace unos meses de que esto estaba ocurriendo, para evitar que sucediera hizo varias limitaciones: “Una persona no podrá iniciar sesión si el Framework Xposed está instalado en el dispositivo” Pero es una limitación un poco absurda teniendo en cuenta que puede saltarse. Procedimiento:
1- Instalamos Snapchat e iniciamos sesión 
2- Instalamos Framework Xposed 
3- Descargamos Snapreffs 
4- ¡A funcionar!
Si realizamos los pasos en ese orden, la aplicación Snapprefs funcionará sin problema.

Autor: Alvaro Barahona (@AlvaroBS92)

viernes, abril 21, 2017

¿Cómo están las protecciones contra ataques de phishing en las entidades bancarias latinoamericanas?

Los cibercriminales usan las técnicas que más beneficios económicos les generen, sin importar que esta técnica sea antigua. Siempre que siga siendo efectiva será usada para obtener sus objetivos. Este es el caso de los ataques de phishing a los bancos, una técnica muy usual para engañar a los usuarios tanto en ataques de Spam Phishing (masivos y a día de hoy altamente detectados) o de Spear Phishing (dirigidos y mucho más peligrosos).

Para que sea más efectiva esta vieja técnica, los delincuentes utilizan otro mecanismo también con mucha antigüedad, que es la suplantación o "Spoofing" de direcciones de correo electrónico, con el cual los cibercriminales se hacen pasar por entidades o empresas reconocidas, principalmente del sector bancario.

Figura 1: ¿Cómo están las protecciones contra ataques de
phishing en las entidades bancarias latinoamericanas?

Para atenuar el impacto de estas técnicas, desde hace mucho tiempo se han venido desarrollando tecnologías de protección para detectar la suplantación de direcciones de e-mail, como los los mecanismos SPF (Sender Policy Framewok), SenderID, DKIM (Domain Keys Identified Mail) o DMARC (Domain-based Message Authentication, Reporting & Conformance).

Estas medidas de atenuación deben ser configuradas por todas las empresas, pero especialmente por las entidades bancarias, quienes son las principales víctimas de la suplantación de sus direcciones de correo electrónico.

Un estudio con la banca en Latinoamérica

Como estos ataques siguen generando impactos económicos y reputacionales muy grandes uno espera que todos estos controles estén correcta y estrictamente configurados. Para comprobar si esto era así, me decidí a hacer un análisis de estas medidas en las 25 principales entidades financieras de Latinoamérica, que por nacionalidad son:

Figura: Distribución por países de las organizaciones en el estudio

El análisis no es muy complicado ya que basta con mirar la configuración de los registros adecuados en el DNS, y para automatizarlo utilicé la herramienta de SpoofCheck, que permite validar la posibilidad de suplantar estos dominios de correo. Los resultados no fueron buenos, ya que como se puede ver desafortunadamente estas medidas no están implementadas de forma adecuada en la mayoría de los casos, pues solo 2 entidades tienen correctamente implementadas las medidas de SPF y DMARC.

Figura: Resutado de las pruebas con SpoofCheck en las 25 entidades

Al entrar al detalle de las configuraciones, es posible darse cuenta que la mayoría de las entidades sí configuran las medidas de mitigación que técnicamente se pueden implementar, pero no realizan un proceso de fortificación para hacer que estás sean robustas y que garanticen un control efectivo.

Como se puede ver en la gráfica solo existen 2 entidades que tienen ambos controles configurados de forma robusta, pero es más crítico que existen 3 entidades que no tienen implementado ninguno de los controles. Esto lo que evidencia que la implementación de los controles en el DNS no son correctamente configurados, exponiendo a los usuarios a ser víctimas de una suplantación.

Figura: Nivel de seguridad brindado por las medidas SPF y DMARC

En la Figura 4 se puede apreciar que los controles se marcan con una implementación débil, por lo que se revisan las sentencias en el DNS de cada uno de los dominios para sacar la característica que genera esta calificación en cada una de las herramientas.

En el caso de SPF, que es la medida de seguridad más veces configurada, se permite registrar dominios y direcciones IP autorizados para ser emitir correos electrónicos a nombre del dominio de la entidad y al final de la sentencia se indica la severidad con la que se debe tratar a los correos que no cumplan las anteriores características de origen descritas para ser rechazados.

Figura: Ejemplo de configuración de un registro SPF

Este mensaje final tiene cuatro niveles de calificación, desde que cualquiera pueda enviar hasta totalmente restrictiva, por lo que al analizar las sentencias de DNS configuradas por las entidades financieras se detecta que la mayoría tienen la configuración en lo que se denomina “softfail” que se interpreta usualmente como que es posible que ese origen sea un remitente válido.

La configuración de DMARC es mucho menos usada y solo 2 entidades la configuraron de forma que garantiza que la política aplicada por los receptores cuando un mensaje no contenga los datos de autenticación, reporte y conformidad, sea rechazada o puesta en cuarentena. Esta política es la que se configura en la sentencia de DNS donde se configura el DMARC.

Figura: Flujo de funcionamiento de DMARC

Al revisar la configuración en los dominios de las entidades financieras, se encuentra que solo dos entidades tienen configurada la política que implica rechazo o cuarentena y en 10 entidades la política esta marcada como “none” lo que permite que el correo fraudulento pase sin que se le aplique una restricción.

Reflexiones finales

En conclusión, las principales entidades financieras de Latinoamérica tienen controles implementados para evitar que sus clientes sean víctimas de ciberdelincuentes que usando el correo electrónico, sin embargo, la efectividad de estos controles no es todo lo robusta que podría ser debido a que usan configuraciones que no garantizan la implementación de políticas de restricción para los servidores que reciben correos fraudulentos. Cuanto mejor estén las medidas de seguridad, más alto será el PCL (Phishing Confidence Level) de los mensajes de correo y más fácil será detectarlos en los sistemas de seguridad de los servidores de correo electrónico.

Figura: Valores PCL utilizados en Outllook para detectar Spam/Spear Phishing

En muchos clientes, con nuestro sistema de pentesting persistente, detectamos la misma situación, y esto suele ser debido a una mala gestión de los canales de comunicación vía e-mail de la empresa. Es decir, se suelen dar casos en los que las newsletters, las listas de distribución de e-mails o campañas concretas de comunicación vía correo electrónico, se delegan en terceras empresas, que envían mensajes desde servidores no corporativos, que adolecen de medidas de seguridad similares, lo que hace al final que haya que rebajar la configuración global de seguridad.

Y esto genera muchos problemas en las empresas que se preguntan después ¿por qué mi correo llega como spam? Una configuración robusta y segura de las medidas de seguridad no solo ayuda a mitigar el Spam Phishing, el Spear Phishing y el Spoofing, sino que además reduce los SCL (Spam Confidence Level) de los mensajes que son enviados desde la compañía lo que ayuda a tener un mejor negocio electrónico.

Por último, hay que recalcar que estos mecanismos de seguridad no son nada más que una pequeña pieza dentro de la estrategia de seguridad contra el fraude y los ataques de phishing dentro de una organización financiera, ya que se utilizan muchos otros sistemas de vigilancia digital, alerta y detección temprana desde los SOCs y controles en el uso de credenciales robadas, así que no se puede tomar estas configuraciones como una medida final de seguridad global de la entidad, aunque su configuración robusta ayuda, como ya se ha dicho, a mejorar las protecciones globales.

Autor: Diego Samuel Espitia Montenegro
Chief Security Ambassador – CSA (Colombia) @ElevenPaths

miércoles, junio 15, 2016

Cómo hacer que el iPhone de tu enemigo viaje en el tiempo {y en el espacio} #GPS #iPhone #Hacking #SDR

La historia que os voy a contar es un ejemplo de cómo los detalles de seguridad en las tecnologías pueden acabar por tumbar muchas de las conclusiones que damos por ciertas usándolas. En el caso de hoy, voy a hablaros otra vez de algo que muchos ya saben que es inseguro, pero que sin embargo es parte fundamental de nuestras vidas hoy en día, las señales GPS que reciben nuestros dispositivos. De hoy va la historia en la que ha estado trabajando el investigador español JAEP Erratum y que os voy a explicar.

Figura 1: Cómo hacer que el iPhone de tu enemigo viaje en el tiempo {y en el espacio} con GPS Spoofing

Las señales GPS las utilizamos en todos los servicios de navegación que llevan nuestros dispositivos, desde los servicios como Waze, Google Maps, Apple Maps o TomTom, hasta los detectores de radares de velocidad que se venden y van en cualquier lugar del coche para avisar al conductor de un posible control oculto en la carretera. Pero no solo eso, se utilizan en servicios de las redes sociales, en publicidad dirigida, en el mundo de los juegos, etc...

Ataques SDR-RTL

Esta señal GPS, como hemos visto muchas veces, se puede falsificar fácilmente en el terminal por el dueño del mismo, por lo que algunos servicios podrían ser abusados. Este fue el ejemplo del caso de Tinder, lo que permite a una persona localizar a otra en cualquier lugar del mundo, ligar con todo un país o perseguir a una víctima con una especie de drone de vigilancia. También, manipulando la señal en el terminal podría afectar a la validez legal de los de certificación digital de fotografías tomadas en una ubicación, como en el caso de Stamphoto, pero esto, como vamos a ver, también se puede hacer remotamente con un ataque de SDR-RTL.


Figura 2: Configurar ataque SDR-RTL para localizar satélites

Las tecnologías de SDR (Software Defined Radio) permiten a un atacante emitir y escuchar señales en frecuencias del espectro utilizadas por diferentes tecnologías que dan soporte a comunicaciones de toda índole y son una pieza clave en el Hacking de Comunicaciones Móviles. Como ya vimos, un ejemplo sencillo es utilizar un sistema SDR-RTL para poder escuchar las conversaciones GSM y hasta poder capturar los mensajes SMS que se envían por la red. Esto, podría ser utilizado para robar cuentas de de servicios de Internet protegidas por mensajes SMS si el atacante está cerca de la antena por la que la víctima va a recibir la comunicación.

Ataques GPS Spoofing con SDR

También se pueden atacar otro tipo de señales, como las del mundo IoT - de las que podremos hablar largo y tendido en otros artículos, pero hoy, como os podéis imaginar por el cariz que lleva la historia, las señales de las que hay que hablar son las de GPS, que no están cifradas ni protegidas. Esto permite que cualquier atacante que esté cerca tuya pueda inyectarte una señal falsa GPS en el terminal, mandando tu dispositivo GPS a cualquier ubicación del mundo y, lo que es peor, a cualquier fecha.

Figura 3: Ataques de GPS Spoofing con Open Source Projects

Esto es porque la señal GPS también se utiliza en muchos terminales para configurar la fecha y la hora - como por ejemplo los dispositivos iOS -. En esta conferencia impartida en DefCON 23 podéis ver todos los ataques SDR contra GPS que se pueden realizar. 36 minutos de learn&fun.


Figura 4: Ataques GPS Spoofing

Manipular la fecha y la hora vía GPS de un terminal iPhone puede hacer que todas las apps que tenga un sistema empiecen a fallar, dejen de funcionar, o comprometan a una persona a la que un atacante puede situar en un lugar y una fecha concreta ante los ojos de un analista forense que tire de herramientas para analizar los datos de un terminal.

Ataques GPS Spoofing con SDR a iPhone

En este vídeo hecho por JAEP Erratum se puede ver cómo remotamente, un atacante puede enviar señales falsas GPS a una víctima con su iPhone - utilizando la herramienta sdr-gps-sim y tenerla paseando por Barcelona, París o cualquier lugar del mundo.



Figura 5: Demo de ataque GPS Spoofing a iPhone con SDR

Por supuesto, este ataque afectaría a cualquier servicio de certificación de ubicaciones GPS, o a los sistemas sociales - podrías tener a tu amigo adicto Tinder toda una noche buscando pareja con chicas del otro lado del mundo -, o en el caso de iOS 5 la señal GPS también se podía cambiar desde las señales 2G/Edge/GPRS, y esto producía un efecto muy curioso en iPad e iPhone, ya que se engañaba al sistema y te permitía acceder a las fotografías sin desbloquear la pantalla del terminal.

¿Te imaginas que alguien desde un puente de una autopista justo antes de una salida se pusiera a enviar señales GPS que situaran a los coches desplazados 300 metros? Podríamos estar hablando de la generación de un problema serio, ya que todos los conductores podrían sufrir una distracción de alto peligro. Pero es que se puede hacer que el terminal iPhone deje de funcionar con todas su apps. Por ejemplo, en este otro vídeo de JAEP Erratum se puede ver cómo enviar a cualquier iPhone al futuro. En concreto, al 16 de Agosto del año 2029, justo al lado del Santiago Bernabéu en la bella ciudad de Madrid - supongo que para ver algún partido del Real Madrid -.


Figura 6: Demo (D.o.S.) de cambio de fecha y ubicación GPS a iPhone

Dicho esto, ya hay muchas iniciativas para cambiar los sistemas GPS por sistemas más robustos en los que los terminales clientes validen a los emisores de la señal GPS, y hay medidas de contención para detectar señales falsas en los sistemas operativos de los smartphones, pero la realidad es que como se puede ver, a día de hoy las cosas están como están.

Saludos Malignos!

lunes, junio 13, 2016

Email Sherlock: Doxing y ataques APT de Spear Phishing o de Spear Apps

Email Sherlock es un servicio que nos permite realizar búsquedas de cuentas y perfiles asociadas a una dirección de correo electrónico con el fin de descubrir en qué redes y, si es posible, quién se encuentra detrás de ella. En un primer vistazo podemos entender que Email Sherlock nos permite obtener información de dónde una cuenta de correo se encuentra dada de alta, además de otros detalles relativos al alias de correo, como datos del dominio del e-mail o sitios en los que el usuario está en uso.

Figura 1: Email Sherlock - Doxing y ataques APT de Spear Phishing o de Spear Apps

El objetivo es sencillo, en una investigación se trata de hacer un doxing y estrechar el cerco y, sabiendo que tiene una cuenta de un determinado servicio, un potencial atacante podría realizar desde ataques de Spear Phishing adaptados a una red social de la que se sabe que forma parte, o un miembro de los cuerpos de seguridad en plena investigación policial solicitar datos de esa cuenta. Este tipo de utilidades son muy útiles para las investigaciones OSINT, tal y como se cuenta en la charla dedicada a este tema por nuestro compañero Diego Samuel Espitia, CSA de Eleven Paths en Colombia.


Figura 2: Eleven Paths Talks [11] - Técnicas OSINT

Es un servicio que se puede consumir vía página web, pero además también puedes encontrar la aplicación en formato móvil en Google Play Store y en AppStore para iPhone. Gracias a esta herramienta podremos obtener información personal de quién se encuentra detrás de una cuenta de correo electrónico, podremos conocer su nombre completo, su localización, profesión, hobbies y muchas cosas más - dependiendo de los servicios -.

Figura 3: Email Sherlock para Android

En principio puede no ser sencillo conocer dicha información, pero al saber en qué redes sociales está dado de alta, se podría verificar si el perfil está abierto y conocer información de él. Por supuesto, también te puede ser útil para saber en qué redes has dejado tus rastros y debes eliminarlo... si lo deseas.

¿Cómo funciona el proceso de Email Sherlock?

Tras abrir la página en nuestro navegador observaremos un campo donde introducir la dirección de e-mail objeto de nuestra búsqueda, a continuación pulsaremos sobre “GO” y comenzara la recopilación de información, este proceso tardara un poco y al acabar nos mostrará en pantalla los resultados de nuestro análisis. Entre otras cosas podremos verificar que la cuenta introducida es válida, el nombre completo de su propietario y si se han encontrado otras cuentas asociadas a este usuario en diversas redes sociales.

Figura 4: También permite buscar información en bases de datos del gobierno

Normalmente estos ataques se hacen aprovechándose de los leaks de información que se dan en estos servicios en las procesos de login, de registro de una cuenta nueva o de se me ha olvidado la contraseña. Por ejemplo, en Facebook, si la cuenta existe es posible acceder a información del usuario aún no teniendo la contraseña con un proceso de login incorrecto - igual que se hace con el número de teléfono -. Otras redes sociales dan un mensaje distinto en el proceso de recuperación de contraseña cuando la dirección de correo electrónico existe a cuando no, etcétera. Teniendo todos ellos catalogados, te sale el servicio de Email Sherlock.

Figura 5: Información asociada a la cuenta de e-mail en Gravatar

Gracias a la información sobre las redes sociales en las que el usuario tiene una cuenta, un atacante podría iniciar un ataque de Spear Phishing suplantando la dirección de un sitio donde tenga cuenta. Si ademas es una información que él no ha publicado en ningún otro sitio, el efecto puede ser mayor y hacerlo más propenso a caer.

Figura 6: Información asociada a la cuenta de e-mail en Vimeo

Estos ataques son muy comunes y en muchas ocasiones pueden ser muy peligrosos y si por medio de estos e-mails se consigue inyectar una Spear App, bastaría para conseguir dar un paso de gigante. Es decir, si descubrimos que un usuario tiene una cuenta en Vimeo o Gravatar, tal vez sea útil enviar un correo con un Spear App para robar el token OAuth de esa cuenta de Outlook mediante una oferta irrechazable de una nueva app premium de Gravatar o Vimeo para su correo electrónico.

Figura 7: Resultados de búsqueda con UserSherlock

La página también nos muestra con más detalle si el usuario tiene perfiles en algunas de las plataformas más conocidas de la red revisando los nombres de los usuarios enlazando otro servicio útil de OSINT llamado UserSherlock. En ese caso no se puede garantizar que sean los usuarios asociados a esa dirección de correo electrónico, pero es información útil que quizá merece la pena revisar una a una.

Autor: Sergio Sancho Azcoitia

Entrada destacada

+300 referencias a papers, posts y talks de Hacking & Security con Inteligencia Artificial

Hace un mes comencé a recuperar en un post mi interés en los últimos años, donde he publicado muchos artículos en este blog , y he dejado mu...

Entradas populares