L’accessibilité est essentielle aux utilisateurs ; le danger vient d’un accès accordé sans raison et de son détournement.
Un logiciel malveillant n’a pas toujours besoin de casser le chiffrement des messages. S’il accède aux données que l’appareil traite pour l’affichage ou la saisie, il peut voir le contenu avant le chiffrement ou après le déchiffrement. L’abus de l’accessibilité et les fenêtres superposées en sont deux exemples, mais leurs mécanismes diffèrent.
Toute application disposant d’Accessibility ou d’une fenêtre flottante n’est pas non plus malveillante. Les lecteurs d’écran et les outils d’assistance sont indispensables à de nombreux utilisateurs. L’objectif est d’accorder les accès en connaissance de cause et de réduire les abus, pas de supprimer l’accessibilité.
Trois menaces à ne pas confondre
| Méthode | Que fait l’attaquant ? | Que ne faut-il pas supposer ? |
|---|---|---|
| Fausse fenêtre ou faux formulaire | Incite l’utilisateur à saisir des informations dans une interface ressemblant à l’application d’origine | Une superposition ne lit pas automatiquement le texte de la fenêtre sous-jacente |
| Tapjacking | Trompe l’utilisateur pour lui faire toucher une autre commande | Une couche transparente ne signifie pas que toutes les frappes sont enregistrées |
| Abus d’un service Accessibility | Utilise les capacités autorisées du service pour observer ou effectuer des actions | L’accès à toutes les vues n’est pas identique dans toutes les versions |
Le guide officiel du tapjacking distingue le masquage total du masquage partiel de l’interface. Le type de fenêtre, la version d’Android et les paramètres de l’application influent sur le résultat.
Comment Accessibility peut-il atteindre des données sensibles ?
Un service d’accessibilité peut, dans les limites de ses capacités, recevoir des informations de l’interface ou effectuer une action pour l’utilisateur. Un service malveillant peut détourner ces mêmes possibilités. L’activer pour une application sans raison claire n’est donc pas une décision anodine.
Toutefois, affirmer que « chaque service peut lire tout le texte de chaque application » est excessivement absolu. La structure des vues, la manière d’exposer les données et les restrictions du système d’exploitation comptent. Android propose des fonctions comme accessibilityDataSensitive pour les vues sensibles ; leur utilisation et leur comportement doivent être testés sur la version cible. Explication de Google sur la protection des données contre les services malveillants.
Que fait FLAG_SECURE, et que ne fait-il pas ?
FLAG_SECURE sert à limiter les captures d’écran et l’affichage de contenu sur des sorties non sécurisées. Cet indicateur ne contrôle pas à lui seul l’interface d’accessibilité, les faux formulaires ni toutes les méthodes d’extraction de texte. Photographier l’écran avec un autre appareil est également un problème distinct.
Android met aussi à disposition des applications des outils comme HIDE_OVERLAY_WINDOWS pour réduire les fenêtres superposées. Aucun ne doit être présenté comme un « bouton anti-espionnage » sans examiner la compatibilité, les limites de version et les conséquences pour les utilisateurs ayant des besoins d’accessibilité. Guide de protection des activités sensibles.
Liste de contrôle des accès pour l’utilisateur
- Dans les paramètres de l’appareil, examinez séparément les applications disposant de l’Accessibilité, de l’Affichage par-dessus d’autres applications et de l’Accès aux notifications. Les intitulés des chemins varient selon le fabricant et la version.
- Pour chacune, demandez-vous quelle fonction précise nécessite cet accès. L’accès d’un lecteur d’écran de confiance n’équivaut pas à celui d’une application lampe torche inconnue.
- Considérez une demande urgente d’activation d’un accès après l’installation d’un fichier inconnu comme une raison d’approfondir l’examen ; la seule demande d’autorisation ne prouve pas qu’il s’agit d’un logiciel malveillant.
- Si un écran de connexion semble suspect, ne saisissez pas d’informations sensibles. Ouvrez l’application par votre chemin habituel et vérifiez l’adresse ou la source d’installation.
- Après avoir révoqué un accès inutile, testez les outils d’assistance dont vous avez besoin. La sécurité ne doit pas rendre l’appareil inutilisable pour son propriétaire.
Si vous pensez que votre mot de passe ou votre session a déjà été exposé, révoquer une autorisation ne suffit pas. Depuis un appareil de confiance, examinez les sessions actives et les méthodes de récupération du compte, puis changez les mots de passe à risque.
Que doit tester le développeur ?
Évaluez séparément les écrans de connexion, de confirmation d’actions et d’affichage d’informations sensibles. Testez les interactions tactiles masquées et le masquage partiel ; un test de capture d’écran ne suffit pas. Vérifiez ensuite le même parcours avec un véritable lecteur d’écran et un outil d’assistance afin que la défense de sécurité ne compromette pas l’accès légitime.
Dans le rapport de test, consignez les versions d’Android et de l’application, le type de service, les autorisations et les données réellement visibles. Un test limité ne permet pas de conclure pour tous les appareils.
La frontière du chiffrement de la messagerie
Le modèle de menace de Livara exclut les appareils infectés ou déverrouillés de sa garantie de protection du contenu. Le nom d’un algorithme ou un échange de clés post-quantique ne constitue donc pas une défense contre tous les abus de l’interface utilisateur. Considérez la protection du trajet des messages, l’intégrité de l’appareil et le contrôle des autorisations comme trois vérifications distinctes.



