Gros plan macro sur un registre Bitcoin métallique, représentant une unité de données de haute sécurité.

Bitcoin Core renforce la vérification contre la mutation de blocs

Une vérification supplémentaire contre la mutation des blocs est intégrée dans le code de Bitcoin. Cette modification, soumise via une Pull Request sur le dépôt officiel, vise à étendre les mécanismes de sécurité déjà en place pour prévenir les blocages du traitement des blocs par des pairs malveillants. Le changement consiste à appliquer cette vérification directement dans la fonction PartiallyDownloadedBlock::FillBlock, juste avant le retour du statut OK, et cela enlève également un appel à CheckBlock qui n’était plus nécessaire, selon l’annonce de github.com.

Le contexte de cette mise à jour est directement lié à la CVE-2025-62859. Cette vulnérabilité, découverte par Eugene Siegel, permettait à un pair malveillant d’exploiter la malléabilité des témoins (witness malleation) dans les blocs compacts, menant potentiellement à une stagnation du traitement des blocs chez la victime, selon Bitcoin Core.

Avant cette correction, si le contrôle de la malléabilité des témoins échouait, le nœud concerné devait revenir à la demande du bloc auprès du même pair via GETDATA, avec un délai d’attente de dix minutes. C’est ce comportement qui permettait à un attaquant, si celui-ci contrôlait trois pairs à bande passante élevée, de paralyser indéfiniment le traitement des blocs de la victime. Une sévérité moyenne est attribuée à cette faille.

Vue aérienne contrastée d'une structure de réseau numérique complexe et renforcée, symbolisant la validation des pairs.

Renforcement des mécanismes de validation

Depuis la version Bitcoin#29412, le protocole n’autorisait pas le traitement immédiat des blocs mutés, mais cette restriction s’appliquait uniquement au message de bloc legacy. L’intégration de la vérification dans FillBlock, comme l’indique github.com, est une mesure de prudence — un « belt-and-suspenders » — pour s’assurer que des stratégies de mutation similaires n’affectent pas la diffusion par les pairs honnêtes.

Cette amélioration vient compléter les efforts de sécurisation du protocole. On se rappelle, par exemple, qu’une version antérieure de Bitcoin Core, avant les versions 29.2 et 30.0, était exposée à ce risque de blocage.

Chronologie de la correction

Les étapes de correction ont été bien rythmées. Eugene Siegel a signalé le problème le 28 avril 2025. Gregory Sanders a ouvert la Pull Request #32646 le 30 mai 2025, qui a été fusionnée le 30 juin 2025. Pour assurer la couverture, cette correction a été réintégrée dans la version 29 le 12 septembre 2025. Les versions corrigées de Bitcoin Core 30.0 et 29.2 ont été publiées respectivement les 10 octobre 2025 et 14 octobre 2025.

La dernière version vulnérable de Bitcoin Core, la série 29.x, est arrivée à son terme le 27 octobre 2026, ce qui souligne l’importance de maintenir les mises à jour dans cet écosystème technique.

Sources