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 (нелегитимная версия удаляется вместе со связанными данными) и с этого момента будет получать апдейты из официального источника.

Android запретит доступ к экрану «лишним» приложениям

Google, похоже, готовит ещё одно нововведение по части безопасности Android. В тестовой сборке Android Canary 2602 обнаружена новая функция для Advanced Protection Mode — режима «максимальной защиты», который компания представила в Android 16.

Теперь Advanced Protection Mode может ограничивать работу приложений, использующих AccessibilityService API, если они не классифицированы как инструменты для доступности.

AccessibilityService API — это мощный механизм Android, изначально созданный для помощи людям с ограниченными физическими возможностями. С его помощью приложения могут читать содержимое экрана, отслеживать действия пользователя и даже выполнять жесты от его имени.

Именно поэтому этот API часто становился инструментом атакующих. За последние годы многие приложения — от автоматизаторов и лаунчеров до «оптимизаторов» и антивирусов — использовали его для обхода системных ограничений. Формально ради удобства, однако на деле получая очень широкие права.

Google постепенно ужесточала политику. Приложения, действительно предназначенные для помощи людям с ограниченными возможностями, должны указывать специальный атрибут isAccessibilityTool. К ним относятся экранные дикторы, системы управления жестами, голосовой ввод, брайлевские интерфейсы и другие специализированные инструменты.

По данным аналитиков, в новой версии Android Canary  при включении Advanced Protection Mode система:

  • запрещает выдавать разрешение Accessibility Service приложениям, не признанным Accessibility Tools;
  • автоматически отзывает уже выданные разрешения у таких приложений.

Если приложение сильно зависит от этого API, оно просто перестанет работать.

В тестах, например, приложение dynamicSpot (эмулирующее Dynamic Island на Android) становилось недоступным: пункт был с пометкой «Restricted by Advanced Protection». Причина простая: оно использует AccessibilityService для чтения уведомлений и отображения поверх других приложений.

Инструменты, официально классифицированные как средства доступности, под ограничения не попадают.

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