Proteger seu app e combater abuso com as flags de segurança FLAG_SECURE e REQUIRE_SECURE_ENV

Como desenvolvedor do Google Play, você tem um papel fundamental na garantia da segurança do app e dos usuários. Com o aumento de campanhas de abuso por engenharia social, especialmente direcionadas a populações vulneráveis, é mais importante do que nunca tomar medidas proativas para proteger os usuários e a integridade do seu app.

Este artigo apresenta uma visão geral de duas flags de segurança úteis do Android e do Google Play que podem melhorar a segurança do app: FLAG_SECURE e REQUIRE_SECURE_ENV. Ao entender e usar esses recursos de maneira eficaz, você pode ajudar a combater abusos direcionados e proteger ainda mais o ecossistema do seu app.

FLAG_SECURE

FLAG_SECURE indica que o app foi projetado para ser executado em um ambiente mais seguro, mitigando possíveis vulnerabilidades, monitoramentos e ataques. Ela é uma flag de exibição declarada no código do app para indicar que a interface tem dados sensíveis que precisam ser limitados a uma plataforma segura durante o uso do app. Assim, indica para outros apps e serviços que os dados não devem aparecer em capturas de tela nem ser visualizados em telas não seguras. Os desenvolvedores declaram essa flag quando o conteúdo não deve ser visualizado nem transmitido fora do app ou do dispositivo dos usuários. Por exemplo, se uma tela no app tiver dados sensíveis que poderão apresentar um risco de segurança se forem visualizados por terceiros, como um app de suporte remoto, a FLAG_SECURE é uma maneira de declarar essa situação e ajuda a viabilizar um ambiente seguro. Por motivos de segurança e privacidade, todos os apps distribuídos no Google Play precisam respeitar a FLAG_SECURE. Ou seja, não podem facilitar nem criar alternativas para ignorar as configurações da flag em outros apps.

REQUIRE_SECURE_ENV

Os ataques de engenharia social são particularmente preocupantes para a população idosa e outros grupos vulneráveis, que podem ser mais suscetíveis a manipulação e fraude. Esses ataques geralmente envolvem fazer com que os usuários revelem informações sensíveis, como senhas ou dados financeiros, ou baixem conteúdo malicioso.

Ao implementar as flags FLAG_SECURE e REQUIRE_SECURE_ENV, você pode reduzir os ataques de engenharia social no seu app. Usadas juntas ou separadas, essas flags ajudam na proteção contra vulnerabilidades que invasores geralmente exploram para ter acesso a dispositivos ou dados pessoais e sensíveis dos usuários.

Proteger usuários idosos e populações vulneráveis contra abuso por engenharia social

Os ataques de engenharia social são particularmente preocupantes para a população idosa e outros grupos vulneráveis, que podem ser mais suscetíveis a manipulação e fraude. Esses ataques geralmente envolvem fazer com que os usuários revelem informações sensíveis, como senhas ou dados financeiros, ou baixem conteúdo malicioso.

Ao implementar as flags FLAG_SECURE e REQUIRE_SECURE_ENV, você pode reduzir os ataques de engenharia social no seu app. Usadas juntas ou separadas, essas flags ajudam na proteção contra vulnerabilidades que invasores geralmente exploram para ter acesso a dispositivos ou dados pessoais e sensíveis dos usuários.

Outras medidas de proteção

Além de usar flags de segurança, considere incorporar estas outras medidas para proteger os usuários contra abusos de engenharia social:

  • Conscientize os usuários sobre táticas de engenharia social: disponibilize avisos claros e concisos no app sobre técnicas comuns de engenharia social, como golpes de phishing e ligações de suporte falsas.
  • Implemente mecanismos de autenticação seguros: use métodos robustos, como a autenticação de dois fatores, para impedir o acesso não autorizado a contas de usuários.
  • Atualize o app regularmente: mantenha o app atualizado com os patches de segurança e as correções de bugs mais recentes para lidar com possíveis vulnerabilidades que possam ser exploradas por invasores.

