Table des matières:
- Que sont les services d'accessibilité?
- Pourquoi certaines applications les utilisent
- Le raisonnement de Google pour les nouvelles limitations
- Le futur, ce sont les API
Il y a beaucoup de pièces mobiles dans toutes nos applications préférées. Vous pouvez ne pas y penser lorsque vous parcourez votre calendrier sur Twitter ou que vous regardez des vidéos sur YouTube, mais la quantité de choses qui se passent dans les coulisses pour faire en sorte que toutes ces applications fonctionnent comme elles sont supposées est vraiment incroyable.
Certaines applications telles que LastPass, Tasker et Clipboard Actions font appel aux services d'accessibilité d'Android pour permettre des fonctionnalités plus profondes qui ne pourraient exister, mais Google a récemment annoncé que les applications les utilisant sans bénéficier directement aux personnes handicapées pourraient être supprimées du Play Store.
Les services d'accessibilité sont un outil intéressant, et pour avoir une meilleure idée de ce qui se passe exactement ici, nous devons examiner de plus près.
Que sont les services d'accessibilité?
Les services d'accessibilité existent dans Android et permettent aux téléphones et tablettes d'être plus faciles à utiliser pour les personnes handicapées. Lorsque vous accédez à la page des paramètres d'accessibilité sur votre appareil Android, vous voyez un ensemble de contrôles que Google a activés par défaut. Certains de ces éléments incluent, par exemple, des éléments de tapotement sur votre écran pour que votre appareil les lise, des commentaires parlés lisant toutes vos actions à voix haute, augmentant la taille des éléments à l'écran, etc.
Comme on pouvait s'y attendre, le thème général est de rendre Android plus facile et plus simple à utiliser pour les personnes qui ont besoin d'une assistance supplémentaire.
En plus des services intégrés par défaut à Android, les développeurs peuvent utiliser les services d'accessibilité avec leurs propres applications pour créer de nouvelles fonctionnalités qui en tirent parti. Sur le site des développeurs Android, les services d’accessibilité sont décrits comme suit:
Les services d'accessibilité ne devraient être utilisés que pour aider les utilisateurs handicapés à utiliser des appareils et des applications Android. Ils s'exécutent en arrière-plan et reçoivent des rappels du système lors du déclenchement d'AccessibilityEvents. De tels événements dénotent une transition d'état dans l'interface utilisateur, par exemple, le focus a été modifié, un bouton a été cliqué, etc. Un tel service peut éventuellement demander la possibilité d'interroger le contenu de la fenêtre active. Le développement d'un service d'accessibilité nécessite d'étendre cette classe et de mettre en œuvre ses méthodes abstraites.
Pourquoi certaines applications les utilisent
Bien que l'objectif principal des services d'accessibilité soit de permettre aux développeurs de créer des outils destinés aux personnes handicapées, de nombreuses applications au cours des années ont exploité cette ressource pour créer des fonctionnalités étendues pouvant profiter techniquement à tout le monde.
Les services d'accessibilité peuvent être utilisés légitimement, mais cela ne se produit malheureusement pas toujours.
Par exemple, l'application de remplissage de LastPass révèle une superposition au-dessus de l'écran ou de toute autre application sur laquelle vous êtes, vous permettant ainsi d'ajouter facilement des informations de nom d'utilisateur et de mot de passe sans avoir à ouvrir l'application complète LastPass. Clipboard Actions exploite également les services d’accessibilité pour vous permettre de gérer plus facilement les liens que vous avez copiés et d’agir en conséquence, sans avoir à vous connecter à l’application complète de Presse-papiers.
Il s'agit d'une méthode que les développeurs utilisent depuis un certain temps déjà. Bien que techniquement, elle fonctionne, elle crée des vulnérabilités que Google n'aime pas voir.
Le raisonnement de Google pour les nouvelles limitations
Même si les services d'accessibilité peuvent être utilisés légitimement, il est également possible que le service soit utilisé de manière malveillante. Les applications qui utilisent les services d'accessibilité génèrent des menaces de sécurité plus importantes que celles qui ne le font pas, ce qui expose les appareils à des attaques.
Peu de temps après que Google ait annoncé la décision de limiter les applications pouvant utiliser Accessibility Services, il a été découvert que le changement était probablement lié à une attaque de type "toast overlay" qui avait été découverte par la société de sécurité TrendMicro. L’attaque par superposition de toasts permet essentiellement à des applications malveillantes d’afficher des images et des boutons sur ce qui doit vraiment être montré afin de dérober des informations personnelles ou de verrouiller complètement les utilisateurs de leur appareil.
Les applications utilisant cette attaque par superposition de toasts ont depuis été supprimées du Play Store et un correctif avec le bulletin de sécurité de septembre corrige la vulnérabilité, mais il ne s'agit que d'un exemple de la manière dont une application exploitant Accessibility Services peut causer de graves dommages.
Le futur, ce sont les API
Les applications qui utilisent les services d'accessibilité pour aider les personnes handicapées de manière légitime continueront d'exister, mais pour celles qui ne ciblent pas ce groupe démographique spécifique, Google propose une solution: des API. Dans l'exemple de LastPass, la nouvelle API de saisie automatique avec Android Oreo permet à LastPass d'offrir des fonctionnalités similaires à sa fonctionnalité de remplissage automatique sans avoir à utiliser les services d'accessibilité.
Les API permettent des expériences similaires (et souvent meilleures) que ce que peuvent produire des astuces de hacky dev.Cela signifie que les utilisateurs doivent utiliser les versions les plus récentes d'Android pour accéder à toutes les fonctionnalités de certains de leurs titres préférés, mais au bout du compte, vos fonctionnalités restent les mêmes tout en réduisant les risques de sécurité éventuels.
Nous comprenons le désagrément de certains utilisateurs vis-à-vis de ce changement, mais du point de vue de Google, il s’agit là d’un changement logique. Les services d’accessibilité n’ont jamais été conçus pour être utilisés dans une grande partie des cas où certains développeurs les exploitent, ce que Google doit réprimer.
À la fin de la journée, lorsque les applications seront mises à jour pour prendre en charge les nombreuses API de Google, nous obtiendrons des fonctionnalités similaires offrant une protection accrue contre les attaques. Que pourriez-vous demander de plus?