Код в доступе. Деньгам россиян угрожают критические уязвимости мобильных приложений
Swordfish Security: 35% финансовых приложений в России можно использовать для кражи денег
Как минимум 35% финансовых приложений, используемых россиянами, содержат критические уязвимости, об этом «Газете.Ru» сообщили в ИБ-компании Swordfish Security, проанализировав более сотни мобильных программ для iOS и Android. Самой распространенной проблемой является небезопасное хранение данных: 65% уязвимых программ плохо защищают не только персональные данные клиентов, но и логины, и пароли. Большинство экспертов считают, что сами по себе уязвимости едва ли могут привести к потере денег, однако их использование часто становится частью атак злоумышленников, направленных на хищение денежных средств.
Дорогая ошибка
Более чем в трети финансовых приложений, используемых россиянами, имеются критические уязвимости. Об этом «Газете.Ru» стало известно из исследования компании Swordfish Security, в рамках которого была проанализирована безопасность более сотни iOS- и Android-приложений.
«Основные категории исследуемых приложений: банковские клиенты, финтех, телеком, а также группы приложений (например, основное приложение банка и все остальные связанные с ним утилиты)», – рассказал сооснователь Swordfish Security Юрий Шабалин.
Как правило, уязвимыми приложениями оказываются проекты молодых компаний и стартапов. Однако в программах крупных организаций исследователи тоже находили проблемы.
Гораздо чаще уязвимости встречаются на Android, нежели на iOS. Кроме того, в среднем на программу для Android приходится больше проблем, чем на такую же утилиту для техники Apple: 8,3 штуки против 5,3. По словам исследователей, Android уязвимее из-за более широких возможностей самой платформы. На ней предоставляется намного больше способов взаимодействия между приложением и пользователем, которые при определенных обстоятельствах могут оказаться вредоносными.
Наиболее распространенной проблемой оказались нарушения в правилах хранения данных: они встретились исследователям в 65% уязвимых программах.
Чаще всего под угрозу ставятся токены (зашифрованные авторизационные данные для связи с другими сервисами) и персональные данные пользователей. Реже разработчики забывают «спрятать» логины и пароли от аккаунтов, а также ключи для шифрования передаваемой информации.
«Этот тип уязвимости может позволить злоумышленникам получить личную информацию пользователя, а в худших сценариях – совершить полную компрометацию аккаунта», – отметили авторы исследования.
В 35% уязвимых приложениях вовсе отсутствуют алгоритмы шифрования передаваемой на сервер информации. Из-за этого те же логин и пароль потенциально могут быть перехвачены злоумышленником через публичный Wi-Fi. В 18% случаев у приложений имеются проблемы со скоростью закрытия сессии, то есть разлогиниванием пользователей.
«Из-за слишком долгой жизни сессии или некорректной реализации функции выхода из приложения злоумышленник может получить доступ к аккаунту пользователя, используя сессионные идентификаторы», – объяснили в Swordfish Security.
В 10% утилит нашлось небезопасное межпроцессное взаимодействие. Из-за него вирус на смартфоне в виде приложения «А» может «заглянуть» в файлы уязвимого приложения «Б», что чревато разными последствиями, вплоть до воровства паролей.
Компания Swordfish Security уведомила об обнаружении проблем разработчиков всех уязвимых программ.
Все (не)плохо
Юрий Шабалин из Swordfish Security считает, что сама по себе уязвимость в большинстве случаев едва ли может стать причиной потери денежных средств, доступ к которым имеется из приложения. Однако ее использование может стать частью сценария злоумышленника, который задался целью украсть деньги жертвы.
«Как правило, для успешного осуществления атаки с хищением финансовых средств необходимо выстроить вектор из нескольких уязвимостей, либо же добыть дополнительные данные через социальную инженерию (фишинговое письмо, сообщение, звонок). Каждую проблему безопасности в случае необходимости можно встраивать в различные сценарии, и именно это мы наблюдаем сейчас у злоумышленников», – сказал он.
Аналогичного мнения придерживается и руководитель отдела исследований и разработки анализаторов кода Positive Technologies Владимир Кочетков. По его словам, обнаруженные проблемы упрощают работу злоумышленника, но, используя только их, добраться до банковских счетов он едва ли сможет.
«Как правило, сценарии реальных атак на банковские системы подразумевают использование, как уязвимостей в программном коде банковских систем и их клиентских приложений, так и элементов социальной инженерии (в том числе автоматизированной), направленной на введение пользователя в заблуждение и совершения им действий, приводящих к хищению его денежных средств», – сказал эксперт.
В свою очередь генеральный директор компании R-Vision Александр Бондаренко отметил, что в некоторых случаях отдельные уязвимости на самом деле могут быть использованы для хищения денежных средств. Однако их задействование будет настолько сложным и быстрым, что мало кто из киберпреступников захочет с ними возиться.
«Да, уязвимые приложения могут быть использованы хакерами для кражи данных, либо для кражи денежных средств путем подделки отправляемых платежей или отправки несанкционированных платежей. Это более сложный путь, так как необходимо сперва каким-то образом заразить само мобильное устройство пользователя. Учитывая тот факт, что существуют значительно более простые методы кражи денег у населения с использованием компьютерных технологий или без использования таковых, атаки на мобильные приложения сравнительно непопулярны», – сказал он.
Еще более оптимистично высказался главный эксперт «Лаборатории Касперского» Сергей Голованов. По его словам, использование уязвимостей приложений в операциях по похищению денег используются редко. Эксперт утверждает, что куда чаще дыры в безопасности мобильных программ используются в целевых атаках, когда перед злоумышленником стоит задача узнать что-либо про конкретного человека..
Как быть
В Swordfish Security дали несколько рекомендаций, следуя которым можно нивелировать шанс потери денег через приложение.
Во-первых, не стоит устанавливать приложения, если нет уверенности в их происхождении и надежности. Особенно внимательными нужно быть с приложениями из сторонних источников. Прежде всего, с их «модифицированными» версиями вроде тех, где отключен показ рекламы.
Во-вторых, стоит избегать открытых точек доступа Wi-Fi. Если же подключения не избежать, то нужно закрыть приложения, которые оперируют платежными данными.
В-третьих, нужно включать двухфакторную авторизацию во всех приложениях, где есть такая возможность, а также не использовать в разных сервисах одинаковые пароли.