
Apple a acordat un vânător de recompense pentru erori $100,000 pentru găsirea și raportarea unei probleme critice de securitate care ar putea duce la preluarea conturilor de utilizatori terți.
Cercetător Bhavuk Jain a descoperit vulnerabilitatea în “Conectați-vă cu Apple” caracteristică, o funcție de dezvoltator care permite utilizatorilor să se conecteze la servicii folosind ID-uri Apple.
Conectarea cu Apple a fost introdusă pentru a îmbunătăți confidențialitatea și pentru a crea proceduri de conectare pentru site-uri web și aplicații terță parte folosind ID-ul Apple și procesele de autentificare cu doi factori, păstrând în același timp urmărirea la distanță.
in orice caz, Jain a găsit un mijloc de a ocoli mecanismele de autentificare și de a prelua conturile de utilizatori terți, doar cunoscând ID-ul de e-mail al unei ținte.
Potrivit vânătorului de recompense, defectul de securitate a existat din cauza modului în care producătorul de iPad și iPhone a gestionat cererile de validare a utilizatorului la nivelul clientului.
Utilizatorii pot fi fie autentificați de Apple prin intermediul unui JSON Web Token (JWT) sau un cod generat de un server.
Utilizatorii pot alege dacă își partajează sau nu ID-ul de e-mail cu o terță parte, ca parte a procesului de autentificare.
Dacă ID-ul de e-mail este ascuns, Apple generează un token JWT care conține aceste informații, care este apoi folosit de serviciul terță parte pentru a autentifica un utilizator.
in orice caz, cercetătorul a descoperit un conflict de validare în modul în care Apple gestionează cererile JWT în comparație cu autentificarea furnizată atunci când un utilizator se conectează la contul său înainte de a începe solicitările..
A descoperit că poate solicita JWT-uri pentru orice ID de e-mail de la Apple și când semnătura acestor jetoane a fost verificată folosind
Cheia publică Apple, s-au arătat ca fiind valide.
Aceasta înseamnă că un atacator ar putea falsifica un JWT conectând orice ID de e-mail la acesta și obținând acces la contul victimei.
Vulnerabilitatea a fost corectată acum.