100 tys. USD nagrody za błąd w funkcji „Sign in with Apple”

31 maja 2020, 11:18 | Aktualności | komentarze 3
: oglądaj sekurakowe live-streamy o bezpieczeństwie IT.

„Sign in with Apple” to funkcja na urządzeniach Apple, która pozwala wykorzystać konto iCloud do uwierzytelnienia w innych aplikacjach. Od strony użytkownika działa na podobnej zasadzie jak – bardziej powszechne – „Zaloguj z kontem Google” czy „Zaloguj z Facebookiem”.

Od strony technicznej, rozwiązanie opiera się o wygenerowanie tokenu JWT przez serwer uwierzytelniający Apple, który to następnie jest wysyłany do aplikacji firmy trzeciej, gdy użytkownik zażyczy sobie uwierzytelnienia z Applem. Tokeny są podpisane kluczem RSA, więc sprawdzenie ich poprawności polega na zweryfikowaniu ich względem klucza publicznego.

Sposób działania "Sign in with Apple", źródło: https://bhavukjain.com/blog/2020/05/30/zeroday-signin-with-apple/

Sposób działania „Sign in with Apple”, źródło: https://bhavukjain.com/blog/2020/05/30/zeroday-signin-with-apple/

O bezpieczeństwie JWT piszemy też w sekurakowej książce, wydaliśmy też e-booka na ten temat i mówiliśmy na ostatnim remote Sekurak Hacking Party

Bhavuk Jain zlokalizował ostatnio błąd w implementacji tejże funkcjonalności polegający najpewniej na tym, że odkrył pewien ukryty endpoint, który pozwolił wygenerować token JWT dla dowolnego użytkownika, znając tylko jego maila!

Wystarczyło wysłać zapytanie do serwera:

by otrzymać token:

Apple zdecydowało wypłacić bug bounty w wysokości stu tysięcy dolarów. Pozostaje się jedynie zastanawiać, jak to się stało, że taki błąd dostał się na produkcję…

— Michał Bentkowski

 

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. Pawel

    Bardziej wygląda to na furtkę zostawioną sobie przez programistę, niż na buga.

    Odpowiedz
    • Dawid

      Pewnie jak w grach zrobił se debug mode i pyk do produkcji.

      Odpowiedz
  2. Nn

    To wygląda raczej na jakieś narzędzie developerskie które wylądowało na produkcji. Nieładnie, wygląda to bardzo nieprofesjonalnie…

    Odpowiedz

Odpowiedz