Como desarrollador de Google Play, tienes un rol fundamental a la hora de garantizar la seguridad de tu app y la de sus usuarios. Con el aumento de las campañas de abuso que se basan en la ingeniería social, en particular las que tienen como víctimas potenciales a poblaciones vulnerables, es más importante que nunca tomar medidas proactivas para proteger a los usuarios y la integridad de tu app.
En este artículo, se proporciona una descripción general de dos parámetros de seguridad de Android y Play que pueden resultar útiles para mejorar la seguridad de tu app: FLAG_SECURE
y REQUIRE_SECURE_ENV
. Si los comprendes y utilizas de forma eficaz, puedes ayudar a combatir el abuso que apunta a usuarios específicos y a proporcionar protección adicional al ecosistema de tu app.
FLAG_SECURE
FLAG_SECURE indica que tu app está diseñada para ejecutarse en un entorno más seguro, con el objetivo de mitigar posibles vulnerabilidades, supervisión y ataques. Es un parámetro de visualización declarado en el código de una app para indicar que su IU contiene datos sensibles destinados a limitarse a una plataforma segura mientras se usa la app. Indica a otras apps y servicios que los datos no deben aparecer en capturas de pantalla ni visualizarse en pantallas no seguras. Los desarrolladores declaran este parámetro cuando no se debe visualizar ni transmitir el contenido de la app fuera de ella o del dispositivo del usuario. Por ejemplo, si una pantalla de tu app contiene datos sensibles que podrían representar un riesgo de seguridad si los ve un tercero, por ejemplo, desde apps de asistencia remota, FLAG_SECURE
es una forma de declarar que los datos son sensibles y ayudar a brindar un entorno seguro. Por motivos de seguridad y privacidad, todas las apps que se distribuyen en Google Play deben respetar FLAG_SECURE, lo que significa que no se deben facilitar ni crear soluciones alternativas para evadir la configuración del parámetro en otras apps.
REQUIRE_SECURE_ENV
Los ataques de ingeniería social son particularmente preocupantes cuando apuntan a la población mayor y a otros grupos vulnerables que pueden ser más susceptibles a la manipulación y el engaño. Con frecuencia, estos ataques implican engañar a los usuarios para que revelen información sensible, como contraseñas o datos financieros, o para que descarguen contenido malicioso.
Si implementas los parámetros FLAG_SECURE
y REQUIRE_SECURE_ENV
, puedes ayudar a mitigar los ataques de ingeniería social en tu app. Al usarse de forma independiente o simultánea, estos parámetros ayudan a mejorar la protección contra vulnerabilidades que los atacantes suelen aprovechar para obtener acceso a dispositivos o datos personales y sensibles de los usuarios.
Protección de usuarios mayores y poblaciones vulnerables del abuso basado en ingeniería social
Los ataques de ingeniería social son particularmente preocupantes cuando apuntan a la población mayor y a otros grupos vulnerables que pueden ser más susceptibles a la manipulación y el engaño. Con frecuencia, estos ataques implican engañar a los usuarios para que revelen información sensible, como contraseñas o datos financieros, o para que descarguen contenido malicioso.
Si implementas los parámetros FLAG_SECURE
y REQUIRE_SECURE_ENV
, puedes ayudar a mitigar los ataques de ingeniería social en tu app. Al usarse de forma independiente o simultánea, estos parámetros ayudan a mejorar la protección contra vulnerabilidades que los atacantes suelen aprovechar para obtener acceso a dispositivos o datos personales y sensibles de los usuarios.
Medidas de protección adicionales
Además de usar los parámetros de seguridad, considera incorporar estas medidas adicionales para proteger a tus usuarios contra el abuso basado en ingeniería social:
- Instrúyelos acerca de las tácticas de ingeniería social: proporciona advertencias claras y concisas en tu app sobre las técnicas comunes de ingeniería social, como las estafas de phishing y las llamadas de asistencia falsas.
- Implementa mecanismos de autenticación seguros: emplea métodos de autenticación sólidos, como la autenticación de dos factores, para evitar el acceso no autorizado a las cuentas de los usuarios.
- Actualiza tu app con regularidad: mantenla actualizada con los parches de seguridad y las correcciones de errores más recientes para abordar cualquier vulnerabilidad potencial que los atacantes puedan aprovechar.
Colaboración y educación continua
La protección de los usuarios y la lucha contra el abuso son un proceso continuo que requiere la colaboración entre los desarrolladores, Google Play y la comunidad de seguridad en general. Lee nuestro blog sobre seguridad para mantenerte al tanto de las prácticas recomendadas relacionadas con este tema.
Si trabajamos juntos, podemos crear un ecosistema de Android más seguro y confiable para todos los usuarios.
Preguntas frecuentes
Haz clic en cada pregunta a continuación para expandirla o contraerla.
¿El uso de estos parámetros alterará mis apps de forma negativa? ¿Cuánto tiempo llevará la implementación?Estos parámetros están diseñados para mejorar la seguridad y la privacidad, no para obstaculizar el rendimiento. Sin embargo, si las funciones de tu app dependen en gran medida de compartir capturas o grabaciones de pantalla, establecer FLAG_SECURE
podría impedir que los usuarios capturen las imágenes correspondientes en esas páginas específicas. En este caso, es importante encontrar el equilibrio entre las necesidades de seguridad y la experiencia del usuario. Además, algunas extensiones o personalizaciones de apps de terceros pueden depender de métodos de captura de pantalla que podrían verse afectados por estos parámetros. Si tu app se integra con esas herramientas, vale la pena hacer pruebas de compatibilidad.
El proceso de implementación suele ser rápido y directo. Por lo general, implica agregar unas líneas de código a las páginas o actividades pertinentes en las que deseas aplicar los parámetros. El tiempo exacto depende de la complejidad de tu app y de la cantidad de páginas involucradas.
FLAG_SECURE
es un parámetro a nivel de la ventana que, cuando se establece, indica que el contenido de la ventana está protegido, lo que evita que aparezca en capturas de pantalla o que se visualice en pantallas no seguras, mientras que REQUIRE_SECURE_ENV
indica a otras apps que tu app debe ejecutarse en un entorno seguro. Tanto FLAG_SECURE
como REQUIRE_SECURE_ENV
son parámetros de seguridad que se pueden usar para proteger las apps para Android y a los usuarios de este sistema operativo contra abusos y ataques
Cuando una app bancaria usa FLAG_SECURE
en su pantalla de acceso, crea una ventana especial que protege la información sensible, como las credenciales de acceso del usuario. Como regla general, esta protección ayuda a evitar que el contenido de la ventana se muestre en pantallas no seguras o se incluya en capturas de pantalla, grabaciones o intentos de visualización remota. Por lo tanto, en lugar de los datos de inicio de sesión de un usuario, es posible que veas un área en blanco en esos tipos de pantallas.
Algunos ejemplos de apps que pueden usar estos parámetros son las que manejan datos sensibles y personales de los usuarios, como la información financiera. Las apps bancarias son algunos ejemplos que suelen usar FLAG_SECURE
. Las apps que son particularmente vulnerables al abuso, como las que se orientan a poblaciones mayores o vulnerables, también deben considerar el uso del parámetro REQUIRE_SECURE_ENV
.
Para implementar el parámetro FLAG_SECURE, agrega la siguiente línea al archivo AndroidManifest.xml:
XML
<activity android:name=".MyActivity"
android:exported="true"
android:windowSoftInputMode="adjustPan">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Para implementar el parámetro REQUIRE_SECURE_ENV
, agrega la siguiente línea a tu archivo AndroidManifest.xml:
XML
<manifest ...>
<application ...>
…
<property android:name="REQUIRE_SECURE_ENV" android:value="1" />
…
</application>
</manifest>