Developpez.com

Le Club des Développeurs et IT Pro

Ubuntu : l'outil de reporting des bogues permettrait d'exécuter du code malveillant à distance

Les versions d'Ubuntu 12.10 et plus sont touchées

Le 2016-12-17 01:55:35, par Malick, Community Manager
Un chercheur en sécurité du nom de Donncha O'Cearbhaill annonce avoir découvert des vulnérabilités critiques, notamment CVE-2016-9949 et CVE-2016-9950, dans le système d'exploitation Ubuntu de Linux. Ces failles ont été localisées au niveau de l'outil en charge du reporting des bogues identifiés dans le système. Donncha O'Cearbhaill soutient que lesdites vulnérabilités affectent toutes les versions d'Ubuntu 12.10 et supérieures.

Selon l'expert en sécurité, une exploitation réussie de ces failles va donner à un hacker la possibilité d'exécuter à distance du code malveillant sur un ordinateur tournant sous Ubuntu 12.10 et plus. Pour ce faire, Donncha O'Cearbhaill soutient que la victime est invitée à télécharger un fichier malicieux qui s'attellera à faire une analyse approfondie du fichier de reporting des bogues afin d'identifier les vulnérabilités. Au terme de l'analyse, un code malveillant écrit en Python sera exécuté.

Dans son billet, l'expert en sécurité précise que le code arbitraire va d'abord vérifier si le champ CrashDB de l'outil de reporting commence par {indiquer le début d'un dictionnaire Python. Lorsque le résultat de la recherche lui sera favorable, c'est-à-dire que le champ CrashDB contient les informations recherchées, la fonction Python builtin eval() sera appelée avec comme paramètre la valeur du champ CrashDB. La fonction eval() va ensuite s'exécuter pour permettre le chargement des données de configuration du CrashDB directement à partir du champ crashDB et non à partir d'un fichier local. Les données ainsi chargées vont se comporter comme du code Python classique entraînant ainsi l’ouverture de la calculatrice Gnome.

Dooncha rappelle que les éléments de configuration du champ CrashDB sont stockés dans le /etc/apport/crashdb.conf.d directory. Il précise que le champ CrashDB peut être utilisé pour charger un fichier de configuration à partir de ce répertoire.

Pour mieux étayer ses dires, Donncha O'Cearbhaill a partagé une vidéo de démonstration dans laquelle il montre qu'il est bien possible de prendre le contrôle d'une machine fonctionnant sous le système d'exploitation Ubuntu grâce un fichier malveillant.

https://vimeo.com/194867494

Le chercheur en sécurité a également mis sur Github le code complet qui lui a permis d'exploiter ces vulnérabilités.

Donncha O'Cearbhaill nous informe que cette ces failles ont été corrigées depuis le 14 décembre dernier grâce à une mise à jour corrective déployée par Canonical. Cependant, il invite tous les chercheurs en sécurité à auditer les logiciels libres et open sources qu'ils utilisent. Il déclare même que des projets tels que Tor, Tails, Debian et Ubuntu ont tous besoin d'être contrôlés afin d'assurer la sécurité des internautes les utilisant.

Source : blog de Donncha

Et vous ?

Qu'en pensez-vous ?
  Discussion forum
15 commentaires
  • Zefling
    Expert confirmé
    Envoyé par Aeson
    oui... quand on me dit que Linux est plus 'secure' ca me fait bien rigoler. Quand mon Linux Mint sort de veille j'ai acces au bureau +- 5 sec avant qu'on me demande mon mot de passe.... Si ca c'est pas une faille....

    Sous Windows ca aurait fait tout un drame....
    C'est un problème de Mint, ça, pas Linux. Interface graphique ≠ noyau.
  • chrtophe
    Responsable Systèmes
    Ceci démontre que Linux peut aussi avoir des vulnérabilités, il faut en avoir conscience.

    Ce n'est pas le genre d'applis à laisser sur une machine en prod.
  • Oscar.STEFANINI
    Membre régulier
    c'est ca l'excuse ?
    Oui. Tu es libre de choisir une interface graphique qui ne laisse pas un bug comme ça.
  • Jipété
    Expert éminent sénior
    Salut,
    Envoyé par chrtophe
    Ce n'est pas le genre d'applis à laisser sur une machine en prod.
    Oui, enfin, ce n'est pas aussi simple que ça, et je doute qu'un admin consciencieux tombe dans ce panneau grossier :
    Envoyé par Malick SECK
    [...] Pour ce faire, Donncha O'Cearbhaill soutient que la victime est invitée à télécharger un fichier malicieux [...]
  • chrtophe
    Responsable Systèmes
    Les failles IIS sont des failles du serveur Web IIS, elles peuvent s'appuyer sur des faillles Windows.

    Mint c'est Linux comme Internet Explorer c'est Windows.
    Faux :
    Mint est basé sur Ubuntu, elle utilise Cinnamon (basé sut Gnome 3) ou Mate (basé sur Gnome 2), au choix.
    Internet explorer est le navigateur fourni par Microsoft. Il s'intègre profondément dans le système mais est désactivable, il est maintenant remplacé par Edge, tu utilises celui que tu veux.

    Sous Windows, l'interface graphique n'est pas séparable du noyau.

    Et je ne parle meme pas de virtualisation de desktop Linux...
    J'utilise des VM avec 512 Mo de RAM qui sont super rapides et marchent très bien.
  • miky55
    Membre averti
    Envoyé par Jipété
    Salut,

    Oui, enfin, ce n'est pas aussi simple que ça, et je doute qu'un admin consciencieux tombe dans ce panneau grossier :
    Dans la vidéo on vois bien que le fichier est un fichier portant l’extension zip sous n'importe quel autre système d' exploitation un zip n'est jamais censé exécuter du code, de plus il vise la version desktop et l'outil de report de bug donc a priori pas uniquement des admins...
  • chrtophe
    Responsable Systèmes
    Il faut vraiment être conditionné 120% windoz pour déjà avoir le réflexe de cliquer comme un abruti sur le 1er lien "click me" qui apparait à l'écran ! Arf!!
    Le piège, c'est aussi de se dire "Je ne risque rien". Il suffit que la présentation soit plus évoluée pour paraitre moins "launch the virus".
  • cbleas
    Membre éprouvé
    Oui, enfin, ce n'est pas aussi simple que ça, et je doute qu'un admin consciencieux tombe dans ce panneau grossier :
    C'est vrai un admin mais est ce que ununtu n'est pas fait pour un utilisateur lambda?
    est ce que si tout le monde passais sous linux on ne se retrouvais pas dans la situation d'android qui collectionne un nombre impressionnant de programmes vérolés.
  • Envoyé par miky55
    [...]sous n'importe quel autre système d' exploitation un zip n'est jamais censé exécuter du code[...]
    .sh ou .bash (script système) doit recevoir les attributs exécutables. Je crois bien que oui.
    Même ci le fichier est binairement pas exécutable il peut recevoir c'est attributs. L’extension de fichiers est pas vraiment le monde Linux/Unix.
  • Tagashy
    Membre confirmé
    Un eval sur input non contrôlée XD tant qu'on y est pourquoi pas faire un compile suivi d'un exec XD
    Surtout si c'est dict qui est load un json.load fonctionerai tres bien ... (je vais verifier que le load fais pas un eval non plus sinon ...)
    En tout cas belle blague du dev ^^