Обнаружен новый метод взлома аккаунтов в мобильных приложениях

image

Теги: компрометация, авторизация, учетная запись, OAuth

Атака возможна из-за ошибки в реализации протокола аутентификации OAuth 2.0.

Группа специалистов из Университета Гонконга продемонстрировала новый метод, позволяющий удаленно получить доступ к любой учетной записи в Android- и iOS-приложениях без ведома жертвы.

В рамках исследования эксперты проанализировали 600 наиболее популярных в США и Китае Android-приложений, 182 из которых поддерживали технологию единого входа (Single Sign-On). В 41% приложений исследователи обнаружили проблему, связанную с реализацией протокола авторизации OAuth 2.0. Данный протокол, позволяющий реализовать безопасную аутентификацию пользователей, предоставляет возможность подписчикам Google, Facebook, Microsoft или Twitter получить доступ из своих учетных записей на другие web-сайты.

При использовании OAuth 2.0 для авторизации в стороннем приложении, программа обращается к ID-провайдеру (скажем, Facebook) для верификации данных аутентификации. В случае, если информация достоверна, Facebook отправляет маркер доступа (Access Token), который затем передается на сервер мобильного приложения. В результате пользователь может авторизоваться в приложении, используя учетные данные Facebook.

Как оказалось в ходе анализа, в огромном числе Android-приложений некорректно реализован механизм, проверяющий наличие взаимосвязи между пользователем и ID-провайдером. То есть, сервер проверяет только идентификатор пользователя. Как поясняют эксперты, злоумышленники могут удаленно загрузить уязвимое приложение, авторизоваться при помощи собственных учетных данных, а затем изменить логин на имя пользователя жертвы при помощи сервера, способного модифицировать данные, отправленные Facebook, Google или другими сервисами. Таким образом атакующие могут получить доступ ко всем данным в приложении.

Например, хакеры могут взломать приложения для планирования путешествий или бронирования гостиничных номеров и получить доступ к планировщику жертвы, оплатить номер в отеле или похитить персональную информацию, такую как данные банковского счета или адрес проживания.

Telegram Подписывайтесь на канал "SecurityLab" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.