1 puntos por GN⁺ 2023-12-23 | 1 comentarios | Compartir por WhatsApp

Proceso de descubrimiento

  • Se investigó cómo realizar solicitudes HTTP mediante la función de vista previa de enlaces en WhatsApp.
  • Se confirmó que el enlace y la vista previa se envían por separado, y se logró crear un mensaje con una vista previa distinta al enlace real aprovechando esto.

Problema #1 - Inconsistencia en la vista previa del enlace

  • Se analizaron el enlace y los datos de vista previa incluidos en los mensajes de WhatsApp para encontrar una forma de generar una discrepancia.
  • Se logró interceptar y modificar un mensaje para enviar uno en el que la vista previa y el enlace real eran diferentes.

Problema #2 - Suplantación de enlaces (2K2E)

  • Se experimentó con métodos para cambiar la representación del texto usando caracteres Unicode.
  • Se desarrolló una forma de mostrar un enlace en orden inverso usando el carácter U+202E (Right-To-Left Override), haciendo que una URL falsa pareciera una real.

Resultado final

  • Se creó una URL que parecía ser de Instagram, pero en realidad llevaba al blog del atacante.
  • Con esto, se descubrió una vulnerabilidad que puede hacer que los usuarios crean que están haciendo clic en un enlace legítimo.

Escenario de ataque

  • El atacante compra un dominio falso y crea un mensaje que usa la vista previa de un dominio legítimo.
  • Manipula el mensaje eliminando la propiedad matchedText y cambiando la propiedad text por el carácter U+202E y una URL falsa.
  • Luego envía ese mensaje manipulado a la víctima.

Respuesta de Meta

  • Meta cuenta con un sistema que puede ajustar dinámicamente la lógica de normalización de URL, ya que da soporte a distintas plataformas y entornos.
  • Sin embargo, Meta no parece tener intención de resolver este problema de seguridad y solo respondería si se detecta como spam.

Mitigación

  • Como Meta no tiene intención de resolver este problema, no se puede confiar en los enlaces dentro de WhatsApp.
  • Antes de hacer clic en un enlace, se debe copiar y revisar en la vista previa del portapapeles la dirección del enlace ya saneada del carácter U+202E.

Actualización

  • Además de WhatsApp, existen otros servicios vulnerables a 2K2E por no realizar un saneamiento adecuado.

Opinión de GN⁺:

  • Lo más importante de este artículo es la vulnerabilidad de clickjacking descubierta en WhatsApp, con una explicación detallada de cómo un ataque puede hacer que los usuarios hagan clic en enlaces falsos distintos del enlace real.
  • Este artículo resulta interesante porque se encontró una vulnerabilidad de seguridad inesperada en una plataforma de mensajería en la que normalmente se confía, lo que recuerda a los usuarios por qué siempre deben tener cuidado antes de hacer clic en un enlace.
  • Además, la respuesta de Meta muestra que no tiene intención de abordar activamente este problema, lo que subraya la necesidad de que los propios usuarios extremen sus precauciones de seguridad.

1 comentarios

 
GN⁺ 2023-12-23
Opiniones de Hacker News
  • Es una combinación ingeniosa de abuso de funciones, pero se considera que el impacto de seguridad es bajo porque, a menos que el atacante sea la policía, una agencia de inteligencia o similar, requiere ataques adicionales. Para ser técnicamente precisos, no creo que sea apropiado llamarlo "clickjacking". El clickjacking se refiere a una técnica específica: superponer marcos HTML invisibles sobre otro contenido.
  • El clickjacking significa que un elemento distinto al que el usuario intenta hacer clic captura el evento de clic. El atacante puede detectar en qué hizo clic el usuario. Lo que encontró el autor original está genial, y en realidad descubrió una forma de cambiar la visualización de enlaces en otro sistema que no es clickjacking.
  • Los usuarios tienen dificultades para reconocer dominios al hacer clic en enlaces, y muchas personas no lo entienden ni pueden distinguirlos. Aunque el enlace sea rastreable y parezca sospechoso, nadie señala el problema.
  • Meta debería reconocer y resolver el problema de que la URL del mensaje y la URL de la vista previa puedan ser distintas. Puede que esto exista para deshacer acortadores de URL, pero Meta y WhatsApp deberían poder idear una solución inteligente.
  • El verdadero problema no es WhatsApp ni los caracteres Unicode invertidos, sino que las URL en sí son difíciles. Incluso una URL simple como visa.securesite.com engaña a mucha gente. No parece que vaya a haber una buena solución en el futuro cercano.
  • Decepciona que Meta no haya resuelto este problema ni haya pagado una recompensa por errores al investigador.
  • Es interesante que este ataque haya sido clasificado como "ingeniería inversa".
  • RTL ha sido una gran fuente de vulnerabilidades de seguridad desde que existe. Debería haber una configuración en los sistemas operativos para desactivar RTL y así evitar que las personas que no lo usan queden expuestas al riesgo.
  • El ataque es muy ingenioso y el texto es fácil de leer y entender. Hay una pregunta básica sobre si se usó un depurador en la app web de WhatsApp, si se aplicó en el teléfono o si se usó un emulador.
  • Gracias por compartir una idea y una vulnerabilidad interesantes. Es un resumen conciso y claro.
  • Se confirma que el enlace y la vista previa se envían por separado. El hecho de que la interfaz obligue al usuario a comparar el enlace y la vista previa para mantenerse seguro es un problema mayor.