Las normas antimonopolio europeas que Apple ha tenido que aceptar (por el bien de los usuarios y para mal económico suyo) ha dejado a los usuarios de su navegador Safari expuestos a un posible rastreo de la actividad web.
Los desarrolladores Talal Haj Bakry y Tommy Mysk investigaron la forma en que Apple implementó el proceso de instalación de los mercados de software de terceros en iOS con Safari, y concluyeron que el enfoque de Cupertino es particularmente deficiente.
“Nuestras pruebas demuestran que Apple proporcionó esta función con fallos de seguridad y privacidad catastróficos”, escribieron Bakry y Mysk en un aviso publicado el fin de semana.
¿De dónde sale la falla de seguridad de Safari?
Apple, que publicita su navegador Safari como increíblemente privado, ha socavado evidentemente la privacidad de los usuarios de Safari de la Unión Europea mediante un esquema marketplace-kit: URI que permite a las tiendas de aplicaciones de terceros seguir a esos usuarios por la web.
Un esquema URI es una forma de determinar cómo se gestiona una solicitud de red concreta. Un sitio web que ofrezca un mercado de software alternativo puede incluir un botón que, al pulsarlo en Safari, lance una solicitud marketplace-kit: gestionada por un proceso MarketplaceKit en el iPhone del usuario de la UE.
Este proceso, integrado en iOS 17.4 por Apple, se pone en contacto con los servidores back-end del mercado autorizado para completar la instalación de la aplicación de esa tienda en el teléfono.
El problema es que cualquier sitio puede activar un marketplace-kit: request. En los dispositivos iOS 17.4 de la UE, Safari enviará un identificador único por usuario a los servidores de un marketplace aprobado, filtrando el hecho de que el usuario estaba visitando ese sitio.
Esto ocurre incluso si Safari está en modo de navegación privada. Los servidores del mercado pueden rechazar la solicitud, que también puede incluir una carga útil personalizada, pasando más información sobre el usuario a la tienda alternativa. Todo esto se ilustra en el siguiente vídeo.
Según Bakry y Mysk, el sistema URI de Apple tiene tres fallos importantes. En primer lugar, no comprueba el origen del sitio web, lo que significa que es posible el mencionado rastreo entre sitios.
En segundo lugar, MarketplaceKit de Apple -su API para tiendas de terceros- no valida los tokens web JSON (JWT) pasados como parámetros de entrada a través de las solicitudes entrantes. “Peor aún, transmite ciegamente el token JWT no válido al llamar al punto final /oauth/token”, observaron Bakry y Mysk. “Esto abre la puerta a varios ataques de inyección dirigidos al proceso de MarketplaceKit o al back-end del mercado”.
Y en tercer lugar, Apple no está utilizando la fijación de certificados, lo que deja la puerta abierta a la intromisión de un intermediario (MITM) durante el intercambio de comunicaciones de MarketplaceKit. Bakry y Mysk afirman que fueron capaces de sobrescribir los servidores implicados en este proceso con sus propios endpoints.
¿Le interesa a Apple arreglar el fallo?
El factor limitante de este ataque es que un marketplace debe ser aprobado primero por Apple antes de poder llevar a cabo este tipo de rastreo. Por el momento, no son muchos los marketplaces que han obtenido la aprobación.
Los dos investigadores de seguridad argumentan que las aplicaciones fraudulentas se abren camino con regularidad a través del proceso de revisión de Apple, lo que significa que las tiendas de aplicaciones fraudulentas podrían ser autorizadas. Y afirman que los problemas de privacidad se deben a que Apple quiere rastrear el uso de las tiendas de terceros.
Instan a los usuarios de iOS en Europa a utilizar Brave en lugar de Safari porque la implementación de Brave comprueba el origen del sitio web con la URL para evitar el seguimiento cruzado.
Al no hacer el esfuerzo adicional de implantar de forma segura las tiendas de aplicaciones de terceros, Apple ha convertido posiblemente sus preocupaciones por la seguridad y la privacidad en una profecía autocumplida.
En sus observaciones [PDF] sobre el cumplimiento de la DMA, Apple declaró: “En la UE, la seguridad, privacidad y protección de cada usuario dependerá en parte de dos cuestiones. En primer lugar, ¿son los mercados y procesadores de pagos alternativos capaces de proteger a los usuarios? Y, segundo, ¿están interesados en hacerlo?”.
También está la cuestión de si Apple es capaz de proteger a los usuarios, y si está interesada en hacerlo.