ACE-MCP jusqu'à 4.10.8 expose une traversée de répertoires dans l'outil MCP get_file_snippet. Le contrôle isPathInsideProjectRoot est insuffisant car projectRootPath est contrôlable par le client. Un exploit public est signalé.
Analyse technique
La garde isPathInsideProjectRoot vérifie que filePath se situe sous projectRootPath, mais projectRootPath est fourni par une entrée non fiable. Un client peut donc choisir une racine sensible, puis demander un fichier situé sous cette racine, sans enfreindre le contrôle implémenté.
Impact, versions et correctif
Détection / vérification
Rechercher les requêtes get_file_snippet dont projectRootPath cible des emplacements système ou inhabituels, ainsi que les lectures de fichiers hors des répertoires de projets autorisés.
Action recommandée
Modifier immédiatement le serveur afin que la racine de projet soit une donnée de configuration fiable, puis mettre à jour dès qu'un correctif publié est disponible.
Sources
Priorisation DFS : P4 · confiance de recoupement standard · 1 source(s).