Investigación de Symantec revela falla que afecta WhatsApp y Telegram
Symantec, la empresa de ciber seguridad líder en el mundo, realizó una
nueva investigación, donde presentó que los archivos de medios de WhatsApp y
Telegram podrían ser expuestos y manipulados por actores maliciosos.
La falla de seguridad, denominada "Media File
Jacking", afecta a WhatsApp en Android de forma
predeterminada, y a Telegram en Android si ciertas funciones están habilitadas.
Se debe a que transcurre el tiempo entre el momento en que los archivos
multimedia recibidos a través de las aplicaciones se escriben en el disco y
cuando se cargan en la interfaz de usuario de chat (UI) de las aplicaciones
para que los usuarios las consuman. Este lapso de tiempo crítico presenta una
oportunidad para que los actores malintencionados intervengan y manipulen los
archivos multimedia sin el conocimiento del usuario. Si se explota la falla de
seguridad, un atacante malintencionado podría hacer un mal uso y manipular
información confidencial, como fotos y videos personales, documentos
corporativos, facturas y notas de voz.
La amenaza de Media File Jacking es
especialmente preocupante a la luz de la percepción común de que la nueva
generación de aplicaciones de mensajería instantánea es inmune a la
manipulación del contenido y los riesgos de privacidad, gracias a la utilización
de mecanismos de seguridad como el cifrado de punta a punta. Los usuarios
generalmente confían en aplicaciones de mensajería instantánea como WhatsApp y
Telegram para proteger la integridad tanto de la identidad del remitente como
del contenido del mensaje en sí. Esto contrasta con aplicaciones/protocolos más
antiguos, como SMS, que se sabe que son falsificados con facilidad.
Sin embargo, como hemos mencionado en el pasado, ningún código es inmune
a las vulnerabilidades de seguridad. Si bien el cifrado de punta a punta es un
mecanismo eficaz para garantizar la integridad de las comunicaciones, este no
es suficiente si existen vulnerabilidades a nivel de aplicación en el código.
Lo que descubrimos en la investigación de Media File Jacking es
que los atacantes pueden manipular con éxito los archivos multimedia
aprovechando las fallas lógicas de las aplicaciones, que se producen antes y/o
después de que el contenido se haya cifrado en tránsito.
Symantec exploró la falla de seguridad, Media File Jacking,
y su impacto. Los detalles a continuación:
Antecedentes técnicos
Las aplicaciones de Android pueden almacenar archivos y datos en dos
ubicaciones de almacenamiento: almacenamiento interno y externo. Los archivos
guardados en el almacenamiento interno son accesibles solo por la propia
aplicación, lo que significa que otras aplicaciones no pueden acceder a ellos.
Los archivos guardados en un directorio público de almacenamiento externo son
legibles/grabables en todo el mundo, por lo que pueden ser modificados por
otras aplicaciones o usuarios fuera del control de la aplicación. De acuerdo
con la documentación para desarrolladores
de Android, "el almacenamiento interno es mejor cuando desea asegurarse de
que ni el usuario ni otras aplicaciones pueden acceder a sus archivos".
Por el contrario, "el almacenamiento externo es el mejor lugar para los
archivos que no requieren restricciones de acceso y para los archivos que desea
compartir con otras aplicaciones o permitir que el usuario acceda con una
computadora".
De forma predeterminada, WhatsApp almacena los archivos multimedia
recibidos por un dispositivo en un almacenamiento externo, en la siguiente
ruta: /storage/emulated/0/WhatsApp/Media/. En Telegram, si un usuario habilita
la función "Guardar en galería", bajo el supuesto de que esto es
seguro y sin comprender sus ramificaciones indirectas, Telegram almacenará
archivos de manera similar en: /storage/emulated/0/Telegram/. Ambos son
directorios públicos. Las aplicaciones cargan los archivos recibidos de los
directorios públicos para que los usuarios los vean en la interfaz de chat,
cuando ingresan al chat correspondiente.
El hecho de que los archivos se almacenan y se cargan desde el
almacenamiento externo sin los mecanismos de seguridad adecuados, se pueden
poner en riesgo otras aplicaciones con permisos de almacenamiento de escritura
externo y comprometer la integridad de los archivos multimedia. El
almacenamiento de escritura externo (WRITE_EXTERNAL_STORAGE) es un permiso
común solicitado por las aplicaciones de Android, con más de un millón de
aplicaciones en Google Play que tienen este acceso. De hecho, según nuestros
datos de aplicaciones internas, encontramos que casi el 50% de las aplicaciones
de un dispositivo tienen este permiso.
Cuando investigamos el flujo de cómo se manejan los archivos multimedia
en WhatsApp y Telegram, encontramos que en el tiempo transcurrido entre la
recepción de los archivos en un dispositivo y su escritura en el disco (PASO
1), y cuando se cargan para que los usuarios los consuman a través de las
aplicaciones (PASO 3), surge la oportunidad ideal de explotación: el malware puede
analizar y manipular instantáneamente los archivos (o simplemente reemplazarlos
con los archivos elegidos por el atacante) para obtener beneficios maliciosos
(PASO 2).
Piense en ello como una carrera entre
el atacante y la aplicación que carga los archivos. Si el atacante accede
primero a los archivos (esto puede suceder casi en tiempo real si el malware
monitorea los directorios públicos para detectar cambios) los destinatarios
verán los archivos manipulados sin poder ver los originales. Además, la
miniatura que aparece en la notificación que ven los usuarios también mostrará
la imagen o el archivo manipulados, por lo que los destinatarios no tendrán
ninguna indicación de que se hayan cambiado los archivos. Además, los datos se
pueden manipular en WhatsApp al enviar archivos, lo que significa que el ataque
se lanza en el dispositivo del remitente, y cuando se reciben archivos, con el
ataque en el dispositivo receptor.
Como se comentó, el permiso WRITE_EXTERNAL_STORAGE es muy común entre
las aplicaciones de Android y los usuarios generalmente no dudan en otorgar el
permiso como parte del proceso de incorporación. Por lo tanto, es posible que,
sin saberlo, un usuario pueda instalar el malware antes mencionado en lugar de
instalar otra aplicación que solicite permisos más agresivos (como sensores de
dispositivos críticos o acceso a recursos). En este caso, un usuario puede ser
más cauteloso antes de aceptar la instalación.
Además, la vulnerabilidad de Media File Jacking apunta a un problema
mayor del uso no seguro de los recursos de almacenamiento por parte de los
desarrolladores de aplicaciones. En 2018, los investigadores descubrieron una
falla similar relacionada con cómo algunas aplicaciones de Android utilizan el
almacenamiento externo, lo que abre la puerta a la manipulación de datos por
parte de los atacantes. Un ataque llamado Hombre en el disco puede ocurrir
cuando los desarrolladores no toman las precauciones de seguridad cuando
almacenan archivos en un almacenamiento externo. Esto puede dar como resultado
la instalación silenciosa de aplicaciones potencialmente maliciosas y la denegación
de servicios para las aplicaciones.
Impacto
Veamos algunos escenarios donde los atacantes podrían explotar esta
vulnerabilidad a víctimas de estafa:
1. Manipulación de imagen. En este escenario, una aplicación
aparentemente inocente, pero en realidad maliciosa, descargada por un usuario
puede manipular fotos personales casi en tiempo real y sin que la víctima lo
sepa. La aplicación se ejecuta en segundo plano y realiza un ataque de Media
File Jacking mientras la víctima usa WhatsApp. Esta supervisa las fotos
recibidas a través de la aplicación de mensajería instantánea, identifica caras
en las fotos y las reemplaza con otra cosa, como otras caras u objetos. Un
usuario de WhatsApp puede enviar una foto familiar a uno de sus contactos, pero
lo que ve el destinatario es en realidad una foto modificada. Si bien este
ataque puede parecer trivial y solo una molestia, muestra la viabilidad de
manipular imágenes sobre la marcha. En un escenario similar con consecuencias
de mayor alcance, los archivos de medios de un político que se postula para un
cargo o un ejecutivo de la empresa podrían manipularse, lo que permitiría a los
atacantes extorsionar a sus objetivos.
2. Manipulación de pago. En uno de los ataques más dañinos de Media
File Jacking, un actor malintencionado puede manipular una factura enviada por
un proveedor a un cliente para engañar al cliente para que realice un pago a
una cuenta ilegítima. Al igual que en el escenario anterior, una aplicación que
parece ser legítima pero que en realidad es maliciosa, observa los archivos de
facturas en PDF recibidos a través de WhatsApp y luego intercambia la
información de la cuenta bancaria que se muestra en la factura con la del
malintencionado. El cliente recibe la factura que esperaba pero no tiene
conocimiento de que se haya modificado. En el momento en que se exponga el
engaño, el dinero habrá desaparecido. Para empeorar las cosas, la piratería de
la factura podría ser ampliamente distribuida de forma no dirigida, buscando
cualquier factura que manipular, afectando a múltiples víctimas que usan
aplicaciones de mensajería instantánea como WhatsApp para realizar negocios.
3. Falsificación de mensajes de audio. En este escenario, un atacante
explota las relaciones de confianza entre los empleados de una organización. Un
CEO le envía a su CFO un mensaje de audio, a través de WhatsApp, solicitando
diapositivas actualizadas para una reunión de directorio la próxima semana. El
atacante, utilizando la reconstrucción de voz a través de la tecnología de
aprendizaje profundo, algo que se está convirtiendo cada vez más factible hoy, modifica
el archivo de audio original para comunicarse con el CFO, en la propia voz del
CEO, de que un pago debe transferirse de inmediato a una parte ficticia, que de
hecho es el atacante. El malintencionado no solo manipula las comunicaciones
del CEO, sino que va un paso más allá para reconstruir su voz, lo que resulta
en una técnica de engaño muy efectiva. El mensaje original del CEO se reemplaza
cuando llega al teléfono del CFO. Lo que el CFO escucha al final es un mensaje de
audio creíble de su jefe para hacer un pago, algo que un empleado inconsciente
puede percibir fácilmente como una solicitud legítima.
4. Otro ejemplo interesante en el que podemos encontrar un ataque de
Media File Jacking son las noticias falsas. En Telegram, los administradores
utilizan el concepto de "canales" para transmitir mensajes a un
número ilimitado de suscriptores que consumen el contenido publicado. Un
atacante puede cambiar los archivos multimedia que aparecen en el canal de
información en tiempo real. Consideremos, por ejemplo, una red de noticias de
confianza que mantiene un canal de Telegram. Los suscriptores confían en el
canal para obtener noticias creíbles. Un atacante puede comunicar falsedades en
el canal manipulando los archivos multimedia recibidos allí. Curiosamente, esto
puede suceder sin el conocimiento y consentimiento tanto del propietario del
canal como de la víctima final. Este ejemplo ilustra cómo el atacante puede
dañar al remitente y al destinatario: los receptores consumen noticias falsas y
la reputación o credibilidad del propietario del canal se ve afectada.
Cómo los desarrolladores de aplicaciones pueden protegerse contra la
amenaza
Como se mencionó anteriormente, WhatsApp guarda los archivos en el
almacenamiento externo automáticamente, mientras que Telegram lo hace cuando la
función "Guardar en Galería" está habilitada. En ambos casos, sin
embargo, ninguna de las aplicaciones tiene medidas para proteger a sus usuarios
de un ataque de Media File Jacking.
Para garantizar que los archivos multimedia se mantengan a salvo de
actores maliciosos, recomendamos las siguientes medidas:
· Valide la
integridad de los archivos: Almacene en un archivo de metadatos
un valor hash para cada archivo multimedia recibido antes de escribirlo en el
disco. Luego, confirme que el archivo no se haya cambiado (es decir, el hash es
el mismo) antes de que la aplicación cargue el archivo multimedia en la parte
correspondiente del chat para que los usuarios lo vean. Este paso puede ayudar
a los desarrolladores a validar que los archivos no se manipularon antes de
cargarlos. Este enfoque equilibra las necesidades de seguridad (protección
contra ataques de Media File Jacking) y funcionalidad (por ejemplo, soporte de
aplicaciones de respaldos de terceros) de las aplicaciones de mensajería
instantánea.
· Almacenamiento
interno: Si es posible, almacene los archivos multimedia en un directorio no
público, como el almacenamiento interno. Esta es una medida que algunas
aplicaciones de mensajería instantánea han elegido.
· Cifrado: Esfuércese por
cifrar archivos confidenciales, como suele hacerse con los mensajes de texto en
las soluciones de mensajería instantánea modernas. Esta medida, al igual que la
anterior, protegerá mejor los archivos de la exposición y manipulación. El
inconveniente es que otras aplicaciones, como las aplicaciones de respaldo de
fotos, no podrán acceder fácilmente a estos archivos.
Con el lanzamiento de Android Q, Google planea implementar cambios en la
forma en que las aplicaciones acceden a los archivos en el almacenamiento
externo de un dispositivo. Android’s planned El almacenamiento de ámbito de Android es
más restrictivo, lo que puede ayudar a mitigar amenazas como la falla de
WhatsApp/Telegram que encontramos. Almacenamiento de ámbito significa que las
aplicaciones tendrán su propia área de almacenamiento en un directorio
específico de la aplicación, pero se les impedirá acceder a los archivos en toda
la partición de almacenamiento, a menos que el usuario otorgue un permiso
explícito. Si bien esto promete mejorar la protección de la privacidad del
usuario, también incluye cambios importantes en la forma en que millones de
aplicaciones utilizan el almacenamiento externo. En parte debido a
estos desafíos, Google anunció recientemente que planea impulsar la aplicación de la
API sólo en 2020, en el próximo lanzamiento importante de la
plataforma. Incluso entonces, el impacto de la aplicación de la ley llevará
tiempo debido a la fragmentación de la versión del sistema operativo Android.
Proceso de divulgación
Symantec notificó a Telegram y Facebook/WhatsApp sobre la vulnerabilidad
de Media File Jacking.
Protección
Los motores de detección de malware de Symantec, que impulsan a Symantec
Endpoint Protection Mobile (SEP Mobile) y Norton Mobile Security, detectan
aplicaciones que aprovechan la vulnerabilidad descrita.
Como tal, las empresas y los consumidores que aprovechan SEP Mobile y
Norton Mobile Security respectivamente, se benefician del análisis profundo de
las aplicaciones y la detección de comportamientos maliciosos, sospechosos y no
deseados, y ya están protegidos de la amenaza descrita.

0 comentarios: