чем опасны уязвимые приложения
Эксперты оценили уязвимость мобильных приложений банков для мошенников
В банковских мобильных приложениях есть уязвимые места, что может привести к утечкам данных клиентов, несанкционированному доступу к приложению и проведению мошеннических операций, а также к краже денежных средств. К такому выводу пришли специалисты Positive Technologies, которые проанализировали эти уязвимости и угрозы мобильным банкам. С исследованием компании ознакомился РБК.
Специалисты выявили недостатки как в клиентских частях мобильного банка (установленное на устройство пользователя приложение), так и в серверных частях (веб-приложение, которое находится на стороне банка и взаимодействует с приложением клиента через интернет).
Что изучали
Для исследования было выбрано 14 полнофункциональных банковских мобильных приложений для Android и iOS, которые принадлежат семи банкам из топ-50 крупнейших кредитных организаций по величине активов. Каждое из анализируемых приложений было скачано из официальных магазинов Google Play и AppStore не менее 500 тыс. раз. Общее число скачиваний всех этих приложений превышает 10 млн.
Всего специалисты Positive Technologies обнаружили в приложениях 43 уникальные уязвимости, в основном технического характера. Каждое приложение содержит в своем коде как минимум три уязвимости, с помощью которых мошенники могут получить доступ к внутренней инфраструктуре банка.
Как банки защищают свои приложения
Банки уделяют повышенное внимание безопасности приложений и регулярно проводят аудит и проверку их защищенности, рассказали РБК в ВТБ, МКБ, Промсвязьбанке, Райффайзенбанке, Тинькофф Банке и «Открытии». При этом основные сценарии мошенничества в России строятся на методах социальной инженерии (психологические методы выманивания у граждан необходимых сведений), поэтому мошенникам даже не требуется искать и эксплуатировать ИT-уязвимости приложений — всю необходимую информацию они получают обманным путем у клиентов банков, подчеркнули в ВТБ.
Group-IB регулярно находит уязвимости в банковских приложениях, однако на практике эти «дыры» используются довольно редко, поскольку злоумышленникам проще и дешевле использовать социальную инженерию, говорит руководитель направления «Аудит и консалтинг» Group-IB Андрей Брызгин. Однако он обращает внимание на то, что банки начали активно просвещать пользователей на тему мошеннических схем с использованием фишинга, звонков с тюремных call-центров и прочего. Поэтому со временем социнженерия может перестать приносить преступникам финансовую выгоду и они обратятся к уязвимости приложений.
По данным ЦБ, в 2019 году 69% всех хищений средств с банковских счетов граждан проводилось с использованием социальной инженерии. Всего за прошлый год мошенникам удалось украсть 6,42 млрд руб.
🕵 Что такое Топ-10 OWASP и какие уязвимости веб-приложений наиболее опасны?
B1bikua
OWASP важен для организаций, потому что его рекомендации высоко ценятся проверяющими безопасность корпоративных систем аудиторами. Рекомендации проекта по защите приложений необходимо включить в жизненный цикл разработки программного обеспечения и использовать для формирования политик безопасности.
Отчет об уязвимостях OWASP формируется на основе консенсуса мнений экспертов по безопасности со всего мира. Он ранжирует риски на основе частоты дефектов, серьезности уязвимостей и их потенциального воздействия. Это дает разработчикам и специалистам по безопасности понимание наиболее серьезных рисков и позволяет им минимизировать возможные последствия эксплуатации уязвимостей злоумышленниками.
В последнем отчете OWASP перечислены 10 основных уязвимостей:
1. Инъекции
Инъекционные атаки можно предотвратить путем проверки и/или очистки отправленных пользователем данных. В первом случае подозрительные данные отклоняются полностью, а во втором производится очистка только их подозрительной части. Кроме того, администратор базы данных может установить специальные элементы управления, чтобы минимизировать объем информации, которую может раскрыть атака с использованием SQL-инъекций.
2. Нарушенная аутентификация
Веб-сайты часто имеют проблемы с механизмами аутентификации. Прежде всего связаны они с некорректным управлением сеансами, что может быть использовано злоумышленниками для получения доступа к учетным записям пользователей и учетным данным для входа.
OWASP Top 10 содержит целый список подобных уязвимостей:
Количество уязвимостей можно уменьшить путем внедрения многофакторной аутентификации, а также внедрения ограничений, делающих невозможности автоматизированные атаки грубой силы (например, путем перебора). Не менее важно отсутствие спешки и наличие у разработчиков времени на проверку изменений перед запуском в продакшен, а также внедрение процедур тестирования кода на безопасность. Также необходимо внедрить жесткую парольную политику и использовать безопасные диспетчеры сеансов.
3. Раскрытие критически важных данных
Основная причина риска раскрытия критически важных данных связана с отсутствием шифрования или с использованием ненадежных методов генерации и управления ключами, слабых алгоритмов шифрования, ненадежных способов хранения паролей и т.д. Кроме того, разработчики веб-приложений часто хранят конфиденциальные данные, даже если в этом нет необходимости.
4. Внешние объекты XML (XXE)
Атаки XXE нацелены на веб-приложения, которые анализируют расширяемый язык разметки (XML). Они возникают, когда ввод содержащего ссылку на внешний объект кода XML обрабатывается синтаксическим анализатором со слабой конфигурацией. Анализаторы XML часто по умолчанию уязвимы для XXE, а значит разработчики должны удалить уязвимость вручную.
Атаки XXE можно избежать, если веб-приложения принимают менее сложные формы данных (например, веб-токены JavaScript Object Notation (JSON)), исправляя синтаксические анализаторы XML или отключая использование внешних сущностей. Защититься от атак XXE можно, развернув шлюзы безопасности интерфейса прикладного программирования (API), виртуальные исправления и брандмауэры веб-приложений (WAF).
5. Нарушенный контроль доступа
Риск нарушения контроля доступа можно снизить, развернув концепцию наименее привилегированного доступа, регулярно проверяя серверы и веб-сайты, применяя MFA и удаляя с серверов неактивных пользователей и ненужные службы. Можно также защитить элементы управления доступом, используя токены авторизации при входе пользователей в веб-приложение и делая их недействительными после выхода из системы. Другие рекомендации включают регистрацию и отчеты об ошибках доступа, а также использование ограничения скорости для минимизации причиняемого автоматическими атаками ущерба.
6. Неправильная конфигурация безопасности
Неправильная конфигурация безопасности может быть где угодно: в приложениях и веб-серверах, базах данных, сетевых службах, пользовательском коде, фреймворках, предустановленных виртуальных машинах и контейнерах.
Конфигурацию безопасности можно исправить, изменив настройки веб-сервера или CMS по умолчанию, удалив неиспользуемые функции кода и контролируя данные пользователей и видимость пользовательской информации. Разработчики также должны удалить ненужную документацию, функции, структуры и образцы, сегментировать архитектуру приложений и автоматизировать проверку эффективности конфигураций и настроек веб-среды.
7. Межсайтовый скриптинг (XSS)
Предотвратить эксплуатацию уязвимостей XSS можно с помощью брандмауэров веб-приложений (WAF), в то время как разработчики могут снизить вероятность XSS-атак, отделяя ненадежные данные от активных браузеров. Это включает в себя использование фреймворков, которые избегают XSS по своей конструкции, использование очистки и проверки данных, избегание ненадежных данных запроса протокола передачи гипертекста (HTTP) и развертывание политики безопасности контента (CSP).
8. Небезопасная десериализация
Рекомендации OWASP по защите в отношении небезопасной десериализации касаются супер-файлов cookie, которые содержат сериализованную информацию о пользователях. Если злоумышленники могут успешно десериализовать объект, они могут предоставит себе роль администратора, сериализовать данные и поставить под угрозу все веб-приложения.
9. Использование компонентов с известными уязвимостями
Этого можно избежать с помощью виртуального исправления, которое защищает устаревшие веб-сайты от эксплуатации уязвимостей с помощью брандмауэров, систем обнаружения вторжений (IDS) и WAF. Эксплуатацию уязвимостей также можно предотвратить, сохранив только реально необходимые компоненты и удалив все неиспользуемые или не обслуживаемые. Лучшим методом будет установка компонентов из надежных источников и постоянное их обновление.
10. Недостаточно подробные журналы и слабый мониторинг
Успешную хакерскую атаку или утечку данных удается обнаружить далеко не всегда. Часто злоумышленники не только получают несанкционированный доступ к информационным системам, но хозяйничают в них месяцами или годами, оставаясь невидимыми. Чтобы этого не произошло, необходимо регистрировать и отслеживать поведение веб-приложения, чтобы своевременно распознать подозрительную активность и либо предотвратить атаку, любо минимизировать ее последствия.
Топ-10 уязвимостей мобильных приложений и способы их устранения
По данным Statista в мире насчитывается около 3.5 млрд. пользователей смартфонов. Это значит, что жертвами небезопасных мобильных приложений могут стать очень многие.
Подготовленный фондом OWASP cписок 10 наиболее актуальных уязвимостей приложений – это отличный ресурс для разработчиков, стремящихся создавать защищенные продукты. Дело в том, что многие мобильные приложения по своей природе уязвимы для угроз безопасности. Вспомним, к примеру, ряд нашумевших атак, произошедших за последние годы. К ним можно отнести шпионское ПО Pegasus для WhatsApp, посредством которого злоумышленники смогли заполучить управление устройствами пользователей мессенджера. Еще одним примером явился взлом приложения Pokémon Go, который позволил пользователям с помощью реверс-инжиниринга манипулировать GPS-данными и ловить больше покемонов.
Многие другие приложения и организации, такие как Tinder и MediaTek, также стали жертвами атак. Но что же делает подобные ресурсы уязвимыми? Для мобильных приложений характерна более обширная поверхность атаки, чем для их веб-аналогов, так как они скачиваются с публичных площадок и дают возможность проинспектировать код. Плюсом к этому, такие приложения, как правило, собирают огромное количество пользовательской информации, что делает их еще более привлекательным средством для кибер-преступников.
Исследования OWASP
На основе проведенного опроса и анализа обратной связи мирового сообщества проект по обеспечению безопасности мобильных приложений (OWASP) впервые предоставил информацию о связанных с ней рисках в 2011 году. После этого аналогичные исследования проводились в 2014 и 2016 годах. Последнее из этих исследований и является наиболее актуальным на сегодня.
В списках 2014 и 2016 года полностью совпадает только один пункт, в остальном же структура категорий сильно изменилась. Например, некоторые пункты были разделены, а некоторые, наоборот, объединены в один, что упростило их рассмотрение.
Мы же с вами ознакомимся с версией списка уязвимостей 2016 года, попутно рассмотрев возможные способы их устранения.
1. Неправильное использование платформы
Данный вид уязвимостей стоит во главе списка. Независимо от того Android это или iOS, при разработке для любой из этих платформ необходимо придерживаться конкретных требований с целью обеспечения должного уровня безопасности итогового продукта. Но бывает, что при создании приложений некоторые из предписанных правил и рекомендаций непреднамеренно нарушаются или просто реализуются с ошибками.
В результате возникает угроза, вызванная неверным использованием какой-либо возможности платформы или отсутствием реализации протоколов безопасности. Здесь можно упомянуть следующие случаи:
Как предотвратить
Подобные уязвимости нужно устранять на серверной стороне. Наряду с соблюдением рекомендаций платформы по разработке, риски можно также минимизировать с помощью безопасных подходов к написанию кода и применения правильных настроек сервера. Помимо этого, уменьшить вероятность неверного использования платформы поможет:
2. Небезопасное хранилище данных
Мобильные устройства нередко теряются или крадутся, оказываясь в руках злоумышленников. Помимо этого, утечка личной информации пользователя может произойти из-за вредоносного ПО, которое позволяет атакующему задействовать уязвимости устройства. С помощью взлома или рутинга устройства можно легко обойти защиту шифрованием, поэтому разработчики ПО должны исходить из предположения, что злоумышленники могут получить доступ к файловой системе.
И поскольку практически все приложения так или иначе сохраняют информацию, очень важно реализовать ее сохранение в такой области, где она не будет доступна другому приложению или пользователю.
Как предотвратить
Производить тестирование приложения на уязвимость угрозам для выяснения, какие информационные активы обрабатываются, и как с этими данными взаимодействуют API. Это поможет:
3. Небезопасная коммуникация
Если данные передаются незашифрованными в виде чистого текста, любой, кто отслеживает данную сеть, может перехватить и прочесть их.
Мобильные приложения, как правило, обмениваются данными по модели клиент-сервер. При этом процесс передачи через сеть оператора или интернет должен быть реализован безопасно. Траффик может перехватываться прокси-серверами, базовыми станциями, а также с помощью взлома WiFi или путем установки на устройство вредоносного ПО.
Как предотвратить
Для избежания кражи данных в процессе их передачи по сети следует полагаться на утвержденные индустрией протоколы шифрования и прочие практики, включая:
4. Небезопасная аутентификация
Прежде чем предоставить доступ, приложение должно проверить подлинность пользователя. Обход аутентификации обычно реализуется через существующие уязвимости, такие как неправильная проверка сервисных запросов сервером. Мобильные приложения должны проверять и удерживать подлинность пользователя, особенно в процессе передачи конфиденциальных данных, например, финансовой информации.
Как предотвратить
Использование слабых мест механизма аутентификации позволяет злоумышленникам обходить системы проверки паролей или получать дополнительные разрешения, осуществляя кражу данных и другие действия.
Для предотвращения подобных рисков рекомендуется:
5. Недостаточная криптографическая стойкость
Существует два случая, в которых криптография системы может быть скомпрометирована для раскрытия чувствительных данных:
Как предотвратить
Недостатки системы криптографического управления доступом могут вести к утечке чувствительных данных с устройства. В связи с этим следует:
6. Небезопасная авторизация
Для разных пользователей предусматриваются разные права, в результате чего одни получают стандартный доступ, в то время как другие, например администраторы, могут иметь дополнительные разрешения и привилегии. Слабые схемы авторизации, несмотря на успешную проверку подлинности пользователя, могут не справляться с проверкой его прав на доступ к запрашиваемым ресурсам. Подобный недочет позволяет хакерам авторизовываться и выполнять атаки с целью повышения привилегий.
Как предотвратить
Как и в случае с аутентификацией, недочеты авторизации могут вести к краже данных, подрыву репутации и даже штрафам за несоблюдение требований. В качестве противодействия этим рискам стоит рассмотреть следующие варианты:
7. Качество кода клиента
Эта категория в некотором смысле является общей причиной проблем мобильного клиента, связанных с неправильной реализацией кода.
Атакующий может передавать особые входные данные в вызовы функций, провоцируя их выполнение и наблюдая за поведением приложения. В связи с этим падает производительность, повышается потребление памяти и т.п. В этом случае стоит иметь в виду, что ошибки в коде нужно исправлять локальным способом, поскольку они возникают в мобильном клиенте и отличаются от ошибок серверной стороны. Привести же они могут к:
Как предотвратить
Для устранения уязвимостей и прочих, вызванных некачественным кодом, проблем, рекомендуется:
8. Подделка кода
Иногда в магазинах встречаются поддельные версии приложений. От оригинала их отличает встроенное в исполняемый файл вредоносное содержимое, например закладка, позволяющая получать несанкционированный доступ к системе. Злоумышленники могут повторно подписывать эти поддельные приложения и размещать их в сторонних магазинах или даже напрямую доставлять жертве через фишинговые атаки.
Как предотвратить
Подделка кода программы может вести к упущенным выгодам, краже личных данных, подрыву репутации и прочим пагубным последствиям. Для предотвращения подобных проблем существуют следующие рекомендации:
9. Реверс-инжиниринг
Злоумышленники могут разобрать и декомпилировать приложение для анализа кода. Этот способ взлома особенно опасен, так как позволяет инспектировать, понять и изменить код, включив в него вредоносную функциональность или транслирование нежелательной рекламы. Разобравшись в принципе работы приложения, хакеры могут изменить его с помощью таких инструментов, как IDA Pro, Hopper и прочих. После реализации нужного им поведения, они могут повторно скомпилировать приложение и использовать в своих умыслах.
Как предотвратить
Помешать злоумышленнику выполнить реверс-инжиниринг программы может только невозможность произвести деобфускацию кода с помощью IDA Pro, Hopper и аналогичных инструментов.
10. Лишняя функциональность
Иногда разработчики могут ненамеренно оставлять закладки или дополнительную функциональность, которые не очевидны для конечного пользователя. В результате продукт выпускаются в продакшен с функцией, которая не должна быть доступной, что создает дополнительные риски для безопасности приложения.
Хакеры эксплуатируют подобные слабые места программ непосредственно из своих систем, не нуждаясь в содействии со стороны регулярных пользователей. Они изучают файлы конфигурации, двоичные файлы и прочие компоненты, раскрывая функционал бэкенд-части, который затем используют для совершения атак.
Как предотвратить
Один из наиболее эффективных способов избежания подобных типов уязвимостей – это самостоятельный анализ безопасности кода. Таким образом вы сможете:
Обобщение
Приведенный список уязвимостей мобильных приложений может послужить отправной точкой для организаций, разработчиков, специалистов по безопасности и пользователей, которые только начинают решать соответствующие проблемы. Здесь были приведены краткие определения для каждого вида уязвимости, примеры сценариев атаки, способы их предотвращения и рекомендованные стратегии по минимизации ущерба.
Но имейте в виду, что этот список представляет лишь необходимый минимум. Поэтому с целью реализации максимально эффективного и безопасного продукта советуем изучить данную тему более углубленно.
Моя отрава: названы опасные приложения для смартфонов
Заместитель руководителя лаборатории компьютерной криминалистики Group-IB Сергей Никитин напомнил, что многие пользователи, сами того не зная, скачивают на телефон опасные приложения. Они могут собирать и размещать в открытом доступе ваши личные данные, прослушивать разговоры и следить за действиями. При этом многие из них совершенно спокойно продаются в официальных магазинах. Где таится угроза и как себя обезопасить — вместе со специалистами выясняли «Известия».
Будь готов
Случаи, когда вирусы попадают на устройство без малейшего участия владельцев смартфонов, имеют место быть. Летом Google признала, что хакеры нашли способ заразить гаджеты на базе Android еще на заводе во время сборки. Вирусы Triada устанавливали на смартфон приложения с огромным количеством рекламы, доход от которой шел злоумышленникам.
По словам экспертов, такие истории всё же пока экзотика. Самая распространенная угроза для смартфона Android — его невнимательный владелец.
«Более 90% случаев — не уязвимости, а сами пользователи. Основной источник заражения — приложения, скачанные не через магазин, а через браузер. Поисковик первым делом выдает не официальный сайт, а контекстную рекламу. Часто ее выкупают мошенники, и, переходя по ссылке с телефона, вы скачиваете вредоносный файл APK», — поясняет в беседе с «Известиями» заместитель лаборатории компьютерной криминалистики Group-IB Сергей Никитин.
С этим согласны и аналитики «Лаборатории Касперского». То, что приложение популярное, от угрозы не спасет.
— Часто злоумышленники подделывают зловреды под самые популярные приложения или классы приложений. Например, недавно мы обнаружили больше тысячи зловредов, которые притворялись популярным приложением для знакомств. А вообще, в 2019 году чаще всего троянцы выдавали себя за приложения для обработки фотографий, — рассказывает «Известиям» Виктор Чебышев, антивирусный эксперт «Лаборатории Касперского».
Найти фейк можно порой даже в официальных магазинах. В 2017 году в Google Play было выявлено 85 приложений, с помощью которых злоумышленники крали учетные данные пользователей соцсети «ВКонтакте». Для решения проблемы были привлечены разработчики антивирусов. Но отправляясь в «свободное плавание» на форумы и в каталоги пиратских программ, пользователь увеличивает риск в разы.
Опасность скачивания с непроверенных ресурсов — в первую очередь риск для владельцев Android. Но это не означает, что пользователям iOS не о чем беспокоиться. Хотя App Store старается отсеивать тех, кто работает недобросовестно, но и здесь не обходится без проблем.
Заместитель лаборатории компьютерной криминалистики Group-IB Сергей Никитин
Распространенное мошенничество в App Store — приложения, где необходимо взаимодействие с сенсором. Через отпечаток пальца предлагают померить давление, определить пол ребенка, сделать генетический тест и что угодно. Когда человеку говорят приложить палец — появляется информация и одновременно предложение оплатить покупку, и списывается определенная сумма. Это не совсем мошенничество, а скорее, тест на внимательность. Формально есть процедура возврата денег в течение суток, но для этого человеку нужно было заметить списание.
Особенно страдают от таких схем те, кто не пользуется банковскими уведомлениями и не может моментально узнать о списании со счета небольшой суммы.
Двойные агенты
Немало в интернете и приложений, которые изначально создавались с благой целью, но стали причинять владельцам смартфонов большие неудобства.
— Какое-то время был популярен GetContact, он показывал, как вы записаны у других. Но надо понимать, что приложение запрашивает доступ к контактам, и ваша база может утечь. Такие случаи были. Сейчас часто предлагают услугу блокировки спам-звонков. Приложения делают и известные вендоры. Здесь принцип такой же. Ваши данные, ваши контакты окажутся у компании. Поэтому сначала нужно ответить на вопрос, насколько вы доверяете вендору, — рассуждает Сергей Никитин.
Серьезная лазейка для мошенников — приложения для удаленного управления. Придуманные для технической поддержки, они позволяют мастеру видеть экран вашего устройства.
Заместитель лаборатории компьютерной криминалистики Group-IB Сергей Никитин
Такие есть и на iOS, и на Android. Злоумышленник может попросить поставить программу и потом провести финансовую операцию от вашего имени. Многие банки сейчас показывают одноразовый код в пуш-уведомлениях, так что увидеть его на экране не проблема. Выходит, что программа легальная, для благих целей, но может быть и двойного назначения. Предоставлять такой доступ нужно только проверенным людям.
Исключительно с благими намерениями разрабатывали и приложения для контроля за детьми. Но специалисты напоминают: такие приложения запрашивают множество разрешений, и если управление окажется в руках мошенника, то телефон превратится в шпиона.
Защитники
Логичным выходом в ситуации, когда наткнуться на «врага» можно даже на официальных площадках, кажется антивирус. Для смартфонов на базе Android их существует великое множество. И подойти к выбору лучше ответственно. Если просто вбить в поиск «антивирус», то найти можно не средство защиты, а лишние проблемы. Специалисты напоминают, что неизвестный антивирус может в лучшем случае оказаться пустышкой, а в худшем — программой с тем же трояном.
«У антивирусов под Android главная проблема в том, что они необходимы, но часто недостаточны: отслеживают старые угрозы, заражения, которые уже попадали в антивирусные базы. Но лучше их устанавливать, особенно для пожилых родственников и детей. Настроить жесткую политику проверки и удаления, в случае когда приложение обнаружило проблему. И я рекомендую все-таки известные бренды, потому что фейков очень много», — делится с «Известиями» специалист Group-IB.
Облегчает жизнь пользователям и то, что с каждым годом производители совершенствуют свои технологии, в том числе встроенной безопасности. Чтобы понять, насколько прокачанный в плане безопасности телефон вы выбираете, обратить внимание следует не только на версию операционной системы (ОС).
— Важна не столько сама версия, сколько такая вещь, как патчи безопасности. Они появились начиная с седьмого Android, но безопасными можно считать телефоны, у которых патчи позднее ноября 2019 года. В ноябре было найдено очень много уязвимостей, которые позволяют получить права суперпользователя. Иногда от вируса можно избавиться, только полностью перепрошив аппарат, — объясняют в лаборатории компьютерной криминалистики.
Для iOS же антивирусов не существует в принципе. Операционная система устроена так, что одно приложение не должно получить прав контроля над другими. Остается надеяться на производителя, который будет своевременно выпускать обновления.
Внимание к деталям
Первое, на что нужно обратить внимание, — какие разрешения просит приложение. Явно насторожить пользователя должен запрос функций администрирования.
— Это могут просить антивирусы, приложения контроля за детьми, некоторые встроенные приложения, как «найти телефон» от Samsung. Но это исключения. Для остальных такой запрос — аномальная ситуация, — уверяет Сергей Никитин.
Еще одна важная функция, с которой нужно быть осторожнее, — «специальные возможности».
Виктор Чебышев, антивирусный эксперт «Лаборатории Касперского»
Специальные возможности — это сервис операционной системы, созданный для людей с ограниченными возможностями. Если троянец получит к нему доступ, его возможности становятся безграничными. Например, он может заполнять и осуществлять платежный перевод в банковском приложении. А сталкерское приложение будет перехватывать все нажатия виртуальной клавиатуры — так утекают личная переписка и пароли.
Главное — помнить: вы имеете полное право убрать галочки с пунктов, которые кажутся вам лишними. Это не значит, что приложение вовсе не будет работать, напоминают эксперты.