El investigador de ciberseguridad Pawel Wylecial, de la empresa REDTEAM, ha hecho pública una prueba de concepto que muestra cómo el navegador Safari permite filtrar ficheros locales a través de la API Web Share. Esta API permite a usuarios compartir enlaces desde el navegador a través de herramientas de terceros, como aplicaciones de correo o de mensajería.
La vulnerabilidad se aprovecha del uso de enlaces con el esquema file://<URI>
para añadir un fichero en el mensaje que se va a compartir a través de la función navigator.share()
.
No es un problema muy serio ya que requiere interacción del usuario; sin embargo, es muy sencillo hacer invisible el fichero compartido a la víctima. Un símil que se me ocurre sería un ataque de clickjacking cuando se intenta engañar a una víctima para que realice alguna acción.
Pawel Wylecial en su informe.
En la prueba de concepto se ve cómo compartiendo contenido a través de la aplicación Mail de iOS se adjunta el fichero /etc/passwd
siendo invisible a primera vista salvo que el usuario haga scroll hacia abajo.
Muestra cómo se puede filtrar el historial de navegación de Safari simplemente cambiando la URI a compartir por file:///private/var/mobile/Library/Safari/History.db
La vulnerabilidad ha sido probada en iOS (13.4.1, 13.6), MacOS Mojave 10.14.16 con Safari 13.1 y MacOS Catalina 10.15.5 con Safari 13.1.1. Algunos usuarios han comprobado que en las versiones beta de iOS 14 y MacOS 11 no se puede reproducir, aunque tampoco hay confirmaciones por parte de Apple de haber corregido este fallo en dichas versiones o si aplicarán medidas próximamente en los sistemas iOS 13 y MacOS 10.
Mitigación
La publicación de esta vulnerabilidad ha sido realizada después de que Apple programase el despliegue del parche para primavera de 2021.
Fuente: blog.redteam.pl