Pris par surprise par la révélation d’une faille zero-day dans le noyau Linux cette semaine, Google a rapidement développé un correctif pour Android qu’il a diffusé aux fabricants de terminaux. Cela pourra toutefois prendre plusieurs semaines avant que ces derniers commencent à mettre à jour l'OS en y incluant la correction. Cependant, selon les estimations de Google, la faille n’affecterait pas autant de terminaux Android que cela. La vulnérabilité d’escalade de privilèges permet à des attaquants de prendre le contrôle de systèmes Linux à partir d’un compte limité ou en trompant les utilisateurs avec une application malveillante. Elle a été découverte par les chercheurs de la société de recherche en sécurité Perception Point.

Les chercheurs ont averti l’équipe qui maintient le noyau Linux, ainsi que Red Hat, avant de révéler la faille mardi dernier. En revanche, ils n’ont pas contacté l’équipe de sécurité d’Android alors qu'ils indiquaient que, selon eux, 66% des terminaux exploitant l’OS mobile de Google étaient potentiellement vulnérables. Leur estimation était basée sur le fait que la faille affectait toutes les versions du noyau Linux à partir de la 3.8 et que ces noyaux sont utilisés dans Android à partir de la version 4.4 (KitKat).

Les constructeurs ne mettent pas tous le kernel à jour

Mais dans le monde Android, la version du noyau dépend davantage du choix du fabricant de terminaux que de la version d’Android installée dessus. Les constructeurs ne mettent pas nécessairement à jour le kernel quand ils créent un OS basé sur de nouvelles versions d’Android, en particulier pour les terminaux les plus anciens.

Dans un billet, Adrian Ludwig, responsable sécurité d’Android, précise que de nombreux terminaux exploitant Android 4.4 ou des versions antérieures ne contiennent pas le code vulnérable introduit dans le noyau Linux 3.8, puisque ces nouvelles versions ne sont pas courantes sur les anciens terminaux Android. Il explique aussi que les équipements qui exploitent Android 5.0 (Lollipop) et les versions plus récentes de l’OS sont protégés même s’ils utilisent des noyaux vulnérables, parce que l’OS est ici protégé par le module Security-Enhanced Linux (SELinux) du noyau.

Correctif requis sur les terminaux mis à jour au 1er mars 2016

La politique Android SELinux de ces versions empêche les applications d’éditeurs tiers d’atteindre le code affecté, indique Adrian Ludwig, ajoutant qu’aucun des terminaux Nexus n’est concerné. Cela semble contredire à la fois les chercheurs de Perception Point, qui écrivaient qu’il existe certaines façons de contourner SELinux, et Red Hat, qui mentionne dans son propre bulletin d’alerte que SELinux ne permet pas d’éviter ce problème.

Adrian Ludwig précise que le correctif créé par Google sera requis sur tous les terminaux qui indiquent dans les paramètres de leurs smartphones une mise à jour de sécurité datée du 1er mars 2016 ou au-delà. Cela ne force toutefois pas les fabricants à l’intégrer avant cette date ou sur les anciens terminaux.