Aller au contenu

Journal numérique indépendant de la Suisse italienne

Économie Cybersécurité

FreeScout corrige une faille de sécurité découverte par Webcracy

Le groupe de recherche en sécurité de Webcracy a découvert une vulnérabilité dans le logiciel d'assistance open source FreeScout, qui permettait à un utilisateur authentifié de ralentir le service pour tous les agents. La faille a été corrigée dans la version 1.8.248.

par Redazione 22 octobre 2026 3 min de lecture Locarnese

Le groupe de recherche en sécurité de Webcracy, la société informatique du Locarnese, a découvert une vulnérabilité dans le logiciel d'assistance open source FreeScout. C'est Liam Giannini qui l'a trouvée, et les mainteneurs du projet l'ont corrigée dans la version 1.8.248, publiée avec l'avis GHSA-vcgj-6qfr-7qr6 le 17 octobre.

FreeScout est un logiciel de gestion de tickets d'assistance, écrit en PHP avec le framework Laravel, utilisé comme alternative auto-hébergée à des services comme Help Scout ou Zendesk. Pour indiquer aux agents, en temps réel, qui est en train de lire une conversation, le programme utilise un composant appelé Polycast, qui reçoit du navigateur une requête périodique à l'adresse POST /polycast/receive.

Le problème se trouvait dans la méthode qui traitait cette requête, processConvView(). Le code lisait l'identifiant de la conversation envoyé par le navigateur et l'utilisait sans en vérifier le format ni contrôler que l'utilisateur avait le droit de voir cette conversation. Le serveur créait alors une entrée dans le cache et ajoutait le même identifiant à un tableau partagé par toute l'installation, appelé conv_view, qui est lu et réécrit entièrement à chaque requête et reste valable vingt minutes.

Un seul compte suffisait pour ralentir tout le monde

En envoyant un nombre suffisant d'identifiants inventés, un utilisateur authentifié pouvait faire grossir ce tableau et rendre chaque écriture suivante plus lourde, y compris celles des autres agents. Une commande planifiée, exécutée chaque minute pour supprimer les entrées expirées, amplifiait l'effet, générant davantage de travail pour la base de données et pour le système de notifications en temps réel. Le résultat était un ralentissement de l'assistance pour tous les utilisateurs, sans que l'attaquant ait besoin de droits d'administrateur et sans accès aux données d'autres conversations.

GitHub a classé la faille comme de gravité modérée, avec un score CVSS 3.1 de 6.5, dans la catégorie des problèmes de consommation incontrôlée de ressources. Au moment de la publication, aucun code CVE ne lui avait encore été attribué.

Webcracy a trouvé le problème en analysant le code source de FreeScout 1.8.247, puis l'a vérifié dans un environnement de laboratoire isolé, avec un nombre limité de requêtes, sans générer de trafic de charge ni tester d'installations réelles. Dans la version corrigée, le serveur n'accepte que des identifiants numériques valides et vérifie, avant toute écriture dans le cache, que l'utilisateur peut effectivement voir la conversation indiquée.

La même version 1.8.248 corrige trois autres failles : une qui rendait visibles des conversations antérieures à des agents qui ne devraient voir que celles qui leur sont attribuées, une qui permettait d'ouvrir plusieurs sessions en utilisant la même invitation en parallèle, et un problème dans une bibliothèque tierce utilisée par FreeScout. Les utilisateurs d'une version antérieure devraient mettre à jour leur installation, après avoir fait une copie de la base de données et des modules installés.

Webcracy consacre une partie de son temps à l'examen de logiciels open source qu'elle installe pour ses clients, et signale aux mainteneurs les vulnérabilités trouvées.

Commentaires

Aucun commentaire

Il n'y a pas encore de commentaires. Votre voix peut être la première.

Laisser un commentaire