En abril, El investigador de seguridad Bhavuk Jain descubrió una vulnerabilidad de día cero en Inicia sesión con Apple que afectaban a aplicaciones de terceros que usaban la función sin implementar sus propias medidas de seguridad.
De acuerdo con el investigador, la Apple día cero "podría haber resultado en una toma de control total de la cuenta de usuario en esa aplicación de terceros, independientemente de que una víctima tenga una ID de Apple válida o no."
La vulnerabilidad, que ya ha sido parcheado, trajo a Jain una recompensa de $100,000 por Apple bajo su programa Apple Security Bounty.
Inicie sesión con Apple Zero-Day Bug
El Inicia sesión con Apple característica se introdujo en 2019, y está destinado a ofrecer una alternativa más privada a los sistemas de inicio de sesión de sitios web y aplicaciones habilitados por las cuentas de Facebook y Google. Apple minimizó la cantidad de datos de usuario necesarios para la autenticación y la creación de cuentas, haciendo así una API que también redujo la cantidad de seguimiento de Facebook y Google. Sin embargo, Resulta que la privacidad se centró Inicia sesión con Apple contiene un día cero, descubierto por el investigador de seguridad Bhavuk Jain.
La vulnerabilidad podría permitir a un atacante obtener acceso y hacerse cargo de la cuenta de un usuario en una aplicación de terceros. El día cero podría haber sido explotado para cambiar el control de la cuenta de usuario de la aplicación. Además, si el usuario tenía una ID de Apple válida o no, no importaba que el error fuera explotado.
Cómo Inicia sesión con Apple trabajo? La característica se basa en un token web JSON (en breve JWT) o un código generado por los servidores de Apple. Los servidores de Apple entran en juego en caso de que un JWT no esté disponible. Apple también permite a los usuarios compartir u ocultar su ID de correo electrónico de Apple con la aplicación de terceros dada. Una vez que se ha producido una autorización exitosa, Apple genera un JWT que contiene la identificación del correo electrónico. La aplicación de terceros utiliza esta última para iniciar sesión en el usuario..
Jain descubrió que era posible solicitar un JWT para cualquier ID de correo electrónico:
Descubrí que podía solicitar JWT para cualquier ID de correo electrónico de Apple y cuando se verificó la firma de estos tokens utilizando la clave pública de Apple, se mostraron como válidos. Esto significa que un atacante podría falsificar un JWT al vincular cualquier ID de correo electrónico y obtener acceso a la cuenta de la víctima.
El impacto de este error fue "bastante crítico"Ya que podría haber habilitado la adquisición de cuenta completa, el investigador añadió. Además, muchos desarrolladores han integrado Inicia sesión con Apple, porque es obligatorio para las aplicaciones que admiten otros inicios de sesión sociales.
Las aplicaciones que usan Iniciar sesión con Apple incluyen nombres ampliamente adoptados como Dropbox, Spotify, Airbnb, Giphy (que fue adquirido por Facebook). "Estas aplicaciones no se probaron, pero podrían haber sido vulnerables a una toma de control completa de la cuenta si no se hubieran implementado otras medidas de seguridad al verificar a un usuario," Jain dijo en su informe.
Apple llevó a cabo su propia investigación de sus registros para determinar que no hubo mal uso o compromiso de la cuenta causado por esta vulnerabilidad de día cero.