Des Gyrophares Clignotent Sur Une Ambulance.

Le correctif de sécurité d’Android de janvier est sorti, et il corrige l’un des bogues Android les plus désagréables à survenir depuis un certain temps : certaines applications peuvent vous empêcher de contacter le 911 ou d’autres numéros de services d’urgence dans le monde.

Début décembre, une histoire poignante a surgi dans le Sous-reddit GooglePixel d’un utilisateur dont le Pixel 3 s’est écrasé au moment où il en avait le plus besoin : en composant le 911 pour sa grand-mère qui « semblait avoir un accident vasculaire cérébral ». L’ensemble du sous-système téléphonique a semblé planter immédiatement lors de l’appel des services d’urgence, l’utilisateur « KitchenPicture5849 » disant qu’il ne pouvait pas obtenir l’appel pour se connecter ou raccrocher pour réessayer l’appel. Heureusement, une ligne fixe à proximité était disponible après que leur téléphone Android les ait laissé tomber, et les services d’urgence ont pu être contactés.

Une fois la crise terminée, l’utilisateur a recommencé à appeler le 911 depuis son smartphone, et Android s’est écrasé encore, indiquant qu’il ne s’agissait pas d’un bogue ponctuel. Une vérification de leur facture de téléphone a également révélé que KitchenPicture5849 ne s’est jamais réellement connecté au 911. Ils disent avoir également reçu quelques autres DM d’utilisateurs signalant qu’ils rencontraient le même bogue.

Google a contacté l’utilisateur et publiquement a répondu au poste le 8 décembre :

Publicité

Sur la base de notre enquête, nous avons été en mesure de reproduire le problème dans un ensemble limité de circonstances. Nous pensons que le problème n’est présent que sur un petit nombre d’appareils sur lesquels l’application Microsoft Teams est installée lorsque l’utilisateur n’est pas connecté, et nous n’avons actuellement connaissance que d’un seul rapport d’utilisateur lié à l’apparition de ce bogue. Nous avons déterminé que le problème était causé par une interaction involontaire entre l’application Microsoft Teams et le système d’exploitation Android sous-jacent. Microsoft a collaboré étroitement avec Google pour résoudre cette interaction involontaire.

Google a déclaré que Microsoft publierait une mise à jour de l’application dès que possible et que les utilisateurs devraient rechercher une mise à jour dans le Play Store. La société a également mentionné qu’un correctif au niveau du système d’exploitation serait publié un mois plus tard, début janvier (c’est-à-dire aujourd’hui). Ensuite, Google n’a fourni aucun autre commentaire sur la question.

Pourquoi les applications peuvent casser le 911

Tenir bon. Microsoft Teams a cassé le 911 ? Des applications Android aléatoires peuvent casser la fonctionnalité des services d’urgence ? Comment? Pourquoi des applications tierces peuvent-elles se trouver à moins de mille pieds d’une fonction aussi critique ? Est-ce que d’autres applications cassent le 911, ou seulement Microsoft Teams ? Bien que Teams ait été corrigé, était-il vraiment acceptable de laisser les utilisateurs d’Android traîner avec ce bogue au niveau du système d’exploitation pendant un mois, surtout lorsque nous ne savons pas si d’autres applications le font ? Android étant Android, de nombreux téléphones ne seront jamais patchés de toute façon. Comment les utilisateurs peuvent-ils savoir que les services d’urgence fonctionneront ? À part dire d’attendre un mois pour un correctif, Google ne fournissait aucune réponse.

Heureusement, certaines personnes très intelligentes de la communauté Android pourraient fournir les réponses que Google ne partagerait pas. Mishaal Rahman, le rédacteur technique principal d’Esper, a écrit un incroyable Poste moyen détaillant comment le bogue fonctionne et pourquoi il se produit. Les applications sur Android avec la fonctionnalité d’appel téléphonique peuvent enregistrer un « PhoneAccount » avec le système indiquant qu’elles ont une certaine capacité à passer des appels. Il existe quelques applications de drapeaux que vous pouvez définir avec PhoneAccount, dont une appelée « CAPABILITY_PLACE_EMERGENCY_CALLS ». Lorsque vient le temps d’appeler le 911, Android trie la liste des PhoneAccounts qui ont été enregistrés et en sélectionne un. Tout cela semble bien jusqu’ici.

