Новости о продуктах

Повышение безопасности Android: защита от вредоносных программ, которые могут получить доступ к данным вашего приложения.

2 минуты чтения
Bennet Manuel и Robert Clifford

Безопасность — это основа Android. Мы сотрудничаем с вами, чтобы обеспечить безопасность платформы и защитить данные пользователей, предлагая мощные инструменты и функции безопасности, такие как Credential Manager и FLAG_SECURE . Каждый релиз Android приносит улучшения производительности и безопасности, а с Android 16 вы можете предпринять простые, но важные шаги для усиления защиты вашего приложения. Посмотрите наше видео или продолжайте читать, чтобы узнать больше о нашей улучшенной защите API специальных возможностей.

Защитите свое приложение от слежки всего одной строкой кода.

Мы видели, что злоумышленники иногда пытаются использовать функции API специальных возможностей для чтения конфиденциальной информации, такой как пароли и финансовые данные, непосредственно с экрана и манипулирования устройством пользователя путем внедрения сенсорного ввода. Для борьбы с этим Android 16 предлагает новую, мощную защиту в одной строке кода : accessibilityDataSensitive .

Флаг accessibilityDataSensitive позволяет явно пометить представление или составной элемент как содержащий конфиденциальные данные. Установив этот флаг в значение true в вашем приложении, вы, по сути, блокируете доступ потенциально вредоносных приложений к конфиденциальным данным представления или к выполнению с ними каких-либо действий. Вот как это работает: любому приложению, запрашивающему разрешение на доступ к специальным возможностям, которое явно не объявило себя легитимным инструментом специальных возможностей ( isAccessibilityTool=true ), будет отказано в доступе к этому представлению.

Это простое, но эффективное изменение помогает предотвратить кражу информации вредоносным ПО и выполнение несанкционированных действий, не влияя при этом на удобство использования пользователями легитимных инструментов специальных возможностей. Примечание: если приложение не является инструментом специальных возможностей, но запрашивает разрешения на использование специальных возможностей и устанавливает параметр isAccessibilityTool=true , Play отклонит его, а Google Play Protect заблокирует его на устройствах пользователей.

Автоматическая, улучшенная защита для setFilterTouchesWhenObscured

Мы уже интегрировали эту новую функцию безопасности accessibilityDataSensitive в существующий метод setFilterTouchesWhenObscured .

Если вы уже используете setFilterTouchesWhenObscured(true) для защиты вашего приложения от перехвата касаний, ваши представления автоматически обрабатываются как конфиденциальные данные для обеспечения доступности. Улучшив метод setFilterTouchesWhenObscured с помощью защиты accessibilityDataSensitive , мы мгновенно предоставляем всем дополнительный уровень защиты без дополнительных усилий.

image.png

Начиная

Мы рекомендуем использовать setFilterTouchesWhenObscured или, в качестве альтернативы, флаг accessibilityDataSensitive на любом экране, содержащем конфиденциальную информацию, включая страницы входа в систему, платежные системы и любые представления, отображающие личные или финансовые данные.

Для Jetpack Compose

setFilterTouchesWhenObscured accessibilityDataSensitive

val composeView = LocalView.current DisposableEffect(Unit) { composeView.filterTouchesWhenObscured = true onDispose { composeView.filterTouchesWhenObscured = false } }

Используйте модификатор semantics , чтобы применить свойство sensitiveData к составному объекту.

BasicText { text = “Your password”,

            modifier = Modifier.semantics {

                sensitiveData = true }}

Для приложений, основанных на представлении (View-based apps).

В XML-макете добавьте соответствующий атрибут к полю с конфиденциальной информацией.

setFilterTouchesWhenObscured accessibilityDataSensitive

<TextView android:filterTouchesWhenObscured="true" />

<TextView android:accessibilityDataSensitive="true" />

В качестве альтернативы, вы можете установить это свойство программно в Java или Kotlin:

setFilterTouchesWhenObscured accessibilityDataSensitive

myView.filterTouchesWhenObscured = true;

myView.isAccessibilityDataSensitive = true;

myView.setFilterTouchesWhenObscured(true)

myView.setAccessibilityDataSensitive(true);

Подробнее о флагах accessibilityDataSensitive и setFilterTouchesWhenObscured можно прочитать в руководстве по Tapjacking .

Сотрудничество с разработчиками для обеспечения безопасности пользователей.

Мы сотрудничали с разработчиками на ранних этапах, чтобы убедиться, что эта функция отвечает реальным потребностям и плавно интегрируется в ваш рабочий процесс.

image.png

«Мы всегда уделяли первостепенное внимание защите конфиденциальных финансовых данных наших клиентов, что потребовало от нас создания собственного уровня защиты от вредоносных программ, использующих специальные возможности. Revolut решительно поддерживает внедрение этого нового официального API для Android, поскольку это позволяет нам постепенно отказываться от собственного кода в пользу надежной, однострочной защиты платформы».
- Владимир Кожевников, Android-инженер в Revolut

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

Вместе мы можем создать более безопасный и заслуживающий доверия сервис для всех.

    Автор:

    Продолжить чтение