Colaboração e conscientização contínuas

O processo de combater abusos e proteger os usuários é contínuo e exige colaboração entre os desenvolvedores, o Google Play e a comunidade de segurança em geral. Leia nosso blog de Proteção & Segurança para ficar por dentro das práticas recomendadas.

Ao trabalharmos em conjunto, podemos criar um ecossistema Android mais seguro e confiável para todos os usuários.

Perguntas frequentes

Clique em uma pergunta abaixo para abrir ou fechar.

O uso dessas flags vai prejudicar meus apps? Quanto tempo vai levar a implementação?

Essas flags foram criadas para reforçar a segurança e a privacidade, não para prejudicar o desempenho. No entanto, se os recursos do app dependem muito do compartilhamento de capturas ou gravações de tela, definir FLAG_SECURE pode impedir que os usuários capturem esses recursos visuais nessas páginas específicas. Nesse caso, é importante buscar o equilíbrio entre as necessidades de segurança e a experiência do usuário. Além disso, algumas personalizações ou extensões de apps de terceiros podem usar métodos de captura de tela que talvez sejam afetados por essas flags. Se seu app for integrado a essas ferramentas, vale a pena testar a compatibilidade.

O processo de implementação costuma ser rápido e simples. Em geral, você adiciona algumas linhas de código às páginas ou atividades em que quer aplicar as flags. O tempo exato depende da complexidade do app e do número de páginas envolvidas.

Qual é a diferença entre as flags FLAG_SECURE e REQUIRE_SECURE_ENV?

A FLAG_SECURE é uma flag de nível de janela que, quando definida, indica que o conteúdo da janela deve ser tratado como seguro, impedindo que ele apareça em capturas de tela ou seja visualizado em telas não seguras. Já a REQUIRE_SECURE_ENV indica para outros apps que o seu precisa ser executado em um ambiente seguro. As flags de segurança FLAG_SECURE e REQUIRE_SECURE_ENV podem ser usadas para proteger apps/usuários do Android contra abuso e ataques.

Qual é um exemplo do funcionamento esperado da FLAG_SECURE?

Quando um app de banco usa FLAG_SECURE na tela de login, ele cria uma janela especial que protege informações sensíveis, como as credenciais de login do usuário. Como regra geral, essa proteção ajuda a evitar que o conteúdo da janela seja exibido em telas não seguras ou em capturas de tela, gravações ou tentativas de visualização remota. Portanto, em vez de ver os dados de login do usuário, você veria apenas uma área em branco nesses tipos de tela.

Quais tipos de apps podem usar as flags FLAG_SECURE e REQUIRE_SECURE_ENV?

Alguns exemplos de apps que podem usar essas flags são aqueles que lidam com dados pessoais e sensíveis do usuário, como informações financeiras. Os apps de banco são alguns exemplos de apps que costumam usar FLAG_SECURE. É recomendado que apps mais suscetíveis a abusos, como aqueles direcionados a idosos ou populações vulneráveis, também usem a flag REQUIRE_SECURE_ENV.

O uso dessas flags vai prejudicar meus apps? Quanto tempo vai levar a implementação?

Para implementar a flag FLAG_SECURE, adicione a seguinte linha ao arquivo 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 a flag REQUIRE_SECURE_ENV, adicione a seguinte linha ao arquivo AndroidManifest.xml:

XML

<manifest ...>
  <application ...>
        …

    <property android:name="REQUIRE_SECURE_ENV" android:value="1" />

    …


  •   </application>
    </manifest>

Isso foi útil?

Como podemos melhorá-lo?

Precisa de mais ajuda?

Siga as próximas etapas:

Pesquisa
Limpar pesquisa
Fechar pesquisa
Google Apps
Menu principal
13751668182179739079
true
Pesquisar na Central de Ajuda
true
true
true
true
true
92637
false
false