L’un des nombreux bogues identifiés dans le message de Rahman est que Microsoft Teams enregistrera un PhoneAccount supplémentaire avec le système à chaque démarrage de Teams, à condition que vous ne soyez pas connecté. Notez que ce n’est pas le cas rare d’installer Microsoft Teams, puis ne jamais l’utiliser—un plainte commune de l’application Android Teams est qu’elle déconnecte fréquemment les utilisateurs automatiquement. Si vous êtes déconnecté, le lancement de Microsoft Teams 10 fois entraînera 10 PhoneAccounts en double de Teams obstruant votre téléphone. Les équipes ne devraient pas le faire, et la mise à jour de Microsoft a empêché les équipes de le faire, mais un tas de comptes téléphoniques en double ne devrait pas non plus suffire à mettre le système téléphonique d’Android à genoux.

Bogue suivant : lors de la sélection d’un PhoneAccount pour exécuter l’appel d’urgence, Android passe par un processus de tri compliqué pour déterminer quel compte utiliser. La dernière étape de ce processus de tri, le bris d’égalité, est le tri par hashcode. La comparaison de hashcode soustrait simplement un hashcode de l’autre. Mais juste comme ce stupide Y2K22 Bogue Microsoft Exchange depuis l’autre jour, il est possible que cela entraîne un débordement ou un sous-dépassement d’entier, et à présent le sous-système du téléphone va planter. Le code de Google est bogué, mais comme il s’agit du dernier critère de tri après avoir essayé des choses plus évidentes comme le nom du package, il ne devrait être invoqué que dans le cas très spécifique d’une application générant des PhoneAccounts en double. Alors merci, Microsoft !

Google Corrige Son Bogue De Dépassement/Sous-Dépassement D'Entier.
Agrandir / Google corrige son bogue de dépassement/sous-dépassement d’entier.

Le correctif de Google pour ce bogue est ici, intitulé « Résoudre le dépassement/sous-débit d’entier causé par le tri des comptes téléphoniques en double lors d’une tentative d’appel d’urgence ». Au lieu de soustraire un hashcode d’un autre et de tomber potentiellement sur un nombre très grand ou très petit qui plante le système, Google exécute maintenant les deux nombres via la fonction java « Integer.compare ». Cela ne renvoie que -1, 0 ou 1, indiquant un résultat de comparaison plus petit, identique ou plus grand.

Si vous êtes comme moi au début et que vous vous demandez pourquoi Android trie les comptes téléphoniques plutôt que d’utiliser simplement le compte par défaut sur la carte SIM, je vais faire une supposition et dire que c’était une tentative de faire fonctionner le 911 peu importe Quel. Juste au cas où le compte principal ne fonctionnerait pas, Android veut une liste de tous les comptes de téléphone possibles qu’il peut essayer, et il veut le faire automatiquement, pour se connecter au 911 par tous les moyens nécessaires. Ce système de tri n’existe que pour contacter les services d’urgence, c’est pourquoi les appels téléphoniques réguliers fonctionnent toujours pour les utilisateurs concernés.

Un troisième bug dans ce gâchis est que Microsoft Teams ne s’enregistre même pas en tant que gestionnaire d’appels d’urgence. Les équipes ont créé un million de PhoneAccounts, et il n’a pas utilisé l’indicateur « CAPABILITY_PLACE_EMERGENCY_CALLS », mais il a tout de même cassé le 911. Le processus de tri de Google commence par l’interrogation tout comptes téléphoniques alors qu’une meilleure première étape serait de commencer par tous compatible avec les appels d’urgence comptes téléphoniques. Google prend une solution encore plus radicale à ce dernier bogue et en supprimant chaque compte téléphonique « autogéré » de la procédure 911 du système. Les comptes de téléphone Android « autogérés », comme Microsoft Teams, bénéficient d’un accès plus direct à la pile de téléphonie Android et peuvent déployer leurs propres fonctionnalités. Le système d’appel d’urgence Android ne prendra désormais en compte que les fournisseurs de téléphonie plus simples qui se connectent à l’application téléphonique par défaut, comme votre compte opérateur. Toutes ces autres applications VoIP peuvent encore être utilisées pour contacter le 911 par elles-mêmes (de nombreux pays nécessite la fonctionnalité 911 par la loi). Mais si vous ouvrez le numéroteur par défaut et appuyez sur « 911 », Android ne choisira que parmi les comptes téléphoniques standardisés et gérés par le système.

