CVE-2025-62859 : une altération des témoins bloque le traitement des blocs

Bitcoin Core a rendu publique le 10 novembre 2026 une faille qui pouvait bloquer le traitement des blocs, dans certaines conditions, sur les versions antérieures à 29.2 et 30.0. Le problème est classé de gravité Medium et reposait sur une malleabilité du witness dans les compact blocks.

CVE-2025-62859 : une altération des témoins bloque le traitement des blocs

Une faille qui peut retarder le traitement des blocs

Selon l’avis de sécurité, les versions concernées effaçaient l’état de téléchargement d’un compact block après sa reconstruction, mais avant de vérifier la présence d’une witness malleation. Si ce contrôle échouait ensuite, le nœud retombait sur une demande du bloc au même pair via GETDATA, avec un délai d’attente de 10 minutes.

Dans certains cas, un pair malveillant pouvait exploiter ce comportement pour bloquer le traitement des blocs par la victime. Le scénario décrit par Bitcoin Core suppose que l’attaquant annonce d’abord un compact block à la cible. Si l’attaquant contrôlait les 3 high-bandwidth peers de la victime, ou si celle-ci tournait avec -blocksonly, l’attaque pouvait être répétée indéfiniment.

Signalement et correction

L’issue a été découverte par Eugene Siegel, qui l’a signalée de manière responsable. Bitcoin Core précise que Gregory Sanders a ouvert la pull request #32646 le 2025-05-30 pour corriger le problème.

Cette correction a ensuite été fusionnée le 2025-06-30, puis rétroportée à la version 29 le 2025-09-12. Bitcoin Core indique aussi que Bitcoin Core 30.0 a été publié avec un correctif le 2025-10-10, avant Bitcoin Core 29.2 le 2025-10-14.

La dernière version vulnérable de la branche 29.x a atteint sa fin de vie le 2026-10-27. La divulgation publique de cette faille a été faite le 2026-11-10.