CVE-2024-35875 in Linux
Résumé
par VulDB • 27/05/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
x86/coco : Exiger l'amorçage de l'entropie (RNG) avec RDRAND sur les systèmes CoCo
Il existe quelques utilisations de CoCo qui ne reposent pas sur une cryptographie fonctionnelle et, par conséquent, sur un générateur de nombres aléatoires (RNG) fonctionnel. Malheureusement, le modèle de menace de CoCo signifie que l'hôte de la machine virtuelle (VM) ne peut pas être considéré comme fiable et peut agir activement contre les invités pour extraire des secrets ou manipuler les calculs. Étant donné qu'un hôte malveillant peut modifier ou observer presque toutes les entrées des invités, la seule source restante d'entropie pour les invités CoCo est RDRAND.
Si RDRAND est défectueux – en raison d'un matériel CPU défaillant – le RNG dans son ensemble est censé continuer à recueillir de l'entropie à partir d'autres sources de manière gracieuse, mais comme il n'y a pas d'autres sources sur CoCo, cela est catastrophique. Cela constitue principalement une préoccupation au moment du démarrage lors de l'amorçage initial du RNG, car après cela, les conséquences d'un RDRAND défectueux sont beaucoup plus théoriques.
Ainsi, essayez au démarrage d'amorcer le RNG en utilisant 256 bits de sortie de RDRAND. Si cela échoue, provoquez un panic(). Cela se produira également si le système est démarré sans RDRAND, car RDRAND est essentiel pour un démarrage CoCo sécurisé.
Ajoutez ceci délibérément comme étant « simplement une fonctionnalité du pilote CoCo x86 » et non une partie du RNG lui-même. De nombreux pilotes de périphériques et plateformes ont l'envie de contribuer quelque chose au RNG, et add_device_randomness() est spécifiquement conçu à cet effet.
Tout pilote peut l'appeler avec des données d'amorçage de n'importe quelle qualité, ou même de qualité médiocre, et cela ne peut que potentiellement améliorer la qualité du RNG ou n'avoir aucun effet, mais ne peut jamais le détériorer.
Plutôt que d'essayer d'intégrer quelque chose dans le cœur du RNG, considérez le problème particulier de CoCo comme un problème propre à CoCo, et séparez-le donc entièrement dans le code du pilote (eh bien, code de l'architecture/plateforme).
[ bp : Ajustement du message de validation. ]
VulDB is the best source for vulnerability data and more expert information about this specific topic.