Developpez.com

Le Club des Développeurs et IT Pro

Il est possible de rooter des téléphones Android en se basant sur la faille Dirty Cow

Qui a affecté Linux pendant 9 ans

Le 2016-10-26 11:07:50, par Stéphane le calme, Chroniqueur Actualités
Une nouvelle méthode pour rooter des appareils Android est susceptible de fonctionner de façon fiable sur toutes les versions du système d'exploitation mobile ainsi qu’un large éventail de matériel. Les particuliers peuvent l'utiliser pour contourner les limitations imposées par les constructeurs ou les opérateurs. La technique s’appuie sur la faille d’élévation de privilège sur Linux découverte il y a quelques jours et qui a été sous les radars pendant 9 ans. Baptisée Dirty Cow, qui tire son nom de l'abréviation des fonctionnalités Copy-On-Write du noyau, la faille CVE-2016-5195 a déjà été colmatée sur Linux (le 18 octobre 2016) ainsi que sur certaines distributions comme Red Hat, Ubuntu, Debian et SUSE.

Une liste de PoC est disponible sur GitHub et il suffit de rajouter quelques lignes de code pour rooter les dispositifs Android de façon persistante. C’est en tout cas ce qu’a expliqué le chercheur en sécurité David Manouchehri qui a testé son code sur cinq dispositifs. Parlant de l’exploit, il explique qu’il est accessible à « quelqu’un qui est quelque peu familier au système de fichiers Android ». « De ce que je peux dire, en théorie, cela devrait suffir à rooter tous les dispositifs depuis Android 1.0. Android 1.0 a débuté sur la version 2.6.25 du noyau Linux, et cet exploit existe depuis la version 2.6.22 ».

Un autre chercheur a expliqué que ses collègues et lui ont pu développer un exploit séparer pour rooter les dispositifs Android, encore une fois en se basant sur le PoC disponible sur GitHub. Ils ont été en mesure d’ajouter des fonctionnalités au système d’exploitation mobile. « Nous avons préféré utiliser un chemin unique que nous pourrons également utiliser ailleurs à l’avenir ». La vidéo ci-dessous montre le chercheur utiliser son application pour rooter un HTC tournant sur Android qui est relié à un ordinateur par un câble USB.


Les deux exploits permettent aux utilisateurs finaux de rooter des téléphones Android pour avoir accès à des fonctionnalités qui sont parfois limitées par les constructeurs ou les opérateurs téléphoniques comme le tethering (une technique qui permet de partager la connexion Internet d'un appareil mobile avec d'autres périphériques comme les ordinateurs portables : le téléphone est alors utilisé comme un modem). Le revers de la médaille est que le rootage est parfois fait subrepticement de telle sorte que les applications malveillantes peuvent espionner les utilisateurs en contournant le sandboxing des applications et d'autres mesures de sécurité intégrées à Android.

Source : GitHub (liste des PoC sur Dirty Cow)
  Discussion forum
11 commentaires
  • marsupial
    Expert éminent
    Préconisations :

    * bannir les langages de scripts web ==> html5
    * utiliser un add-on bloquant les scripts ==> de préférence en web assembly
    * compartimenter les apps type sandbox/container
    * géolocalisation à l'authentification
    * stop consommer les ressources avec des applis useless ( surcouche logicielle constructeur )
    * merci de coder vos apps en C/C++/Objective-C optimisé intelligemment
    * recoder en normes françaises au pire, au mieux une spécifique pour les cas "urgents"

    edit : * merci de toujours penser hack

    Valable tout smartphone grand public.

    Ou pas. Surtout.

    A 7 milliards et quelques de smartphones dans le monde dont l'accès admin se protège par une séquence... je relève les copies l'été prochain.