Ce document décrit les méthodes de surveillance des activités sensibles, telles que les connexions utilisateur et les achats en ligne.
SIGNALEMENT_SÉCURISÉ
FLAG_SECURE
est un indicateur de fenêtre qui indique à Android de ne pas autoriser les captures d'écran ou d'afficher la vue de la fenêtre sur un écran non sécurisé (tel que la diffusion de l'écran). Cela est utile pour les applications qui doivent protéger des informations sensibles, telles que les applications bancaires ou les gestionnaires de mots de passe. Lorsqu'une fenêtre est signalée avec FLAG_SECURE
, Android empêche la capture d'écran et l'affichage de la fenêtre sur un écran non sécurisé, comme un téléviseur ou un projecteur. Cela permet d'empêcher des personnes non autorisées d'accéder aux informations affichées dans la fenêtre.
En quoi cela permet-il de limiter la fraude ?
Une application ou une entité malveillante peut récupérer des captures d'écran en arrière-plan. Lorsque l'état de votre application passe en arrière-plan, vous pouvez utiliser FLAG_SECURE
. Une fois la capture d'écran effectuée, l'image obtenue est vide.
FLAG_SECURE
facilite également les cas d'utilisation du partage d'écran à distance. Il ne s'agit pas toujours d'une application malveillante qui récupère des captures d'écran. Des applications de partage d'écran légitimes sont également couramment utilisées dans des situations frauduleuses.
Implémentation
Pour les vues contenant les informations que vous souhaitez protéger, ajoutez les éléments suivants:
Kotlin
window?.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE )
Java
window.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE );
pour réussir votre lancement
Il est important de noter que cette approche n'est pas fiable pour empêcher les attaques par superposition. Dans certains cas, elle ne prédit pas correctement si l'enregistrement d'écran est actif, mais il couvre la plupart des cas d'utilisation. Pour limiter les attaques par superposition, lisez la section suivante sur les autorisations HIDE_OVERLAY_WINDOWS
.
MASQUER_LES_FENÊTRES_SUPERPOSITIONS
HIDE_OVERLAY_WINDOWS
est une autorisation ajoutée dans Android 12 qui permet à votre application de désactiver les superpositions d'application. Dans Android 12, nous avons rendu plus difficile l'obtention de l'autorisation SYSTEM_ALERT_WINDOW
, ce qui permet essentiellement à votre application de bloquer les superpositions d'applications tierces.
En quoi cela permet-il de limiter la fraude ?
Lorsque vous activez l'autorisation HIDE_OVERLAY_WINDOWS
, vous désactivez l'affichage de superpositions d'application sur votre application. Cette autorisation fournit un mécanisme de protection contre les attaques par technique de dissimulation (cloaking).
Implémentation
Pour activer cette autorisation, ajoutez HIDE_OVERLAY_WINDOWS
au fichier manifeste de votre projet.
pour réussir votre lancement
Comme pour toute autorisation, vous devez faire confiance à toute application superposée au moins autant que toute autre application installée sur l'appareil. En d'autres termes, votre application ne doit pas autoriser d'autres applications à superposer des éléments, sauf si vous savez qu'elle est fiable. Autoriser une application à se superposer à d'autres applications peut être dangereuse, car elle peut voler des mots de passe ou lire des messages.