Il y a quelques jours, un expert de Tenable a expliqué dans un billet sur Medium comment une faille découverte le mois dernier dans Slack 3.3.7 pour Windows, corrigée depuis l’éditeur de la messagerie collaborative avec sa version 3.4.0, aurait pu permettre de manipuler à distance des téléchargements faits par les utilisateurs du logiciel. La vulnérabilité a été communiquée à Slack à travers la plateforme de signalement de bugs HackerOne. Selon David Wells, chercheur en sécurité chez Tenable, un attaquant aurait pu l’exploiter pour soumettre un faux lien dans un canal Slack. Une fois cliqué par un utilisateur abusé, ce lien aurait pu rediriger les paramètres de téléchargement du client Slack vers le partage SMB de l’attaquant, ce qui aurait permis à celui-ci de récupérer tous les documents téléchargés par la suite par l’utilisateur.

Seule une modification manuelle, par la victime, de son emplacement de téléchargement aurait alors pu mettre fin à ce détournement. Le risque ne s’arrêtait pas au simple vol des documents. L’attaquant pouvait aussi y insérer du code malveillant qui aurait réinfecté la machine de l’utilisateur lorsque celui-ci aurait ouvert son fichier à travers Slack. « Toute la technique repose sur la façon dont Slack traite ses liens cliquables et sur ce que certains liens slack:// permettaient », explique David Wells.

Rétro-ingénierie pour reconstituer la technique

En procédant à de la rétro-ingénierie (facilitée par le fait que Slack utilise la bibliothèque open source Electron), l’expert de Tenable a fait quelques découvertes sur le vecteur d’attaque et la façon dont on peut modifier les paramètres de l’application, à travers le module protocol-link.ts. « Nous pouvons trouver quels sont les paramètres disponibles qui peuvent être changés en regardant dans le module Settings-Reducer.ts qui contient tous les paramètres Slack », explique M. Wells. Presque tous le sont à travers les liens slack://settings, poursuit-il en ajoutant que celui qui change la destination de téléchargement d’un utilisateur est « PrefSSBFileDownloadPath ». Il précise toutefois que certains caractères ne peuvent pas être utilisés, en particulier « : » ce qui empêche de créer un chemin avec une racine de disque. En revanche, un partage SMB peut être contourné. 

Entre autres précisions, M. Wells expose aussi la possibilité d’utiliser des liens malveillants pour entrer dans des canaux Slack auxquels on ne participe pas. « Cela peut se faire à travers les fils RSS », explique-t-il en détaillant la technique pour le faire et en ajoutant qu'elle pourrait être démasquée par les utilisateurs futés de Slack. Toutefois, rappelle-t-il, si les campagnes de phishing successives ont bien appris quelque chose, c’est que les utilisateurs cliquent sur les liens et que, quand cela passe par des fils RSS non fiables, l’impact peut être encore plus important. Slack a mené l’enquête, conclut le chercheur de Tenable, et n’a rien trouvé qui indiquerait que la faille aurait été utilisée ou que des utilisateurs auraient été touchés.