Questo documento descrive i modi per monitorare le attività sensibili, come gli accessi degli utenti e gli acquisti online.
SECURE_SECURE
FLAG_SECURE
è un flag finestra che indica ad Android di non consentire gli screenshot
o di mostrare la visualizzazione della finestra su un display non sicuro (ad esempio la trasmissione dello
schermo). Ciò è utile per le applicazioni che devono proteggere informazioni
sensibili, come le app di online banking o i gestori delle password. Quando una finestra viene segnalata
con FLAG_SECURE
, Android impedisce l'acquisizione di screenshot e ne impedisce la visualizzazione
su un display non sicuro, come una TV o
un proiettore. Ciò contribuisce a proteggere le informazioni visualizzate nella finestra dall'accesso da parte di persone non autorizzate.
In che modo questo contribuisce a mitigare le attività fraudolente
Un'app o un'entità dannosa potrebbe recuperare screenshot in background. Quando lo stato
dell'app cambia in background, è possibile utilizzare FLAG_SECURE
. Quando viene acquisito lo screenshot, l'immagine risultante è vuota.
FLAG_SECURE
aiuta anche per i casi d'uso di condivisione dello schermo da remoto. Non è sempre un'app dannosa che recupererà gli screenshot, ma anche app legittime di condivisione dello schermo vengono comunemente utilizzate in situazioni fraudolente.
Implementazione
Per le viste con le informazioni che vuoi proteggere, aggiungi quanto segue:
Kotlin
window?.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE )
Java
window.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE );
best practice
È importante notare che questo approccio non è affidabile nel prevenire gli attacchi overlay. In alcuni casi non prevede correttamente se la registrazione dello schermo è attiva, tuttavia copre la maggior parte dei casi d'uso. Per mitigare gli attacchi agli overlay, leggi la prossima sezione sulle autorizzazioni per HIDE_OVERLAY_WINDOWS
.
NASCONDI_WINDOWS_OVERLAY
HIDE_OVERLAY_WINDOWS
è un'autorizzazione aggiunta in Android 12 per cui la tua app può
disattivare l'utilizzo di overlay delle applicazioni. In Android 12 abbiamo reso
più difficile acquisire l'autorizzazione SYSTEM_ALERT_WINDOW
, consentendo essenzialmente alla tua app di bloccare gli overlay di app di terze parti.
In che modo questo contribuisce a mitigare le attività fraudolente
Se attivi l'autorizzazione HIDE_OVERLAY_WINDOWS
, disattivi
la creazione degli overlay delle applicazioni nella tua app. Questa autorizzazione fornisce un
meccanismo di protezione contro gli attacchi cloaking e dagger.
Implementazione
Per abilitare questa autorizzazione, aggiungi HIDE_OVERLAY_WINDOWS
al file manifest
del progetto.
best practice
Come per qualsiasi autorizzazione, dovresti considerare attendibile qualsiasi app in overlay almeno quanto attendi qualsiasi altra app sul dispositivo. In altre parole, la tua app non deve consentire ad altre app di visualizzare overlay su di essa, a meno che tu non abbia la certezza che l'altra app sia attendibile. Consentire a un'app di spostarsi su altre app può essere pericoloso perché potrebbe rubare password o leggere messaggi.