Разделы

Безопасность Пользователю Техническая защита Цифровизация ИТ в банках

Мобильные приложения российских банков небезопасны

Эксперты предупредили о низкой безопасности многих приложений для работы с мобильными банками, которые своим клиентам предлагают финансовые организации в России. В частности, аналитики нашли уязвимость типа MitM примерно в каждом четвертом и каждом седьмом приложении для Android и iOS соответственно.

Примерно каждое четвертое приложение для мобильного банкинга для платформы Android (23%) и каждое седьмое аналогичное приложение для iOS (14%) уязвимо к атаке типа «человек посередине» (Man-in-the-Middle, MitM). Таковы результаты исследования, проведенного российской компанией Digital Security.

В ходе исследования были проверены 59 приложений для мобильного банкинга для платформы Android и 61 приложение для iOS, которые используют финансовые организации на российском рынке.

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

Атака типа MitM — это перехват трафика от отправителя адресату, когда ни тот, ни другой не догадываются о наличии перехватчика. Причем злоумышленник может не только читать трафик, но и незаметно изменять его.

Самый распространенный сценарий организации атаки «человек посередине» — подключение пользователя к поддельной точке доступа Wi-Fi. Атакующий может развернуть собственную Wi-Fi-сеть, полностью идентичную известной сети для мобильного устройства. Такой сценарий может быть легко реализован в кафе, торговом или бизнес-центре.

Итоги проверки приложений для мобильного банкинга


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

Виды защиты и число приложений для МБ с уязвимостями для платформы Android


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

Виды защиты и число приложений для МБ с уязвимостями для платформы iOS


Как с помощью ad-hoc инструмента снизить расходы на внедрение аналитики
Импортонезависимость

Однако эту технологию еще совсем недавно использовали далеко не все банки. «Как бы удивительно это ни звучало, еще год назад мы встречали приложения для мобильного банкинга, в которых все общение, включая финансовые операции, происходило по HTTP-протоколу: аутентификация, данные о переводах, — все было в открытом виде. Это значит, что злоумышленнику для получения финансовой выгоды необходимо было просто находиться с жертвой в одной сети и обладать минимальной квалификацией. Тогда для успешной атаки было достаточно исправлять номера счетов назначения и, при желании, суммы», — рассказали в Digital Security.

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

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

Кроме того, работа с SSL может быть организована различными способами: с использованием самоподписанных сертификатов (Self-Signed) и сертификатов, выданных центрами сертификации (CA-Signed Cert Hostame). Второй способ является более надежным. Еще более надежно — применение SSL Pinning. Суть этого подхода заключается во встраивании сертификата или публичного ключа, которому клиент доверяет при взаимодействии с сервером, прямо в приложение и отказе от использования встроенного в мобильную ОС хранилища сертификатов.

Сергей Попсулин