Novedades de productos

Mejorar la seguridad de Android: evitar que el malware espíe los datos de aplicaciones

Lectura de 2 minutos

La seguridad es fundamental para Android. Colaboramos contigo para mantener la plataforma segura y proteger los datos de los usuarios ofreciendo potentes herramientas y funciones de seguridad, como Gestor de credenciales y FLAG_SECURE. Cada lanzamiento de Android incluye mejoras de rendimiento y seguridad. Con Android 16, puedes dar pasos sencillos pero significativos para reforzar las defensas de tu aplicación. Echa un vistazo a nuestro vídeo o sigue leyendo para obtener más información sobre nuestras protecciones mejoradas para las APIs de accesibilidad.

 

 

Protege tu aplicación frente al espionaje con una sola línea de código

Hemos observado que, en ocasiones, personas malintencionadas intentan aprovechar las funciones de las APIs de accesibilidad para leer información sensible, como contraseñas y datos financieros, directamente desde la pantalla y manipular el dispositivo de un usuario inyectando toques. Para combatir este problema, Android 16 ofrece una nueva y potente defensa en una sola línea de códigoaccessibilityDataSensitive.

La marca accessibilityDataSensitive te permite marcar explícitamente una vista o un elemento componible como que contiene datos sensibles. Si asignas el valor true a esta marca en tu aplicación, estarás bloqueando el acceso de aplicaciones potencialmente maliciosas a tus datos de vistas sensibles o la realización de interacciones en ellos. Así funciona: se deniega el acceso a esa vista a cualquier aplicación que solicite el permiso de accesibilidad y no se haya declarado explícitamente como herramienta de accesibilidad legítima (isAccessibilityTool=true).

Este cambio, sencillo pero eficaz, ayuda a evitar que el malware robe información y realice acciones no autorizadas, todo ello sin afectar a la experiencia de los usuarios con las herramientas de accesibilidad legítimas. Nota: Si una aplicación no es una herramienta de accesibilidad, pero solicita permisos de accesibilidad y define isAccessibilityTool=true, Play la rechazará y Google Play Protect la bloqueará en los dispositivos de los usuarios. 

Seguridad automática y mejorada para la protección de setFilterTouchesWhenObscured

Ya hemos integrado esta nueva función de seguridad accessibilityDataSensitive con el método setFilterTouchesWhenObscured

Si ya usas setFilterTouchesWhenObscured(true) para proteger tu aplicación frente al tapjacking, tus vistas se tratarán automáticamente como datos sensibles para la accesibilidad. Al mejorar el método setFilterTouchesWhenObscured con protecciones accessibilityDataSensitive, ofrecemos al instante a todos los usuarios una capa de defensa adicional sin que tengan que hacer nada.

imagen.png

Primeros pasos

Te recomendamos que uses setFilterTouchesWhenObscured o, como alternativa, la marca accessibilityDataSensitive en cualquier pantalla que contenga información sensible, incluidas las páginas de inicio de sesión, los flujos de pago y cualquier vista que muestre datos personales o financieros.

Para Jetpack Compose

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

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

 

Usa el modificador semantics para aplicar la propiedad sensitiveData a un elemento componible.

BasicText { text = “Your password”,

            modifier = Modifier.semantics {

                sensitiveData = true }}

 

 

En el caso de las aplicaciones basadas en vistas

En el diseño XML, añade el atributo pertinente a la vista sensible.

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

<TextView android:filterTouchesWhenObscured="true" />

 

 

<TextView android:accessibilityDataSensitive="true" />

 

También puedes definir la propiedad de forma programática en Java o Kotlin:

setFilterTouchesWhenObscuredaccessibilityDataSensitive

 

myView.filterTouchesWhenObscured = true;

 

 

myView.isAccessibilityDataSensitive = true;

 

 

myView.setFilterTouchesWhenObscured(true)

 

 

myView.setAccessibilityDataSensitive(true);

 

Consulta más información sobre las marcas accessibilityDataSensitive y setFilterTouchesWhenObscured en la guía de tapjacking.

Colaboración con desarrolladores para proteger a los usuarios

Hemos colaborado con desarrolladores desde el principio para asegurarnos de que esta función satisface las necesidades reales y se integra perfectamente en tu flujo de trabajo.

imagen.png

"Siempre hemos dado prioridad a la protección de los datos financieros sensibles de nuestros clientes, lo que nos ha llevado a crear nuestra propia capa de protección contra el malware basado en la accesibilidad. Revolut apoya firmemente la introducción de esta nueva API oficial de Android, ya que nos permite dejar de usar gradualmente nuestro código personalizado y optar por una defensa de plataforma sólida y de una sola línea". 
- Vladimir Kozhevnikov, ingeniero de Android en Revolut

Puedes desempeñar un papel fundamental a la hora de proteger a tus usuarios frente a ataques maliciosos basados en la accesibilidad adoptando estas funciones. Recomendamos a todos los desarrolladores que integren estas funciones en sus aplicaciones para proteger a los usuarios. 

Juntos, podemos crear una experiencia más segura y fiable para todos.

Escrito por:

Seguir leyendo