Безопасность операционной системы еще не означает, что работающие в ее среде приложения будут лишены уязвимостей. Например, несколько популярных мобильных приложений, созданных под iOS некоторыми известными банками, содержат ряд багов, способствующих получению несанкционированного доступа к данным жертвы. В частности, злоумышленники могут отслеживать действия пользователя, используя атаки типа «человек посередине«, захватывать контроль над аккаунтом при помощи перехвата сессии, а также манипулировать системной памятью, что может привести к утечке данных. Все это так или иначе может дать преступникам возможность получить доступ к личным данным или вовсе к банковскому счету.
Исследователь из аргентинской компании IOActive Ариель Санчез подверг серии тестов 40 мобильных банковских приложений, выпущенных известнейшими в мире кредитными учреждениями. Тесты подразумевали помимо прочего анализ механизмов передачи данных, интерфейса, методов хранения информации и прочих нюансов функционирования программ.
По итогам тестирования Санчез обнаружил сразу несколько потенциально опасных уязвимостей. «Человек с соответствующим опытом смог бы использовать результаты тестов для выявления багов и дальнейшего их эксплуатирования и в итоге скомпрометировать пользовательские данные в банковских приложениях, — заявил исследователь. — Можно сказать, что угроза безопасности стала на шаг ближе».
В IOActive говорят, что информация обо всех найденных в приложениях уязвимостях была передана соответствующим банкам. Но пока что, по словам Санчеза, ни один из них не отреагировал на эти сообщения выпуском патчей и обновлений.
Кроме того, аргентинец посетовал на то, что особо серьезные проблемы связаны прежде всего с «зашитыми» в код приложений служебными данными. Например, такими, которые, по сути, представляют собой мастер-ключи, при помощи которых авторы программы получают доступ к инфраструктуре разработки приложения.
Так вот, дело в том, что доступ к этим ключам фактически дает злоумышленникам те же права, что и разработчикам. «Эта уязвимость может быть использована для получения несанкционированного доступа к банковской внутренней инфраструктуре разработки, что может привести к массовому заражению приложения у всех его пользователей», — отметил исследователь.
Частично проблема связана с тем, что некоторые приложения могут некорректно обрабатывать зашифрованную информацию, получаемую с сервера, а то и вовсе получать незашифрованные данные. Из-за этого пользователь рискует оказаться жертвой атаки типа «человек посередине», когда злоумышленнику достаточно отработать нехитрую фишинговую схему с применением вредоносного HTML или javascript-кода.
Все найденные Санчезом проблемы усугубляются еще и тем, что 70% банков, чьи приложения прошли тестирование, не стали внедрять двухфакторную авторизацию. «Достаточно иметь на руках бинарник приложения и пару инструментов для дешифровки и дизассемблирования кода, — сказал он. — Существует масса свободно доступных инструкций, описывающих процесс того, как это сделать. Для того чтобы ими воспользоваться, не нужно много опыта, достаточно иметь немного времени».
Как видно, IOActive ответственно подошла к вопросу, что, впрочем, хорошо и плохо одновременно. С одной стороны, компания не раскрывает названия банков и не публикует подробности найденных уязвимостей, не повышая таким образом шансы негодяев на успешный взлом. С другой же стороны, пользователи тоже остаются в неведении о том, каким банкам и приложениям можно доверять, а каким нет.
Что же делать? Очевидно, самым осторожным из нас следует на время отказаться от использования мобильных банковских приложений, до тех пор, пока описанные проблемы не будут подтверждены и исправлены. Всем же остальным можно посоветовать включить двухфакторную авторизацию, если таковая предусмотрена банком, с осторожностью относиться ко всем ссылкам, появляющимся в приложении, остерегаться фишинга и, конечно же, внимательнее следить за самим банковским счетом.