Otro grave fallo de WhatsApp ha permitido a un hacker robar archivos de tu ordenador

2019 fue uno de los peores años para WhatsApp en lo que a seguridad se refiere. Tan grave fueron algunas de sus vulnerabilidades, que Arabia Saudí hackeó a Jeff Bezos usando una de esas vulnerabilidades para destapar que tenía una relación extramatrimonial. Ahora, Facebook acaba de confirmar la primera gran vulnerabilidad de 2020 que permitía robar archivos de tu PC.

Cada vez parece que Pavel Durov, CEO de Telegram, tiene más razón. A cada vulnerabilidad que aparece de WhatsApp, Durov afirma que en realidad se trata de puertas traseras camufladas como vulnerabilidades para permitir acceso a las agencias de espionaje. Así, ha sido un investigador de seguridad quien la ha descubierto, y no la propia WhatsApp ni Facebook.

La vulnerabilidad, con código CVE-2019-18426, ha sido descubierta por el investigador de la empresa PerimeterX llamado Gal Weizman, y afectan en concreto a WhatsApp Web, por lo que también afecta a la aplicación de WhatsApp para PC pues está basada en el mismo sistema.

El ataque se aprovecha de un fallo de redireccionamiento abierto que permitía ejecutar un ataque XSS (cross-site scripting) con persistencia. Para llevar a cabo el ataque, tan sólo era necesario crear un mensaje modificado dirigido hacia los usuarios de WhatsApp, donde además escondía el texto en la parte final para que hiciera falta pulsar en el “Leer más” para verlo. Una vez el usuario recibía el mensaje malicioso a través del navegador, el fallo permitía ejecutar código arbitrario en el navegador del receptor. En el caso de hacerlo en la aplicación de Windows, podía pasar a ejecutar código malicioso en cualquier parte del ordenador.

Además, el investigador descubrió que Electron, la plataforma en la que está creada WhatsApp Web, es una variante de Chromium que usaba Chrome 69 (septiembre de 2018) como base, por lo que podía aprovecharse de muchos ataques no parcheados. En concreto, había 5 vulnerabilidades de ejecución de código remoto no parcheadas, por lo que sólo tenía que elegir una de ellas.

La política de seguridad de WhatsApp estaba también mal configurada, por lo que se podía cargar un XSS de cualquier longitud usando un iframe a través de una página web controlada por el hacker, añadiendo una vía aún más peligrosa de ataque. Si hubiera estado bien configurado, el XSS que podría ejecutarse habría sido mucho menos peligroso.

Para demostrar hasta dónde podía llegar un hacker, Weizman demostró que podía leer el archivo hosts del ordenador de una víctima, el cual se encuentra en C:\Windows\System32\Drivers\etc\hosts, una ruta protegida y muy sensible que demuestra que podía acceder a cualquier parte del sistema que quisiera. También podía robar archivos de Mac.

Por último, la vulnerabilidad también permitía modificar la previsualización de las URL que recibe el usuario en un mensaje para intentar engañarle haciéndole creer que está visitando una web, pero en realidad está accediendo a otra. Con ello, se podían llevar a cabo ataques de phishing adicionales.

El fallo fue reportado a finales de 2019 a Facebook, que ha pagado 12.500 dólares a Weizman por encontrar el fallo. Ahora, Facebook ha confirmado que ha arreglado el fallo desde el 21 de enero en versiones posteriores a WhatsApp Desktop de 0.3.9309.