Трое специалистов из Китайского университета Гонконга предупредили на конференции Black Hat Europe (PDF), что в большинстве приложений использование технологии единого входа (Single-Sign-On, SSO) через протокол OAuth 2.0 может быть небезопасно. Исследователи утверждают, что 41% из 600 проверенных ими Android-приложений, популярных в Китае и США, уязвимы к обнаруженному ими методу атак. Хотя эксплоит не тестировался на iOS-приложениях, специалисты уверены, что пользователи iOS тоже находятся под угрозой.

capture
Некоторые уязвимые приложения

Напомню, что OAuth 2.0 — это открытый стандарт авторизации, который позволяет пользователем осуществлять вход в сторонние сервисы, используя аккаунты Google, Facebook, Twitter, китайcкой компании Sina и так далее. При этом вводить логин и пароль не требуется. Однако протокол появился до эры мобильных устройств и был создан без расчета на них, и исследователи утверждают, что именно в этом кроется корень проблемы. Теперь OAuth 2.0 адаптировали для использования с мобильными гаджетами, однако в отличие от работы с веб-сайтами, в данном случае механизм работает немного иначе.

Google, Facebook, Sina, Twitter и другие не предоставляют нормальной документации для реализации SSO-операций в приложениях. В итоге разработчики, которым нужно реализовать логин посредством сервиса N, оставляют баги в процедуре идентификации, которая представляет собой сложный процесс, задействующий сервер мобильного приложения, само приложение, приложение поставщика идентификационной информации (Identity Provider) и его серверы. Основной проблемой здесь выступает валидация данных, которые сервер приложения получает от других участников процесса.

Исследователи пишут, что им удалось реализовать man-in-the-middle атаку посредством установки SSL-прокси на их собственные телефоны, установки приложения уязвимого поставщика идентификационной информации, а также приложения, через которое они хотят взломать аккаунт жертвы. Простой пример:

  • атакующий устанавливает приложения Facebook и IMDb;
  • атакующий пытается войти в приложение IMDb, используя учтенную запись Facebook;
  • Mitm-прокси позволяет перехватить аутентификационный ответ, полученный от приложения Facebook (пришедший с сервера Facebook), а затем подменить в нем имя и email-адрес на аккаунт жертвы, который нужно взломать;
  • атакующий логинится на IMDb, используя Facebook ID жертвы.

hacking-oauth

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

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



Оставить мнение