CERT/CC a publié la note de vulnérabilité VU#456290 le 1er septembre, concernant CVE-2026-80047 dans Hugging Face Transformers. Dans les termes mêmes de la note, la bibliothèque « effectue un chargement de module distant et une écriture locale dans le cache avant d’évaluer l’invite de consentement trust_remote_code, en violation du contrat de sécurité appliqué dans les autres chemins dynamiques de chargement de modules ».

Là où l’ordre s’inverse

Le chemin concerné est load_custom_generate(), qui appelle get_cached_module_file() pour le fichier custom_generate/generate.py d’un dépôt de modèle. Cette fonction auxiliaire copie le fichier dans le cache local HF_MODULES_CACHE. Ce n’est qu’ensuite que resolve_trust_remote_code() est consultée. Tous les autres chemins de chargement — AutoConfig, AutoModel, AutoTokenizer — demandent l’autorisation avant de toucher au disque.

Ce que le cadrage courant ne dit pas correctement

L’affaire sera présentée comme une exécution de code à distance dans Transformers, et le résumé du NVD l’y invite en ouvrant sur des « fichiers Python distants ». Il ne s’agit pas, à lui seul, d’une RCE : refuser l’invite de confiance empêche toujours l’exécution, car get_class_in_module() s’exécute après l’appel au consentement. Ce que vous ne pouvez pas refuser, en revanche, c’est l’arrivée du fichier dans votre cache, où un chargement de confiance ultérieur peut entrer en conflit avec lui. L’impact est une écriture indésirable qui survit à la session au cours de laquelle l’utilisateur a dit non.

La plage de versions pointe dans la mauvaise direction

L’avis donne la plage concernée comme de 4.49.0 à 5.8.1, et le tableau des vulnérabilités du registre GitHub est vide, donc aucune version corrigée n’est nommée. Lire ce plafond comme « les versions plus récentes sont épargnées » est le piège : l’ordre chargement-avant-consentement reste inchangé dans v5.16.1, publiée le 26 août — huit versions mineures au-delà du haut de la plage indiquée. La plage indique où les tests se sont arrêtés, pas où le bug s’arrête.

Aucune déclaration du fournisseur, quatre semaines plus tard

CERT/CC indique que Hugging Face a été informé le 4 août et, lors de la publication du 1er septembre, affiche un statut fournisseur Unknown avec la mention « We have not received a statement from the vendor. ». Aucun score n’est non plus publié — ni GitHub ni CERT/CC n’attribuent de CVSS. Un délai de 28 jours entre la notification et la publication, sans réponse du fournisseur, est la dimension de divulgation qui accompagne le volet technique.