Вы являетесь клиентом банка использующего двухфакторную аутентификацию по СМС в интернет-банкинге? У вас телефон на Android? Вы используете один и тот же компьютер для доступа к сервисам Google и для доступа к интернет-банкингу?
Если все три ответа «Да» то доступ к вашим средствам защищен меньше, чем это кажется на первый взгляд.
Схема аутентификации
Сразу оговоримся о схеме доступа к банкингу. В статье рассматривается следующая защита, предлагаемая банками:
- Пара логин/пароль для доступа к сайту банкинга
- Разовый пароль (чаще всего цифровой), отправляемый по SMS на телефон клиента для подтверждения каждой операции
Из четырех банков с которыми я сталкивался, три использовали данную схему аутентификации.
Сценарии действия злоумышленника
Для кражи средств злоумышленнику надо знать логин/пароль и иметь доступ к телефону, на который приходит СМС.
Он может этого достичь посредством:
- Воровства пары логин/пароль (например вместе с ноутбуком) и телефона
- Получения доступа к компьютеру и телефону через трояна
- Используя методы фишинга (замаскировать свой сайт под сайт банкинга)
Сейчас первый и третий способ внушают наибольшие опасения. Однако не следует сбрасывать второй способ со счетов.
Cложность этого сценария в том, что компьютер и телефон надо заражать по-отдельности, и заражение одного не влечет заражение другого. Заразить два устройства сложнее чем одно — это обеспечивает дополнительную безопасность.
Но на самом деле заражение компьютера может привести к заражению телефона на Android. Для заражения подключение телефона к компьютеру необязательно. Рассмотрим схему атаки подробнее.
Схема атаки
Google Play предлагает удобный механизм дистанционной установки приложений на устройство. С сайта play.google.com/store можно удаленно установить любую программу на телефон, не имея физического доступа к телефону. Это существенно уменьшает уровень защиты посредством СМС-авторизации. Фактически, злоумышеннику достаточно заразить только компьютер, в то время как телефон скачает и установит зловредное приложение сам.
Сама схема выглядит так:
- Злоумышенник публикует приложение в Google Play, содержащие код пересылки СМС сообщений на специальный email
- Злоумышленник заражает машину пользователя трояном
- Троян заходит на play.google.com/store и устанавливает Android приложение на все телефоны пользователя
- Троян пересылает считанные с помощью кейлоггера логин и пароль на email злоумышленника
Все! Теперь у вора есть логин и пароль на вход в интернет банкинг а разовый пароль из СМС ему перешлет зловред установленный на телефон. При этом ему не потребуется искать какие-то уязвимости для чтения СМС-переписки пользователя (можно использовать механизм Android Permissions, которые троян с компьютера сам и подтвердит) и убеждать пользователя поставить сомнительную программу вручную (все сделает троян через сайт).
Защита
К сожалению я не нашел в приложении Google Play на телефоне запрета на установку программ через WEB-версию сервиса. Поэтому защита сводится к другим способам сделать оба фактора двухфакторной аутентификации независимыми друг от друга:
- Не использовать одну и ту же учетную запись Google на Android телефоне-получателе банковских СМС и на компьютере, через который осуществляется вход в интерент-банкинг
- Не использовать Google Play на телефоне (в некоторых кастомных прошивках его нет)
- Использовать отдельный телефон (не Android) для получения разовых паролей по СМС
Вывод
Двухфакторная аутентификация по СМС менее безопасна, чем кажется.
Автор: TrashMind