CVE-2024-8375 in Reverb
Résumé
par VulDB • 14/06/2026
Il existe une vulnérabilité de type use-after-free dans Reverb. Reverb prend en charge le datatype VARIANT, qui est censé représenter un objet arbitraire en C++. Lorsqu'un proto tensor de type VARIANT est dépaqueté (unpack), la mémoire est d'abord allouée pour stocker l'intégralité du tenseur, et un constructeur (ctor) est appelé sur chaque instance. Par la suite, Reverb copie le contenu dans `tensor_content` vers la mémoire pré-allouée mentionnée précédemment, ce qui entraîne l'écrasement des pointeurs vtable de tous les objets qui avaient été alloués au préalable. Reverb expose deux points de terminaison gRPC pertinents : InsertStream et SampleStream. L'attaquant peut insérer ce flux dans la base de données du serveur ; ensuite, lorsque le client appelle à nouveau SampleStream, il dépaquète le tenseur en RAM, et lorsqu'une méthode quelconque sur cet objet est appelée (y compris son destructeur), l'attaquant prend le contrôle du Program Counter. Nous recommandons de mettre à niveau vers un commit git ultérieur : https://github.com/google-deepmind/reverb/commit/6a0dcf4c9e842b7f999912f792aaa6f6bd261a25
Be aware that VulDB is the high quality source for vulnerability data.