De nombreuses applications Mac vulnérables à cause du framework Sparkle

Stéphane Moussie |

Sparkle est un composant extrêmement répandu dans les logiciels Mac distribués en dehors du Mac App Store. C'est ce framework qui vous avertit automatiquement quand une mise à jour est disponible et qui vous permet de l'installer en un clic.

Un chercheur en sécurité s'est récemment aperçu que Sparkle contenait deux vulnérabilités. La première est que la connexion avec les serveurs de l'éditeur se fait par défaut en HTTP, alors que le HTTPS devrait être privilégié pour éviter les attaques man in the middle. Cela signifie qu'une mise à jour peut être interceptée et modifiée par un malandrin avant d'être distribuée à l'utilisateur.

La deuxième vulnérabilité, plus compliquée à exploiter, est un risque d'exécution de code arbitraire à distance en abusant du composant WebView.

Sparkle a d'ores et déjà été mis à jour (version 1.13.1) pour corriger ces vulnérabilités. La balle est maintenant dans le camp des développeurs pour mettre à jour aussi vite que possible le framework dans leurs applications.

Les réglages de mise à jour automatique dans Coda 2

En attendant, le chercheur recommande de désactiver l'option de recherche automatique de mise à jour qui est généralement disponible dans les préférences des applications. Mais cela signifie qu'il faut donc aller vérifier par soi-même la disponibilité de mises à jour sur le site de l'éditeur.

avatar TmrFromNO | 

Et si ça se trouve, personne n'aurait jamais trouvé cette faille. Et comme Apple ne peut rien faire, c'est quelque chose qu'on va encore se trimbaler pendant 10 ans avec désormais tout le monde qui est au courant.

avatar okgenial | 

avec la commande dans le terminal

find /Applications -name Sparkle.framework | awk -F'/' '{print $3}' | awk -F'.' '{print $1}'

vous aurez la liste des programmes concernés.

Source : Post de jakepetroules sur https://github.com/sparkle-project/Sparkle/issues/717

avatar Moonwalker | 

Ça facilite le travail.

Merci.

avatar BeePotato | 

@ okgenial : À noter, pour les éventuels distraits qui ne l’auraient pas remarqué, que cette recherche se limite aux logiciels qui sont dans le dossier /Applications (et ses sous-dossiers). Ceux qui ne regroupent pas toutes leurs applications à cet endroit devront donc également vérifier aux autres emplacement (la commande n’est pas difficile à adapter).

avatar Switcher | 

Merci bien pour la commande.

Beaucoup d'apps concernées, entre les émulateurs (Boxer, OpenEmu), les outils réseaux (Cyberduck, TeamViewer), de sécurité (Malwarebytes, Dashlane) ou les utilitaires systèmes / média (Monolingual, BTT, StuffIt ou VLC et MaX).

avatar Almux | 

…TeamViewer aussi !?!?!? Damned! Crotte de taureau, voilà qui est pernicieux!

avatar C1rc3@0rc | 

Comme d'habitude, desactiver toujours les mises a jour automatiques et autres systemes de traçages (log de crash, historiques soit-disant pour ameliorer le services -navigateurs, messagerie,...) et toujours utiliser un compte avec droits d'administrateur et un autre limité au droits utilisateurs: aucun soft ne pourra se mettre a jour automatiquement!

avatar Splint3r-b3n | 

Punaise j'ai presque aucune appli superflue sur mon Mac et j'ai déjà 12 appli concernées :(

avatar zoubi2 | 

Moi c'est 9...

avatar TmrFromNO | 

Bettertouchtols vient d'être mis à jour pour corriger ça. Très bien. devenu payant, mais réactif et sérieux

avatar Ginger bread | 

Ça compromet bcp la securité du Mac, quelle insouciance de leur part c est dingue.

avatar gilv57 | 

@okgenial : Merci pour la commande.

J'en suis à 10 :-(

- AppCleaner
- Carbon Copy Cloner
- Deezer
- Fabric
- iFunBox
- Sketch
- Utilities
- Viscosity
- VLC
- xScope

A+

avatar marc_os | 

@ gilv57
"Utilities" dans ta liste, c'est probablement le dossier Utilities ! (On le retrouve dans la liste retournée par la commande de okgenial).

Sont concernés également :

/Applications/Pacifist.app
/Applications/SourceTree.app
/Applications/Transmit.app
/Applications/Hopper Disassembler v3.app
/Applications/Utilities/XQuartz.app

Pour plus de détails, tu peux te contenter de :
find /Applications -name Sparkle.framework
D'ailleurs, XQuartz.app ne se retrouve curieusement pas dans la liste filtrée.

avatar jerome74 | 

Moi j'en ai une 60aine... Mais faut pas paniquer non plus! La pluspart des ces applications, de toutes façons, pour les installer la première fois, on les télécharge en HTTP non sécurisé depuis le site de l'éditeur (voire depuis un site tiers qui les héberge, ce qui est encore bien pire). Et je ne parle même pas des gens qui récupèrent des applications craquées etc! À ce tarif là, même MacG devrait être en HTTPS pour êviter que les brigands ne substituent les URL pour rediriger tous les liens vers leurs propres sites (plus sérieusement, ce serait bien quand même que MacG redirige sur une page HTTPS quand on tappe son mot de passe pour s'identifier)

avatar Frédéric Blondiau | 

On trouve aussi Sparkle dans des plug-ins ou des extensions (dans le dossier Bibliothèque)... et, bonne nouvelle, certains développeurs ont déjà corrigé leurs applications.

Pour faire une recherche exhaustive ET vérifier que la version de Sparkle est effectivement défectueuse, on peut copier/coller cette commande dans une fenêtre de l'application Terminal

find / -name Sparkle.framework -print -exec defaults read '{}/Resources/Info.plist' CFBundleShortVersionString \; 2> /dev/null

avatar xDave | 

Cette dernière commande me retourne plus de résultats et notamment me dit quelle version de l'API est utilisée.
Et c'est, comment dire... consternant de voir des versions 1.5 Beta.
La plus récente que j'ai est 1.11.0 sur Default Folder X.

Et j'imagine que certaines applications ne seront jamais mises à jour.

avatar namlook | 

Sinon, pour installer des logiciels avec interface graphique, on peut installer homebrew et utiliser "brew cask install" dans le terminal :

brew cask install chrome
brew cask install skype

Skype et Chrome seront ajouté au répertoire Applications.

Pour mettre à jour tous les logiciels :

brew cask update
brew cask upgrade

CONNEXION UTILISATEUR