Proteger atividades sensíveis

Este documento detalha formas de monitorar atividades sensíveis, como logins de usuários e compras on-line.

SEGURANÇA DA FLAG

FLAG_SECURE é uma sinalização de janela que informa ao Android para não permitir capturas de tela. ou exibir a visualização da janela em uma tela não segura (como a transmissão do tela). Isso é útil para aplicativos que precisam proteger dados sensíveis como apps bancários ou gerenciadores de senhas. Quando uma janela é sinalizada com FLAG_SECURE, o Android impede que capturas de tela sejam feitas e impede a janela seja exibida em uma tela não segura, como uma TV ou projetor Isso ajuda a proteger as informações exibidas na para que ele não seja acessado por pessoas não autorizadas.

Como isso ajuda a reduzir fraudes

Um app ou uma entidade maliciosa pode recuperar capturas de tela em segundo plano. Quando o estado de mudanças do app para o plano de fundo, a FLAG_SECURE poderá ser usada. Quando o captura de tela, a imagem resultante está em branco.

O FLAG_SECURE também ajuda nos casos de uso de compartilhamento remoto de tela. Nem sempre é um um app malicioso que recupera capturas de tela, apps legítimos de compartilhamento de tela são que normalmente é usado em situações fraudulentas.

Implementação

Para visualizações com as informações que você quer proteger, adicione o seguinte:

Kotlin


window?.setFlags(
    WindowManager.LayoutParams.FLAG_SECURE,
    WindowManager.LayoutParams.FLAG_SECURE
)

Java


window.setFlags(
  WindowManager.LayoutParams.FLAG_SECURE,
  WindowManager.LayoutParams.FLAG_SECURE
);

Práticas recomendadas

Essa abordagem não é confiável para impedir a sobreposição ataques. Em alguns casos, ele não prevê corretamente se a gravação de tela está ativo, mas abrange a maioria dos casos de uso. Para mitigar ataques de sobreposição, leia a próxima seção sobre as permissões HIDE_OVERLAY_WINDOWS.

HIDE_OVERLAY_WINDOWS

HIDE_OVERLAY_WINDOWS é uma permissão adicionada no Android 12, em que o app pode desative a sobreposição de aplicativos. No Android 12, fizemos mais difícil conseguir a permissão SYSTEM_ALERT_WINDOW, basicamente. permitindo que o app bloqueie sobreposições de apps de terceiros.

Como isso ajuda a reduzir fraudes

Ao ativar a permissão HIDE_OVERLAY_WINDOWS, você desativa o sobrepondo o aplicativo sobrepondo-o. Essa permissão fornece uma mecanismo de proteção contra ataques de cloak e adagger.

Implementação

Para ativar essa permissão, adicione HIDE_OVERLAY_WINDOWS ao manifesto do aplicativo.

Práticas recomendadas

Como acontece com qualquer permissão, você deve confiar em qualquer aplicativo de sobreposição pelo menos tanto quanto confiar em qualquer outro app do dispositivo. Em outras palavras, seu app não deve permitir outros apps desenham sobreposições sobre ela, a menos que você saiba que o outro app confiáveis. Permitir que um app se sobreponha a outros pode ser perigoso porque pode roubar senhas ou ler mensagens.