La sécurité de l’IA prend une place de plus en plus importante au fur et à mesure que la technologie se développe. Des chercheurs analysent les différents modèles et frameworks pour dénicher des failles. Et c’est le cas pour les experts d’Oligo Security (société israélienne de cybersécurité) qui ont découvert une chaîne de vulnérabilités critiques de type RCE (Remote Code Execution) dans les principaux frameworks de serveurs d'inférence, notamment ceux de Meta, Nvidia, Microsoft et des projets open source tels que vLLM et SGLang. Selon les spécialistes, ces failles se distinguent par leur mode de propagation. Les développeurs ont copié du code contenant des modèles non sécurisés dans différents projets, transplantant ainsi la même faille dans plusieurs écosystèmes.
« Ces vulnérabilités ont toutes la même cause initiale : l’usage non sécurisé et négligé de ZeroMQ(ZMQ) et de la désérialisation du module pickle de Python », a déclaré Avi Lumelsky, chercheur en sécurité chez Oligo. « En approfondissant nos enquêtes, nous avons découvert que des fichiers de code avaient été copiés d'un projet à l'autre (parfois ligne par ligne), transmettant ainsi des modèles dangereux d'un référentiel à l'autre. » Dans un blog, l’expert a indiqué que, pendant toute l'année dernière, Oligo avait découvert des failles RCE similaires dans des frameworks d'IA largement utilisés, soulignant une faille de sécurité systémique dans l'écosystème d'inférence émergent.
Une contamination par réutilisation du code
Au cours de leur enquête, les chercheurs d'Oligo ont constaté que le déclencheur initial était exposé dans Llama Stack de Meta, où une fonction utilisait « recv-pyobj() » de ZeroMQ pour recevoir des données, puis les transmettait directement à « pickle.loads() » de Python, permettant ainsi l'exécution de code arbitraire sur des sockets non authentifiés. « Ceux qui ont déjà travaillé avec Python savent que pickle n'est pas conçu pour la sécurité », a rappelé M. Lumelsky. « Il peut exécuter du code arbitraire pendant la désérialisation, ce qui est acceptable dans un environnement étroitement contrôlé, mais loin d'être acceptable s'il est exposé sur le réseau. » Chez Meta, le même modèle non sécurisé est apparu dans d'autres frameworks, notamment TensorRT-LLM, vLLM, SGLang et même Modular Max Server de Nvidia. Tous contenaient un code presque identique (parfois avec un commentaire d'en-tête tel que « Adapté de vLLM »).
Oligo appelle cela le motif « ShadowMQ », une faille cachée au niveau de la couche de communication qui se propage d'un référentiel à l'autre par copier-coller ou par des adaptations mineures, plutôt que par une récente implémentation. Comme ces frameworks sont largement réutilisés dans l'écosystème IA, le risque de contamination devient systémique : un seul composant vulnérable peut infecter de nombreux projets en aval. La société a signalé la faille référencée CVE-2024-50050 à Meta en septembre 2024, qui a rapidement corrigé l'utilisation non sécurisée de pickle avec la sérialisation basée sur JSON. Elle a ensuite alerté sur la réplication de la faille dans vLLM (CVE-2025-30165), NVIDIA TensorRT-LLM (CVE-2025-23254) et Modular Max Server (CVE-2025-60455), qui ont tous été corrigés à l'aide de logiques de remplacement appropriées.
Un sujet important pour l'infrastructure d’IA
Les serveurs d'inférence vulnérables constituent l'épine dorsale de nombreuses piles d’IA d'entreprise, car ils traitent des prompts sensibles, des poids de modèles et des données clients. Oligo a signalé avoir identifié des milliers de sockets ZeroMQ exposés sur l'internet public, certains liés à ces clusters d'inférence. En cas d'exploitation, un attaquant pourrait exécuter du code arbitraire sur des clusters GPU, élever ses privilèges, exfiltrer des données de modèles ou de clients, ou installer des mineurs GPU, transformant ainsi un actif d'infrastructure IA en un passif. « SGLang a été adopté par plusieurs grandes entreprises, notamment xAI, AMD, Nvidia, Intel, LinkedIn, Cursor, Oracle Cloud et Google Cloud », a fait remarquer M. Lumelsky.
Il recommande de passer aux versions corrigées, qui comprennent les versions Llama Stack v.0.0.41 de Meta, TensorRT-LLM 0.18.2 de Nvidia, vLLM v0.8.0 et Max Server v25.6 de Modular. Un usage restreint de pickle avec des données non fiables, l’ajout de l'authentification cryptographique HMAC (Hash-Based Message Authentication Codes) et de TLS aux communications basées sur ZQ et la sensibilisation les équipes de développement aux risques ont également été recommandés.

Commentaire