Каждое второе банковское приложение имеет уязвимость, через которую злоумышленники могут украсть денежные средства пользователя, говорится в исследовании компании Positive Technologies.
Эксперты изучили 14 полнофункциональных банковских мобильных приложений для Android и iOS, с количеством скачиваний более 500 тыс. раз. Обнаружилось, что из каждого второго приложения мошенники могут украсть деньги и ни одно из исследованных мобильных банковских приложений не обладает приемлемым уровнем защищенности.
Оценка защищенности проводилась вручную методами черного, серого и белого ящика с использованием вспомогательных автоматизированных средств. Метод черного ящика предполагал атаки без получения данных об информационной системе. Метод серого ящика аналогичен, но нарушитель имеет определенные привилегии в системе. Метод белого ящика использует все имеющиеся данные о приложении, включая исходный код.
Клиентские части мобильных банковских приложений (мобильное приложение, которое устанавливается непосредственно на устройство пользователя), разработанные для iOS, содержали меньше уязвимостей, чем приложения для Android. Все недостатки в мобильных банках для iOS были не выше среднего уровня риска. В то время как 29% приложений для Android содержали уязвимости высокого уровня риска.
Наиболее опасные уязвимости выявлены в Android-приложениях и связаны с небезопасной обработкой ссылок deeplink. Благодаря технологии Deep linking пользователь может перемещаться между приложениями или разделами одного приложения в заранее определенные разделы с помощью специальных ссылок, подобно тому, как это сделано в веб-приложениях.
При разработке Android-приложений разработчики получают больше свободы в реализации различной функциональности. Это может стать причиной большего количества уязвимостей в сравнении с iOS-приложениями. Эксперты напоминают, что и использование iOS не является гарантией безопасности и защищенность мобильного банка в первую очередь зависит от практики безопасной разработки.
Positive Technologies утверждают, что банки не защищаются от угрозы анализа исходного кода, которая возникает в случае недостаточной его защиты. Злоумышленникам достаточно скачать из Google Play или App Store приложение и декомпилировать его. После анализа кода мошенники могут находить тестовые логины и пароли, ключи шифрования и хеширования. Эта информация может быть в дальнейшем использована злоумышленниками для получения аутентификационных данных и доступа к веб-серверам.
Эксперты также обнаружили, что в файловой системе практически каждого второго приложения хранится конфиденциальная информация в незашифрованном виде. Злоумышленники могут получить к ним доступ, в том числе, с использованием вредоносного приложения. Так, при исследовании одного из мобильных банков специалисты Positive Technologies обнаружили выписки по банковской карте, которые сохранялись в телефоне. А в другом случае приложение и вовсе сохраняло пинкод пользователя и злоумышленник мог получить доступ к личному кабинету мобильного банка.
Более половины серверных частей мобильных банков содержат уязвимости высокого уровня риска, заявляют исследователи. Уровень защищенности серверных частей не превышает средний, для трех приложений он был оценен как низкий, а у одного — крайне низкий.
Большинство уязвимостей, позволяющих проводить подбор пароля, связаны с недостатками реализации механизма предоставления одноразовых паролей. Наиболее распространенная проблема — когда при превышении количества попыток ввода одноразовый пароль продолжает оставаться действительным. Получив доступ к личному кабинету пользователя, злоумышленник может совершать различные операции (в том числе финансовые) от имени этого пользователя. Уязвимости серверных частей мобильных банков могут быть использованы для атак на пользователей в пяти из семи случаев. Несанкционированный доступ к приложению, как правило, следствие недостатков аутентификации или авторизации.
Именно аутентификационные данные оказались наиболее уязвимы: логины и пароли от личных кабинетов пользователей мобильных банков под угрозой в пяти серверных частях мобильных банков. Персональные данные могут попасть в руки злоумышленников более чем в половине приложений. Среди информации, доступной нарушителю, имена и фамилии пользователей, баланс денежных средств, квитанции по переводам, лимиты банковских карт, а также возможность установить связь между платежной картой и номером мобильного телефона.
Участие пользователя необходимо для проведения большинства сценариев атак — для эксплуатации 87% уязвимостей злоумышленнику требуются какие-либо действия со стороны пользователя. Поэтому повышая привилегии в ОС до административных, устанавливая приложения не из официальных магазинов приложений, посещая подозрительные сайты и переходя по ссылкам из мессенджеров или SMS, пользователи помогают хакерам и ставят под угрозу свои данные.