Centrale Androïde

De Google à votre téléphone: la durée de vie d'une mise à jour de sécurité Android

protection click fraud

Au début de chaque mois, Google publie le mensuel Bulletin de sécurité Android et commence à envoyer des mises à jour aux téléphones Pixel. C'est formidable que l'entreprise soit transparente sur ce qui se passe et sur la façon dont les choses sont réparées, même si vous n'êtes pas le genre de personne qui aime lire le code source.

Il y a beaucoup de travail dans ces correctifs avant qu'ils ne soient rendus publics, et il y a encore plus de travail à faire avant qu'il ne s'agisse d'autres téléphones - le cas échéant. Voyons comment la saucisse est fabriquée et essayons de mieux comprendre pourquoi la chronologie des correctifs de sécurité est un peu floue.

D'abord, vous réparez Android

Android est une bête compliquée. Plus de 5 millions de lignes de code, il existe pour aider les entreprises qui fabriquent des produits mobiles à se mettre en place et à fonctionner avec une plate-forme d'application complète comprenant l'accès à Google Play et à d'autres services. Ce n'est pas quelque chose qui peut être utilisé tel quel; ces entreprises passent beaucoup de temps à essayer d'adapter Android pour fusionner avec les autres logiciels qu'elles peuvent utiliser pour créer un système d'exploitation homogène et agréable.

Google a quelques règles sur la façon dont cela devrait être fait si une entreprise souhaite inclure ses services, mais les fabricants ont une longue laisse sur la façon dont le produit final est construit.

Ce code est l'endroit où un correctif de sécurité prend vie. Quelqu'un, que ce soit un chercheur en sécurité ou juste un Joe moyen, trouve une faille dans un téléphone qui pourrait être utilisée pour réduire la couche de sécurité de l'appareil. Si cette faille n'est pas créée par un OEM, l'équipe Android est chargée de découvrir ce qui se passe, pourquoi cela se produit et comment y remédier de la manière la moins perturbatrice.

Si une faille de sécurité est détectée et qu'elle fait partie du code de base d'Android, Google doit la corriger, puis l'envoyer à tous les autres.

Souvent, la faille n'est pas quelque chose que Google peut corriger. Comme nous, Google n'a pas accès aux micrologiciels des entreprises qui fabriquent du matériel comme Qualcomm ou LG. Si la faille doit être corrigée au niveau matériel, il y a de fortes chances que la société qui fournit certains des composants utilisés doive d'abord apporter des modifications. Si tel est le cas, ces modifications sont transmises à Google afin qu'il puisse voir ce qui doit être fait pour les intégrer dans le code d'Android.

Ces changements prennent du temps, surtout si un fournisseur de matériel est impliqué. Il y a des correctifs et des tests et plus de correctifs et plus de tests pour chaque défaut corrigé dans un correctif. Une fois que Google est convaincu qu'il dispose d'un correctif valide pour une faille de sécurité, chaque entreprise qui fabrique Android les téléphones reçoivent un accès anticipé (au moins 30 jours avant que le correctif ne soit rendu public par Google) afin qu'ils puissent accéder à travail.

Phase deux

C'est là que la plupart des travaux sont effectués. Google peut écrire et maintenir Android lui-même, mais la plupart des appareils qui l'utilisent ne sont pas fabriqués par Google. Ceux qui sont - les téléphones Pixel - sont également inclus ici. Le matériel Google est client d'Android de la même manière Samsung ou Motorola est.

Les Samsung et LG de l'industrie mobile, qui apportent beaucoup de changements à Android, ont beaucoup de travail à faire lorsqu'il est temps de fusionner un patch.

Toutes ces entreprises se mettent au travail sur quelques points dès qu'elles reçoivent un nouveau code de Google. La première partie - et peut-être la plus importante - consiste à déterminer quelle partie du patch n'est pas nécessaire. Et il y a beaucoup de choses dans chaque patch qu'une seule entreprise peut librement ignorer.

