Un ensemble de vulnérabilités critiques baptisées « ShellTorch » dans l’outil open source de création de modèles d’IA TorchServe affectent des dizaines de milliers de serveurs exposés à Internet, dont certains appartiennent à de grandes organisations.

TorchServe, géré par Meta et Amazon, est un outil populaire pour servir et mettre à l’échelle des modèles PyTorch (cadre d’apprentissage automatique) en production.

La bibliothèque est principalement utilisée par ceux qui participent à la formation et au développement de modèles d’IA, des chercheurs universitaires aux grandes entreprises comme Amazon, OpenAI, Tesla, Azure, Google et Intel.

Les failles de TorchServe découvertes par l’équipe de recherche d’Oligo Security peuvent conduire à un accès non autorisé au serveur et à l’exécution de code à distance (RCE) sur des instances vulnérables.

La vulnérabilité ShellTorch
Les trois vulnérabilités sont collectivement nommées ShellTorch et impactent les versions 0.3.0 à 0.8.1 de TorchServe.

Le premier défaut est une mauvaise configuration de l’API de l’interface de gestion non authentifiée qui fait que le panneau Web est lié par défaut à l’adresse IP 0.0.0.0 au lieu de localhost, l’exposant aux requêtes externes.

Comme l’interface manque d’authentification, elle permet un accès illimité à tout utilisateur, qui peut être utilisé pour télécharger des modèles malveillants à partir d’une adresse externe.

Le deuxième problème, identifié comme CVE-2023-43654, est une falsification de requêtes côté serveur à distance (SSRF) qui, si elle est exploitée dans le cadre d’une chaîne de bogues, pourrait conduire à l’exécution de code à distance (RCE).

Bien que l’API de TorchServe ait une logique pour une liste de domaines autorisés pour récupérer les fichiers de configuration des modèles à partir d’une URL distante, il a été constaté que tous les domaines étaient acceptés par défaut, conduisant à une faille SSRF (Server-Side Request Forgery).

Cela permet aux attaquants de télécharger des modèles malveillants qui déclenchent l’exécution de code arbitraire lorsqu’ils sont lancés sur le serveur cible.

La troisième vulnérabilité identifiée comme CVE-2022-1471 est un problème de désérialisation Java conduisant à l’exécution de code à distance.

En raison d’une désérialisation non sécurisée dans la bibliothèque SnakeYAML, les attaquants peuvent télécharger un modèle avec un fichier YAML malveillant pour déclencher l’exécution de code à distance.

Il convient de noter qu’Oligo n’a pas découvert la vulnérabilité SnakeYAML, mais l’a plutôt utilisée dans le cadre de sa chaîne d’exploitation.

Les chercheurs préviennent que si un attaquant enchaîne les failles ci-dessus, il pourrait facilement compromettre un système exécutant des versions vulnérables de TorchServe.

Correctifs ShellTorch
Oligo affirme que ses analystes ont analysé le Web à la recherche de déploiements vulnérables et ont trouvé des dizaines de milliers d’adresses IP actuellement exposées aux attaques ShellTorch, certaines appartenant à de grandes organisations d’envergure mondiale.

« Une fois qu’un attaquant peut pirater le réseau d’une organisation en exécutant du code sur son serveur PyTorch, il peut l’utiliser comme point d’appui initial pour se déplacer latéralement vers l’infrastructure afin de lancer des attaques encore plus percutantes, en particulier dans les cas où les restrictions appropriées ou les contrôles standard ne sont pas disponibles. présent », explique Oligo.

Pour corriger ces vulnérabilités, les utilisateurs doivent effectuer une mise à niveau vers TorchServe 0.8.2, publié le 28 août 2023. Cette mise à jour affiche un avertissement concernant le problème SSRF à l’utilisateur, résolvant ainsi efficacement le risque de CVE-2023-43654.

Ensuite, configurez correctement la console de gestion en définissant management_address sur http://127.0.0.1:8081 dans le fichier config.properties. Cela entraînera la liaison de TorchServe à l’hôte local au lieu de chaque adresse IP configurée sur le serveur.

Enfin, assurez-vous que votre serveur récupère les modèles uniquement à partir de domaines approuvés en mettant à jour les URL autorisées dans le fichier config.properties en conséquence.

Amazon a également publié un bulletin de sécurité concernant CVE-2023-43654, fournissant des conseils d’atténuation aux clients utilisant des conteneurs d’apprentissage profond (DLC) dans EC2, EKS ou ECS.

Enfin, Oligo a publié un outil de vérification gratuit que les administrateurs peuvent utiliser pour vérifier si leurs instances sont vulnérables aux attaques ShellTorch.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *