Dev & Open Source||2 sources
Des chercheurs découvrent une faille critique de double-libération dans la crate Rust Hivex 0.2.0
La crate Rust hivex 0.2.0 contient une faille critique de non-sûreté mémoire (double-free, use-after-free), corrigée en 0.2.1. Les applications dépendantes risquent corruption et exécution de code.
Des chercheurs ont identifié, le 28 février 2026, une vulnérabilité critique dans la crate Rust hivex version 0.2.0, une liaison pour la bibliothèque d’extraction de ruches du Registre Windows (libhivex), sous l’identifiant GHSA-J8CJ-HW74-64JV. Notée 8,1 sur l’échelle CVSS, elle permet des double-libérations (CWE-415) et des utilisations après libération (CWE-416), dues à une implémentation erronée du trait Drop et à l’exposition sécurisée d’API de création de poignées brutes. La méthode close() libère la ressource sous-jacente en C sans bloquer le destructeur, provoquant une double-libération lors de la fin de la portée. De même, l’API fromhandle() autorise la création publique de plusieurs propriétaires pour une unique poignée C, entraînant une utilisation après libération. Le correctif, apporté via le commit f4c7a0d, rend fromhandle() non sécurisée (unsafe) et ajuste close(). Les développeurs doivent migrer sans délai vers la version 0.2.1 pour éliminer ces risques. L’écosystème Rust repose sur un modèle de propriété stricte visant à prévenir les erreurs de mémoire, rendant de telles non-sécurités extrêmement rares, surtout dans les crates de liaison FFI avec du code C. La bibliothèque libhivex sert à l’analyse hors ligne des fichiers de ruches du Registre Windows, un outil essentiel pour les développeurs forensiques et les administrateurs système. Cette faille expose les applications dépendant de hivex 0.2.0 à une corruption mémoire et potentiellement à une exécution de code arbitraire, contredisant la réputation de sécurité du langage. Bien qu’aucun POC public ne soit disponible et que l’impact reste confiné au contexte d’exécution local, les utilisateurs de crates FFI en Rust surveillent étroitement les alertes GHSA. Les interfaçages avec le C demeurent un vecteur faible malgré les garde-fous du langage, soulignant la nécessité d’une vigilance accrue dans ce domaine critique de l’écosystème.
2 sources
Article enrichi par l'IA
Cet article a été enrichi avec du contexte additionnel provenant des connaissances de l'IA (historique, comparaisons, données techniques). Les sources éditoriales restent la base factuelle.
GHSA-J8CJ-HW74-64JV: Critical Unsoundness in Rust 'hivex' Crate Leading to Double-Free and Use-After-Free
Source éditoriale·Dev.to·28 févr. 2026
Contexte ajouté : Modèle de sécurité mémoire de Rust, rôle de libhivex pour ruches Registre Windows, rareté des unsoundness en FFI
Contexte IA