Par exemple, si Nvidia a dû apporter des modifications qui sont repoussées dans Android, aucun téléphone Samsung n'aura besoin de cette partie du correctif. Un exemple plus extrême serait les changements apportés par BlackBerry ou Samsung qui résolvent déjà le problème d'une manière différente. Découvrir ce qui est nécessaire et ce qui ne l'est pas peut prendre du temps, en particulier lorsqu'une entreprise apporte des modifications importantes à certaines parties du système d'exploitation. Google a enquêté sur les accusations selon lesquelles les OEM envoyaient des correctifs de sécurité qui ne répondaient pas à certaines choses qu'ils auraient dû avoir, et c'est ce qu'il a trouvé.

Toutes les parties d'un patch ne sont pas nécessaires sur tous les téléphones.

Une fois cela fait, le reste du correctif doit être fusionné dans le code Android personnalisé d'un fournisseur, puis construit et testé. La partie "construite et testée" peut devenir un gros casse-tête si le correctif ne peut pas simplement être appliqué car il touche des fichiers que le code personnalisé utilise ou dont dépend. On le voit beaucoup aussi. Chaque fois que Bluetooth ou Wi-Fi est corrigé, que ce soit le matériel ou le logiciel derrière eux, il sera code tactile qui a été modifié par un grand OEM qui crée un système d'exploitation plus sophistiqué que "stock" Android. Il y a beaucoup de parties d'Android qu'un OEM peut toucher.

Une fois que les ingénieurs de Samsung ou d'un autre fournisseur obtiennent un système d'exploitation qui démarre et fonctionne, il doit être testé. Et testé un peu plus. Les tests peuvent inclure la participation d'ingénieurs réseau de divers opérateurs, ainsi que la réintégration de Google et/ou du fabricant de tout composant. Cela doit être vrai. Un correctif envoyé à des milliers et des milliers de téléphones pourrait potentiellement paralyser le réseau d'un opérateur, consommer le plafond de données de chaque utilisateur ou même empêcher le téléphone lui-même de fonctionner. Tout ce genre est inacceptable et a à trouver avant qu'il ne quitte le bâtiment.

Le déploiement

La société qui a fabriqué votre téléphone, Google et peut-être votre opérateur travaillent ensemble pour préparer une mise à jour de masse en direct. Si vous avez déjà vu l'URL utilisée pour télécharger un correctif, vous remarquerez qu'il contient "Google" dans l'adresse Web. C'est parce que le moteur à l'intérieur de votre téléphone qui peut récupérer et traiter une mise à jour OTA recherche un correctif à un endroit très spécifique. Il doit savoir que le patch est 100% correct et signé par la bonne signature numérique. Il vérifiera à nouveau cela une fois le correctif entièrement téléchargé.

Si vous avez acheté votre téléphone auprès d'un opérateur, il dispose de nombreuses entrées pendant toute la durée de vie d'un patch.

Votre opérateur peut avoir des règles sur quand et qui peut télécharger un patch une fois qu'il est en ligne si son nom est sur le téléphone. Des entreprises comme Samsung ou LG créent des versions personnalisées de leurs modèles les plus populaires pour chaque opérateur, ce qui a beaucoup d'influence sur la façon dont les choses sont faites. Il devrait puisque son nom est sur la boîte. Cela peut être frustrant, mais cela a du sens. Si tout le monde à Pittsburgh (par exemple) qui possède un téléphone Samsung Galaxy S8 essaie de récupérer un patch de 800 Mo en même temps, le réseau va s'effondrer par endroits. Votre opérateur fera tout ce qu'il doit faire pour maintenir le réseau en vie.

