WhatsApp ha actualizado el cliente web de su popular aplicación de mensajería debido a una grave vulnerabilidad que podría permitir a atacantes remotos la instalación de cualquier tipo de malware o archivo malicioso.
El problema, descubierto porCheck Point, podría
permitir a un atacante ejecutar código arbitrario en el sistema de la víctima.
Para aprovechar la vulnerabilidad, el atacante tan solo debe enviar, a través
del cliente web de WhatsApp, una vCard aparentemente inocente pero con el
código malicioso incluido. Una vez que el usuario abre el archivo, se revela
como un ejecutable que puede permitir el compromiso total del sistema. Lo único
que necesita conocer el atacante es el número de teléfono asociado a la cuenta.
El cliente web
de WhatsApp permite usar WhatsApp en un ordenador, replicando el contenido de
la conversación establecida en el smartphone en el navegador. Se estima que más
de 200 millones de usuarios hacen uso de esta aplicación.
El 21 de agosto
de 2015 Check Point comunicó el problema a WhatsApp, que comprobó y reconoció
la vulnerabilidad. Pocos días después (el 27 de agosto) implementó la solución
en su cliente web (en todas las versiones superiores a 0.1.4481).
WhatsApp Web
permite visualizar cualquier tipo de archivo multimedia que pueda enviarse a
través de la aplicación móvil. Esto incluye imágenes, vídeos, archivos de audio
o tarjetas vCard.
La
vulnerabilidad reside en un tratamiento inadecuado de las tarjetas vCard,
utilizadas habitualmente para compartir la información de un contacto. En
cualquier caso la tarjeta recibida parece totalmente normal, como cualquier
otra tarjeta de contacto, sin embargo una vez que el usuario descargue el
archivo el código malicioso se ejecutará en el sistema de la víctima.
El informe de
Check Point, altamente instructivo, primero muestra como interceptando y
manipulando peticiones XMPP (Extensible Messaging and Presence Protocol) a los
servidores WhatsApp, era posible controlar la extensión de la tarjeta de
contacto. En primer lugar consiguió cambiar la extensión a .bat. Para ejecutar
código malicioso el atacante simplemente debía inyectar un comando en el
atributo "nombre" de la vCard, separado por el carácter
"&". Al abrirlo, Windows ejecutaba todas las líneas del archivo,
incluyendo los comandos inyectados.
Pero aun
consiguieron llevar su investigación más lejos, examinaron los protocolos
empleados por WhatsApp y comprobaron que usa una versión adaptada del estándar XMPP.
Tal y como describen se sorprendieron al descubrir que WhatsApp fallaba al
realizar cualquier tipo de validación sobre el formato de la vCard o los
contenidos del archivo. Lo que les permitió incluir un archivo .exe en la
petición.
"We were surprised to find that WhatsApp fails to
perform any validation on the vCard format or the contents of the file, and
indeed when we crafted an exe file into this request, the WhatsApp web client
happily let us download the PE file in all its glory."
Más información:
- WhatsApp “MaliciousCard” Vulnerabilities Allowed Attackers to Compromise Hundreds of Millions of WhatsApp Users http://blog.checkpoint.com/2015/09/08/whatsapp-maliciouscard-vulnerabilities-allowed-attackers-to-compromise-hundreds-of-millions-of-whatsapp-users/