CVE-2025-23298 : Obtention d'u... Note

CVE-2025-23298 : Obtention d'une exécution de code à distance dans NVIDIA Merlin

La Trend Micro Zero Day Initiative a découvert une vulnérabilité critique dans la bibliothèque Transformers4Rec de NVIDIA, permettant l'exécution de code à distance avec des privilèges root. Cette vulnérabilité, CVE-2025-23298, découle d'une désérialisation non sécurisée lors du chargement de points de contrôle de modèles à l'aide du module pickle de Python. Transformers4Rec, faisant partie de l'écosystème Merlin, est largement utilisé pour les tâches de recommandation et s'intègre à Hugging Face Transformers. La faille réside dans la fonction load_model_trainer_states_from_checkpoint, qui utilise directement torch.load() sans paramètres de sécurité, l'exposant à des fichiers pickle malveillants. La méthode __reduce__ de Pickle permet l'exécution de code arbitraire lors de la désérialisation. La surface d'attaque est importante en raison du partage fréquent de modèles et de la confiance accordée aux fichiers de points de contrôle, d'autant plus que ces processus s'exécutent souvent avec des privilèges élevés. Un point de contrôle malveillant pourrait exécuter des commandes système avant le chargement des poids du modèle. L'impact réel inclut l'exécution de code à distance, l'escalade de privilèges, l'exfiltration de données et les attaques de la chaîne d'approvisionnement. NVIDIA a corrigé la vulnérabilité en implémentant un mécanisme de chargement personnalisé qui restreint la désérialisation aux classes approuvées. Cet incident souligne les défis de sécurité omniprésents dans l'écosystème ML/IA en raison de la dépendance à pickle. Il est conseillé aux développeurs d'éviter pickle pour les données non fiables, d'utiliser weights_only=True, de restreindre les classes fiables et d'envisager des formats de sérialisation sécurisés comme Safetensors. Les organisations devraient auditer la provenance des modèles, implémenter la signature et mettre en bac à sable le chargement des modèles. La communauté ML doit s'éloigner de pickle et donner la priorité à la sécurité dans la conception des frameworks.
CdXz5zHNQW_ETMuumC4hx.jpeg