
comme Skype, Slack et bien d'autres
Une vulnérabilité critique découverte dans le framework Electron pourrait affecter de nombreuses applications de bureau populaires comme Slack, Skype et bien d'autres qui utilisent Electron. Rappelons qu'Electron est un framework basé sur Chromium et Node.js qui vous permet d'écrire des applications de bureau multiplateformes en utilisant les technologies du Web (JavaScript, HTML et CSS), au lieu de les réécrire dans différents langages pour plusieurs plateformes.

La vulnérabilité en question permet d'exécuter du code à distance et affecte les applications Electron qui utilisent des gestionnaires de protocole personnalisé. Il faut également préciser que les applications ne sont vulnérables que si elles s'exécutent sous Windows et s'enregistrent en tant que gestionnaire par défaut pour un protocole tel que myapp://. De telles applications peuvent être affectées indépendamment de la manière dont le protocole est enregistré, par exemple en utilisant le code natif, le registre Windows ou l'API app.setAsDefaultProtocolClient d'Electron.
Pour information, le protocole myapp:// permet d’ouvrir une application native directement depuis un lien URL. Ce lien URL peut être présent dans une page web ou un email par exemple. Cela veut dire qu'un protocole personnalisé comme slack:// peut faire en sorte que les utilisateurs puissent cliquer sur des liens dans d'autres logiciels comme un navigateur Web et aller directement dans l'application Slack.
L'équipe Electron a publié mardi de nouvelles versions de son logiciel pour corriger cette vulnérabilité. Tous les développeurs utilisant Electron sont donc invités à mettre à jour leurs applications immédiatement vers la dernière version stable. Si, pour une raison quelconque, vous ne parvenez pas à mettre à niveau votre version Electron, vous pouvez ajouter -- comme dernier argument lors de l'appel de app.setAsDefaultProtocolClient, ce qui empêche Chromium d'analyser d'autres options. Le double tiret -- signifie la fin des options de commande, après quoi seuls les paramètres de position sont acceptés.
Code : | Sélectionner tout |
1 | app.setAsDefaultProtocolClient(protocol, process.execPath, [ '--your-switches-here', '--' ]) |
Sources : Blog Electron, Cyber Scoop
Et vous ?


Vous avez lu gratuitement 986 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.