Vulnérabilité importante au cœur de plusieurs applications OS X

Sparkle

Liste de tags

Une importante faille de sécurité ont été découvertes dans Sparkle, un logiciel qui se retrouve à travers de nombreuses applications pour Mac, dont Camtasia, Coda, HandBrake, OpenEmu, Transmission, µTorrent et VLC.

La vulnérabilité se traduit par une grave erreur de configuration et un moteur web trop polyvalent.

Le très populaire cadriciel (framework) Sparkle est un logiciel libre permettant aux développeurs OS X de faciliter la distribution des mises à jour de leur application. Puisqu’on le retrouve dans de nombreuses applications, inutile de préciser que la vulnérabilité découverte récemment par le chercheur en sécurité Radoslaw Karpowicz représente une situation critique pour les utilisateurs de Mac.

Essentiellement, le problème se traduit par une grave erreur de configuration et un module trop puissant pour les besoins de la cause.

D’abord, la faille se présente lorsqu’un développeur d’application a choisi d’implanter l’outil de transmission des mises à jour de Sparkle, AppCast, de sorte qu’il diffuse ses alertes à partir de son serveur par la voie d’une connexion HTTP non sécurisée – soit le paramètre par défaut. Le hic? Beaucoup de développeurs ont fait preuve d’insouciance à ce chapitre en ne changeant pas cette configuration, allant ainsi à l’encontre même de la recommandation des concepteurs de Sparkle.

Ensuite, les applications dont Sparkle est programmé pour communiquer à travers une connexion HTTP interprètent leurs données par WebKit, le moteur de rendu web d’OS X. Polyvalent, cet outil peut comprendre divers protocoles, dont notamment le code JavaScript.

Ainsi, un attaquant qui souhaite exploiter la vulnérabilité de Sparkle n’a qu’à se trouver sur le même réseau que sa victime, détourner le trafic HTTP afin d’usurper l’identité du serveur de l’application, transmettre son code malveillant qui sera interprété avec succès par WebKit, et prétendre qu’une nouvelle mise à jour de l’application vulnérable est disponible.

L’utilisateur recevra alors un message l’informant qu’une fausse mise à jour est disponible, et pourrait ne même pas avoir le temps de comprendre ce qui se passe au moment où l’attaque se déclenchera (voir la vidéo ci-dessus).

Selon Karpowicz, cette attaque est fonctionnelle tant sous El Capitan que sous Yosemite. Qui plus est, un autre chercheur, Simone Margaritelli, aurait amélioré la technique de Karpowicz en démontrant que la vulnérabilité pouvait toujours être exploitée à travers la dernière version de VLC (2.2.0) – qui pourtant a récemment été mise à jour afin de notamment colmater cette brèche de sécurité.

vlc

Bien entendu, difficile de dénombrer exactement le nombre d’applications affectées par cette vulnérabilité, puisque ce n’est pas parce que l’une d’entre elles intègre le cadriciel Sparkle que la communication avec son serveur AppCast ne passe pas par une connexion HTTPS sécurisée.

Comment se prémunir contre cette vulnérabilité?

Il est important de souligner que cette vulnérabilité n’a rien à voir avec l’App Store d’OS X (ou le Mac App Store). Elle concerne que les applications dans lesquelles réside une fonction permettant de vérifier si une mise à jour est disponible, et lorsque cette fonction découle d’une implémentation de Sparkle configurée pour communiquer à travers une connexion HTTP non sécurisée.

Pour être prudent, vaut mieux éviter de vous retrouver sur un réseau Wi-Fi public ou partagé avec des utilisateurs étrangers lorsque vous utiliser une application qui emploi Sparkle. À moins d’avoir un VPN actif (une solution qui n’est pas à toute épreuve toutefois)

  • Steve Rodrigue

    Ces failles provenant de plugins nous rappelle qu’il est important de ne faire confiance à personne! ;)