Проблема была связана с реализацией биометрической функции TouchID.
В начале нынешнего года компания Apple устранила уязвимость в iOS и macOS, которая потенциально могла позволить злоумышленнику получить несанкционированный доступ к учетной записи iCloud пользователя.
Уязвимость была
Когда пользователи пытаются авторизоваться на web-сайте, для которого требуется Apple ID, отображается запрос для аутентификации с помощью Touch ID. Данный процесс пропускает этап двухфакторной аутентификации, поскольку уже использует комбинацию факторов для идентификации, таких как устройство и биометрическая информация пользователя.
Во время авторизации в доменах Apple (например, «icloud.com») обычным способом с идентификатором и паролем сайт включает iframe, указывающий на сервер проверки входа в систему Apple («dmsa.apple.com») для обработки процесса аутентификации.
Как показано в
Однако, когда пользователь проверяется с помощью TouchID, iframe обрабатывается по-другому, поскольку взаимодействует с демоном AuthKit (akd) для проведения биометрической аутентификации и последующего получения токена («grant_code»). Токен используется страницей icloud.com для продолжения процесса входа в систему. Для этого демон связывается с API на gsa.apple.com для отправки подробностей запроса и получения токена.
Проблема связана с вышеупомянутым API gsa.apple.com, позволявшим потенциально злоупотреблять доменами для проверки идентификатора клиента без аутентификации. Злоумышленник мог использовать уязвимость межсайтового выполнения сценария на любом из поддоменов Apple для запуска вредоносного JavaScript-кода.
В начале нынешнего года компания Apple устранила уязвимость в iOS и macOS, которая потенциально могла позволить злоумышленнику получить несанкционированный доступ к учетной записи iCloud пользователя.
Уязвимость была
Для просмотра ссылки необходимо нажать
Вход или Регистрация
ИБ-специалистом из компании Computest Тийсом Алкемаде (Thijs Alkemade). Проблема была связана с реализацией биометрической функции TouchID (или FaceID), позволяющей аутентифицировать пользователей для входа на web-сайты в браузере Safari.Когда пользователи пытаются авторизоваться на web-сайте, для которого требуется Apple ID, отображается запрос для аутентификации с помощью Touch ID. Данный процесс пропускает этап двухфакторной аутентификации, поскольку уже использует комбинацию факторов для идентификации, таких как устройство и биометрическая информация пользователя.
Во время авторизации в доменах Apple (например, «icloud.com») обычным способом с идентификатором и паролем сайт включает iframe, указывающий на сервер проверки входа в систему Apple («dmsa.apple.com») для обработки процесса аутентификации.
Как показано в
Для просмотра ссылки необходимо нажать
Вход или Регистрация
, URL-адрес iframe также содержит два других параметра — «client_id», идентифицирующий сервис (например, iCloud), и «redirect_uri», который содержит URL-адрес для перенаправления после успешной проверки. Однако, когда пользователь проверяется с помощью TouchID, iframe обрабатывается по-другому, поскольку взаимодействует с демоном AuthKit (akd) для проведения биометрической аутентификации и последующего получения токена («grant_code»). Токен используется страницей icloud.com для продолжения процесса входа в систему. Для этого демон связывается с API на gsa.apple.com для отправки подробностей запроса и получения токена.
Проблема связана с вышеупомянутым API gsa.apple.com, позволявшим потенциально злоупотреблять доменами для проверки идентификатора клиента без аутентификации. Злоумышленник мог использовать уязвимость межсайтового выполнения сценария на любом из поддоменов Apple для запуска вредоносного JavaScript-кода.