Skip to content

MASTG-TEST-0010: Identificando Informações Sensíveis em Capturas de Tela Geradas Automaticamente

Deprecated Test

This test is deprecated and should not be used anymore. Reason: New version available in MASTG V2.

Please check the following MASTG v2 tests that cover this v1 test:

Visão Geral

Análise Estática

Uma captura de tela da atividade atual é tirada quando um aplicativo Android vai para segundo plano e é exibida para fins estéticos quando o app retorna ao primeiro plano. No entanto, isso pode vazar informações sensíveis.

Para determinar se o aplicativo pode expor informações sensíveis através do seletor de aplicativos, verifique se a opção FLAG_SECURE foi definida. Você deve encontrar algo semelhante ao seguinte trecho de código:

Exemplo em Java:

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

setContentView(R.layout.activity_main);

Exemplo em Kotlin:

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

setContentView(R.layout.activity_main)

Se a opção não tiver sido definida, o aplicativo está vulnerável à captura de tela.

Análise Dinâmica

Durante o teste de caixa preta do aplicativo, navegue até qualquer tela que contenha informações sensíveis e clique no botão home para enviar o app para segundo plano, então pressione o botão do seletor de aplicativos para ver a captura. Como mostrado abaixo, se FLAG_SECURE estiver definida (imagem à esquerda), a captura estará vazia; se a flag não tiver sido definida (imagem à direita), as informações da atividade serão exibidas:

Em dispositivos com suporte a criptografia baseada em arquivo (FBE), as capturas são armazenadas na pasta /data/system_ce/<USER_ID>/<IMAGE_FOLDER_NAME>. <IMAGE_FOLDER_NAME> depende do fabricante, mas os nomes mais comuns são snapshots e recent_images. Se o dispositivo não suportar FBE, a pasta /data/system/<IMAGE_FOLDER_NAME> é usada.

Acessar essas pastas e as capturas requer privilégios de root.