Google met également une sorte de suspension sur les déploiements OTA. Un nombre spécifique d'utilisateurs recevra un correctif, et après un certain laps de temps, Google détermine si ces utilisateurs ont eu une bonne ou une mauvaise expérience. Si tout se passe bien, un plus grand nombre d'utilisateurs recevront le correctif lors d'une deuxième vague. Cela se répète plusieurs fois avant que les vannes ne soient ouvertes. Les utilisateurs qui ne souhaitent pas attendre ce test final peuvent télécharger manuellement un correctif via les paramètres de leur appareil.

Lorsque c'est votre tour et que vous avez donné le feu vert à votre téléphone pour récupérer ce fichier, il est téléchargé, puis votre téléphone prend le contrôle.

Dans tes mains

Un correctif est téléchargé sur votre téléphone et vérifié comme étant le bon. Les anciennes versions d'Android ont un cache dédié, qui est une section de votre stockage qui a été divisée pour des choses comme un fichier de mise à jour à vivre; des choses qui ne sont que temporairement au téléphone. Les téléphones qui utilisent Fonction de mise à jour transparente d'Android (qui devrait être la plupart des téléphones exécutant Android Nougat lorsqu'ils sont vendus) "glissez" les fichiers téléchargés dans ce qu'on appelle des emplacements. Dans les deux cas, vous devez disposer de suffisamment d'espace pour extraire et travailler le fichier OTA.

Les téléphones dotés d'anciennes versions d'Android peuvent avoir une partition de cache dédiée qui est utilisée lors d'une mise à jour. Il doit être 2,5 fois plus volumineux que le fichier OTA que vous avez téléchargé.

Le logiciel de mise à jour OTA de votre téléphone fait partie d'Android. Un script dans le fichier téléchargé lui indique comment rechercher les fichiers à modifier et il copie ces fichiers soit dans le cache de votre appareil, soit dans l'emplacement désigné. Il compare ensuite les fichiers d'origine sur votre téléphone avec les fichiers qui ont été téléchargés. Certains peuvent être un simple échange - prenez le fichier X du téléphone et supprimez-le, puis remplacez-le par le fichier X du téléchargement OTA. D'autres ne sont pas le fichier complet et ne contiennent que de petites modifications spécifiques. Le logiciel de mise à jour et d'installation de votre téléphone sait quoi faire ici.

De nombreux fichiers dans Android, en particulier les applications et les bibliothèques de logiciels, sont en réalité de nombreux fichiers compressés dans une archive spéciale. Vous pouvez prendre un fichier APK et le changer en fichier .zip et l'ouvrir avec Windows. Parfois, ces archives doivent être ouvertes et des parties d'entre elles doivent être remplacées par de nouvelles versions téléchargées pour le correctif de sécurité. C'est pourquoi vous avez besoin de cet espace de travail dans votre partition de cache - c'est là que ces fichiers sont extraits.

De nombreux fichiers sur votre téléphone sont en réalité des archives contenant de nombreux fichiers, y compris d'autres archives de fichiers. C'est compliqué.

Une fois que chaque fichier de la mise à jour OTA a été traité et que des modifications ont été apportées aux copies des fichiers système, il est temps d'exécuter le système avec eux. Cela se produit lorsque le téléphone vous demande de redémarrer après avoir traité l'OTA que vous avez reçu, car il y a souvent des fichiers qui doivent être corrigés mais qui sont utilisés pendant que le téléphone fonctionne. Vous pouvez voir un écran indiquant qu'il y a du travail en cours pendant le redémarrage ou vous pouvez simplement voir le logo Android. Dans les deux cas, les fichiers sont vérifiés, déplacés et vérifiés à nouveau. Les anciens fichiers sont conservés dans le cache au cas où il y aurait un problème et que vous ne pourriez pas démarrer avec les nouveaux fichiers.

Il ne vous reste plus qu'à vous assurer que tout est toujours comme vous l'aimez, et vous avez une date plus récente pour la version du correctif de sécurité dans les paramètres de votre téléphone. Vous êtes maintenant prêt pour la prochaine mise à jour !

instagram story viewer