Google Play Integrity API научили проверять источник Android-приложений

Google Play Integrity API научили проверять источник Android-приложений

Google Play Integrity API научили проверять источник Android-приложений

В Play Integrity API добавлена возможность верификации установки Android-софта из магазина Google. Вердикт «UNLICENSED» разработчик теперь может использовать для блокировки доступа либо через подсказку настоять на скачивании версии с Google Play.

Подобные проверки позволяют повысить безопасность приложений и предотвратить злоупотребления. При использовании неофициальных источников (sideloading) юзер рискует получить неполноценную, мошенническую или откровенно вредоносную версию приложения; разработчику оригинала в таких случаях грозит потеря доброго имени.

Предотвратить sideloading помогает Play Integrity API — средство предоставления разработчикам информации о надёжности запущенных приложений. Проверки проводятся по различным параметрам, в том числе определяются целостность бинарника, обратившегося к серверу, и наличие на устройстве поддержки Google Play (а теперь и наличие соответствующего аккаунта у текущего пользователя).

Вызов Play Integrity API может происходить на любом этапе выполнения программы. Разработчик также волен выбрать реакцию приложения на результаты проверок.

 

Новую опцию (проверку «подлинности» пользователя) уже освоили некоторые создатели игр для Android. На GitHub опубликован код, демонстрирующий данную функциональность.

Когда Play Integrity API возвращает вердикт «UNLICENSED», пользователю выводится диалоговое окно с предложением установить софт через Google Play. Если последовать этой подсказке, приложение добавится в библиотеку Play Store (нелегитимная версия удаляется вместе со связанными данными) и с этого момента будет получать апдейты из официального источника.

В 100 приложениях для знакомств оказалось около 2000 уязвимостей

Исследование ста приложений для знакомств — как российских, так и зарубежных — показало тревожную картину: в них обнаружено почти 2000 уязвимостей, причём 17% из них относятся к критическим. Анализ провела компания AppSec Solutions.

Результаты исследования приводят «Ведомости». Как пояснил изданию руководитель отдела анализа защищённости AppSec Solutions Никита Пинаев, ещё 23% выявленных уязвимостей имеют средний уровень критичности, а 14% — низкий.

Оставшиеся проблемы относятся к категории Info либо представляют собой организационные, сетевые, логические и другие ошибки.

Наиболее распространённой критической проблемой, по словам Никиты Пинаева, стало хранение чувствительных данных непосредственно в исходном коде — такую ошибку выявили в 22 приложениях.

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

Мобильный разработчик компании EvApps Андрей Соболевский отметил в комментарии для «Ведомостей», что в среднем в одном мобильном приложении насчитывается от 20 до 30 уязвимостей. Чаще всего они связаны с небезопасным хранением данных, слабыми механизмами идентификации и аутентификации пользователей, а также с SQL-инъекциями.

По словам руководителя отдела операционной поддержки платформы Solar appScreener ГК «Солар» Антона Прокофьева, уязвимости мобильных приложений носят типовой характер и практически не зависят от отрасли. Основные причины — отсутствие проверок на этапе разработки и использование непроверенных компонентов с открытым исходным кодом.

Руководитель разработки PT Maze в Positive Technologies Николай Анисеня добавил, что применение средств, затрудняющих реверс-инжиниринг, позволило бы сократить количество выявляемых уязвимостей примерно на 40%, а в отдельных категориях приложений — даже вдвое.

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

  • Обращение к DNS, позволяющее злоумышленникам перенаправлять запросы на сторонние ресурсы.
  • Небезопасная рефлексия, создающая возможность запуска произвольного кода.
  • Ошибки в реализации протоколов шифрования.
  • Использование слабых алгоритмов хеширования.
  • Применение незащищённых протоколов обмена данными.

Подобные уязвимости встречаются в трёх из четырёх приложений и открывают возможности для атак типа MITM («человек посередине»), при которых злоумышленник внедряется в канал связи. Это, в свою очередь, чревато утечками пользовательских данных.

Архитектор информационной безопасности UserGate uFactor Дмитрий Овчинников отметил, что одна из главных опасностей таких атак — их незаметность для пользователей. При этом злоумышленники могут не только похищать данные, но и получать доступ к скрытому функционалу приложений, а затем использовать эту информацию в других, в том числе таргетированных атаках. Инженер ИБ компании «Спикател» Владимир Иванов также предупредил, что, например, сталкеры могут использовать функции дейтинговых приложений для слежки за пользователями.

Всего, по данным AppSec Solutions, уязвимости присутствуют в 70% мобильных приложений. Злоумышленники активно используют их для монетизации доступа — через фишинг, масштабирование массовых атак, выманивание денег за несуществующие услуги, а также злоупотребление чужими счетами и платными подписками.

RSS: Новости на портале Anti-Malware.ru