
Divulgation publique de plusieurs vulnérabilités XSS stockées dans le Sensaphone WEB600 (CVE-2024-55040)
À la mi-septembre 2024, j'ai identifié plusieurs problèmes de sécurité de gravité moyenne à faible dans le Sensaphone Web600 Monitoring System, notamment des vulnérabilités de cross-site scripting (XSS) stocké dans les options de configuration, de profil et de zone du système. Des attaquants distants authentifiés peuvent exploiter la faille pour injecter des charges utiles JavaScript arbitraires dans divers éléments du tableau de bord Web600. La gravité des problèmes est limitée ; cependant, cela permettrait à des utilisateurs à faibles privilèges de voler des jetons de session de comptes administratifs et ainsi d'augmenter leur accès au système et d'effectuer des modifications non autorisées. La vulnérabilité a été testée sur la version du firmware v.1.6.5.H du Sensaphone Web600. En octobre, Sensaphone a confirmé avoir connaissance des vulnérabilités. Ils n'ont pas répondu aux demandes concernant la publication d'un correctif et ont souligné que le produit est recommandé pour être exécuté sur des réseaux privés, ce qui réduit le risque d'exploitation.
Calendrier de divulgation
Le système de surveillance Web600 est vulnérable à plusieurs XSS stockés via les options de configuration de l'appareil. Plus précisément, des attaquants distants authentifiés peuvent injecter des charges utiles JavaScript arbitraires dans les paramètres système dans les champs nom, description et emplacement. Les attaquants peuvent exploiter la vulnérabilité via des requêtes GET malveillantes vers /@.xml, en plaçant les charges utiles dans les paramètres g7200, g7300 et g7300 qui représentent respectivement le nom, la description et l'emplacement. Les charges utiles s'exécutent dans chaque section du serveur Web600, comme dans les sections Résumé, Configuration, Zones, Sorties, Profils et Historique. La preuve de concept ci-dessous utilise la charge utile encodée en URL de .

Le système de surveillance Web600 est vulnérable à un XSS stocké via les options de profil de l'appareil. Plus précisément, des attaquants distants authentifiés peuvent injecter des charges utiles JavaScript arbitraires via des requêtes GET malveillantes vers /@.xml, en plaçant les charges utiles dans le paramètre g4601 représentant le nom du profil de l'utilisateur. La charge utile s'exécute sur la page Profil. La preuve de concept ci-dessous utilise la charge utile encodée en URL de .

Le système de surveillance Web600 est vulnérable à un XSS stocké via les options de zone. Plus précisément, des attaquants distants authentifiés peuvent injecter des charges utiles JavaScript arbitraires via des requêtes GET malveillantes vers /@.xml, en plaçant la charge utile dans le paramètre g1F02 représentant le nom de la zone. Les charges utiles s'exécutent sur la page de résumé principale et sur la page de configuration de la zone. La POC ci-dessous utilise la charge utile encodée en URL de .