Qui est patché et comment vous pouvez vérifier le bogue 911

Rahman dit que le bogue de Google pour cela est CVE-2021-39659, que le bulletin de sécurité mensuel est classé comme une vulnérabilité de « déni de service » de haute gravité avec des correctifs pour les appareils exécutant Android 10, 11 et 12. Dans la base de code Android, Google rétroporte en fait ce correctif jusqu’à Android 8.0, qui techniquement n’est plus pris en charge . Ceci est principalement purement théorique, car aucun fabricant ne pousse en fait les mises à jour de sécurité sur des appareils aussi anciens. Mais le code est là si quelqu’un le veut.

La pile de téléphonie d’Android n’est pas (encore ?) facile à mettre à jour Ligne principale du projet module, donc la seule façon d’obtenir un correctif est via la mise à jour de sécurité mensuelle d’Android de janvier 2022. Samsung devrait mettre à jour chaque téléphone sur cette liste à partir de cette semaine, tandis que Google propose des correctifs pour les Pixel 3a, 4, 4a, 5 et 5a. Mettre à jour: Il y a aussi une mise à jour des appels d’urgence à venir pour le Pixel 3 en fin de vie.

Une mise à jour est ne pas arriver pour le Pixel 6 encore. Le nouveau produit phare de Google traverse actuellement une crise de mise à jour. La mise à jour de décembre 2021 a été tiré en raison de « problèmes de connectivité mobile » sans rapport (les appels téléphoniques ne fonctionnent pas). Alors que Google se démène pour tout réparer, la prochaine mise à jour de Pixel 6 avec ce correctif 911 est prévue pour « fin janvier ». Jusque-là, il est normal d’être sur le patch de novembre. Les délais de correctifs « début janvier » et « fin janvier » de Google semblent incroyablement lents pour un bogue qui pourrait littéralement faire mourir les utilisateurs.

Je vais prendre une autre supposition folle et dire que le Pixel 6 est un téléphone étrange car il s’agit d’un SoC et d’un modem totalement différents (tous deux de la division Exynos de Samsung, tandis que tous les autres Pixel utilisent Qualcomm). Faire la saison des achats des Fêtes n’a pas donné à Google beaucoup de marge de manœuvre pour les retards de lancement. Cela ne le rend pas moins décevant pour un téléphone avec le gros argument de vente des mises à jour du premier jour, mais j’espère qu’il s’agit d’un problème temporaire.

Je suis étonné qu’il ne s’agisse que d’un bogue de gravité « élevée » (au lieu de « critique ») et que le déploiement prenne un à deux mois. Retarder une ambulance pourrait être fatal, donc ce serait bien si tout cela arrivait plus rapidement, au lieu de la façon dont Google choisit de traiter le problème.

Si vous attendez un patch, ou si vous avez l’un des des milliards des appareils Android qui ne seront jamais corrigés, il existe un moyen de voir si votre téléphone déborde actuellement de PhoneAccounts en double. Analyste en sécurité mobile Linuxct attisé l’incroyable « Détecteur d’abus de compte téléphonique, » une application open source qui répertoriera simplement tous les comptes téléphoniques actuellement enregistrés sur votre appareil. Il n’y a pas de règle stricte ici, mais vous devriez voir environ un compte téléphonique par application VoIP.

Jusqu’à présent, nous n’avons entendu parler que de Microsoft Teams déclenchant ce bogue avec des comptes téléphoniques en double, mais on ne sait pas si d’autres applications commettent une erreur similaire. Si vous voyez une application sur cette liste générant des tonnes de comptes en double, il est possible qu’elle vous empêche de vous connecter aux services d’urgence. Je recommande de désinstaller l’application, de contacter le développeur et d’en informer le reste d’entre nous sur Twitter ou quelque chose du genre.

Rate this post
Publicité
Article précédentQuoi de neuf dans la boutique d’objets Fortnite aujourd’hui ? Obtenez la tenue Dream Set et la tenue KAWS Skeleton
Article suivantPremier Samsung Galaxy S22 Ultra avec fuite de repères Exynos 2200
Avatar
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici