Vulnerabilidades en la app SHAREit de Android permiten el robo de ficheros
La aplicación, muy popular en la Play Store con más de 500 millones de descargas, permitía descargar archivos desde un dispositivo de la misma red.
SHAREit es una conocida aplicación disponible para Android, iOS y Windows, que permite compartir ficheros con otros usuarios de forma sencilla. Con sus más de 1.500 millones de usuarios entre las 3 plataformas (500 millones en Android), es una de las aplicaciones más populares para este fin.
De las diferentes modalidades y servicios utilizados para compartir archivos en SHAREit, se han descubierto varios fallos en Download Channel (a través de http en el puerto 2999), encargado de la descarga de ficheros.
El primer fallo se encuentra en el identificador único ‘msgid’ (‘http://shareit_sender_ip:2999/download?metadatatype=photo&metadataid=1337&filetype=thumbnail&msgid=c60088c13d6′) que valida en la descarga que el fichero solicitado es el entregado por el cliente. Una incorrecta validación de dicho valor, permite a cualquier usuario autenticado solicitar cualquier fichero del dispositivo, sin que se haya autorizado previamente.
Aunque el error en ‘msgid’ es de por sí grave, se sigue requiriendo estar autenticado para realizar la descarga. No obstante, un fallo en la implementación del servidor HTTP de Download Channel, provoca que los paths no definidos en vez de devolver un error 404, devuelvan un 200, y se llegue a crear una sesión válida en el servidor. Así pues, autenticarse es tan fácil como realizar una petición a una ruta no existente, como por ejemplo ‘http://shareit_sender_ip:2999/DontExist’.
Estos dos errores son de por sí muy graves, pero sigue sin conocerse los ficheros disponibles para descargar. No obstante, el fichero de historial de SHAREit, el cual se encuentra en una ruta conocida, contiene las rutas de todos los ficheros compartidos, lo cual revela bastantes rutas del sistema. Además, en las últimas versiones de SHAREit se incluye una base de datos de medios (también en una ruta conocida) con ficheros del sistema, junto con muchísima información interesante como claves o cookies si se ha utilizado el modo webview de SHAREit.
Estos fallos ya han sido corregidos tras la versión 4.0.38 de la aplicación, aunque la relación entre los desarrolladores y los investigadores no ha sido buena. Shareit Technologies no ha respondido por la mayoría de las vías de comunicación, se ha negado a publicar el fallo con un CVE, y no ha agradecido de ninguna forma el reporte de los errores. Tampoco han notificado de ninguna forma a los usuarios, limitándose a lanzar una nueva versión en silencio.
El equipo de investigadores de RedForce, quienes han descubierto los fallos, han liberado una prueba de concepto en su cuenta de Github.
Fuentes:
SHAREit Multiple Vulnerabilities Enable Unrestricted Access to Adjacent Devices’ Files:
https://blog.redforce.io/shareit-vulnerabilities-enable-unrestricted-access-to-adjacent-devices-files/
An exploit for SHAREit <= v 4.0.38:
https://github.com/redforcesec/DUMPit/
Powered by WPeMatico