Débordement d’entier dans le code admin débloque 2 millions de dollars coincés dans le contrat ICO HongCoin de 2016
Un bug de débordement d’entier vieux de près de dix ans, dans une fonction admin du contrat ICO Ethereum de HongCoin, a récemment été découvert par un chercheur en sécurité connu sous le nom de 0xflorent, permettant la récupération d’environ 1 003,62 ETH — soit environ 2 millions de dollars — qui étaient bloqués depuis neuf ans. Cette faille se situait dans une fonction admin restreinte, gouvernée par le portefeuille multisignature de HongCoin, permettant un déblocage coordonné des fonds pour 48 investisseurs originaux. La correction illustre des leçons clés quant à la préservation de la compatibilité ascendante et aux risques à long terme liés aux bugs hérités dans les contrats intelligents DeFi et les contrats de vente de tokens.
Quelle était la vulnérabilité et comment a-t-elle permis la récupération des fonds ?
Fondamentalement, la vulnérabilité était un problème de débordement d’entier dans une fonction admin privilégiée.
0xflorent a découvert que cette fonction contractuelle, limitée à l’exécution par le portefeuille multisig de HongCoin, ne possédait pas les protections contre les débordements d’entiers que les versions ultérieures de Solidity ont introduites en tant que protections standards. Cela a permis un comportement arithmétique inattendu qui, exploité avec précaution, a autorisé les détenteurs admin à débloquer une quantité substantielle d’ETH piégée à cause de ces débordements.
La faille n’a pas été exploitée publiquement de manière malveillante mais est restée dormante, verrouillant involontairement des fonds dans le contrat pendant neuf ans depuis l’ICO de 2016. Ce n’est que grâce à la découverte et à la divulgation responsable par 0xflorent, en coordination avec les détenteurs du multisig HongCoin, que le mécanisme pour contourner cette limitation a été reconstruit et mis en œuvre de manière sécurisée.
Ce cas met en lumière comment les contrats intelligents hérités — en particulier ceux datant d’avant les améliorations de sécurité linguistique comme les contrôles intégrés de débordement introduits autour de Solidity 0.8.x — peuvent toujours receler des vulnérabilités invisibles sans audit de code approfondi et simulation d’environnement.
Comment la récupération des fonds a-t-elle été coordonnée et exécutée ?
Étant donné que la fonction vulnérable n’était accessible que via le portefeuille multisignature de HongCoin, un processus collaboratif était essentiel.
Le parcours de récupération a consisté en ces étapes :
- 0xflorent a mené une analyse détaillée et des tests de la séquence de déblocage en utilisant un fork du mainnet Ethereum, garantissant que l’exploit était reproductible sans risque pour des fonds en direct.
- Après avoir confirmé le processus, le chercheur a contacté en toute sécurité les détenteurs du multisig HongCoin et partagé preuves et directives.
- L’équipe multisig a autorisé et signé elle-même les transactions de déblocage, maintenant sur la chaîne la gouvernance et le contrôle multipartite.
- L’équipe a exécuté un total de 41 transactions distinctes — une par investisseur bloqué avec un solde piégé — afin de libérer séquentiellement environ 1 000 ETH.
- Par ailleurs, sept autres détenteurs avec des soldes plus petits ont pu récupérer leurs fonds directement, sans recours à la contournement.
Notamment, les premiers résultats montrent que deux investisseurs ont déjà récupéré un total combiné de 96,5 ETH, environ 193 000 $, démontrant à la fois l’impact pratique et la mobilisation des investisseurs.
Cette approche collaborative assure l’intégrité et la confiance dans la gestion des fonds tout en déverrouillant de manière sûre des actifs piégés par des lacunes historiques dans l’implémentation.
Qui en a bénéficié et combien a été récupéré ?
Au total, environ 48 investisseurs originaux ayant acheté des tokens HongCoin lors de l’ICO 2016 sont devenus éligibles à récupérer leurs soldes ETH bloqués grâce à cette correction.
| Indicateur | Valeur |
|---|---|
| Total ETH débloqués | 1 003,62 ETH (~2 millions $) |
| Nombre d’investisseurs éligibles | 48 |
| Investisseurs ayant récupéré leurs fonds | 2 |
| Total ETH récupéré jusqu’à présent | 96,5 ETH (~193 000 $) |
| Nombre de transactions signées | 41 |
| Soldes plus petits remboursés directement | 7 détenteurs |
Le fait que seuls deux investisseurs aient réclamé des fonds jusqu’ici reflète probablement les difficultés à contacter et réengager des investisseurs longtemps inactifs ou la nécessité pour eux d’accomplir des étapes de remboursement. Un suivi continu auprès des détenteurs restants augmenterait vraisemblablement les taux de récupération au fil du temps.
Ce cas illustre comment les bugs hérités dans les contrats peuvent piéger d’importants fonds pendant des années et souligne l’importance des interventions axées audit, même longtemps après la clôture des ICO.
Pourquoi les bugs de débordement d’entier restent-ils un risque durable dans les contrats intelligents hérités ?
L’incident HongCoin met en lumière une catégorie classique de vulnérabilités issues des versions antérieures à Solidity, où l’arithmétique des entiers — sans vérifications intégrées de débordement et sous-flux — pouvait silencieusement engendrer des états indésirables.
Avant Solidity v0.8.0, les développeurs devaient utiliser des bibliothèques externes comme SafeMath pour prévenir explicitement ces débordements. Dans de nombreux contrats ICO plus anciens, ces protections faisaient défaut ou étaient incomplètes. En conséquence :
- Les opérations arithmétiques pouvaient effectuer un wrap-around (ex. : une soustraction provoquant un sous-flux négatif qui devenait un entier positif très grand).
- Les fonctions admin ou propriétaires manipulant des variables de solde pouvaient être abusées pour débloquer ou verrouiller des fonds involontairement.
- Les contrats hérités déployés sur le mainnet Ethereum restent immuables, portant ce risque indéfiniment.
Le bug chez HongCoin était spécifiquement situé dans une fonction réservée à l’admin, soulignant comment même les zones restreintes du code d’un contrat peuvent receler des failles oubliées.
| Ère Solidity | Protection contre débordement | Pratique courante |
|---|---|---|
| Avant Solidity 0.8.0 | Absente par défaut | Utilisation de SafeMath ou bibliothèques similaires |
| Solidity 0.8.0 et après | Contrôles intégrés | Arithmétique sûre appliquée par défaut |
La persistance de telles vulnérabilités souligne la valeur d’audits de sécurité spécialisés sur les contrats hérités, surtout quand des actifs restent bloqués ou que les contrôles sont limités mais critiques. La capacité à simuler des appels sur des forks de test et à engager des signataires multisig pour des corrections est vitale.
Quelles leçons de sécurité plus larges tire-t-on de la récupération HongCoin ?
Ce cas de débordement d’entier dormante depuis longtemps renforce plusieurs points clés pour la communauté de la sécurité Web3, surtout compte tenu de la complexité et de l’ampleur croissante des écosystèmes DeFi :
- Les risques des contrats hérités persistent : Des contrats intelligents déployés il y a plusieurs années peuvent encore bloquer des actifs on-chain importants indéfiniment à cause de bugs subtils non détectés initialement.
- Les clés admin et multisigs comptent : Les permissions contrôlées par des portefeuilles multisig assurent des voies de gouvernance pour corriger les problèmes tout en augmentant la complexité de coordination. Le design de gouvernance doit anticiper les scénarios de mise à jour ou de correction.
- Les débordements d’entier sont toujours une préoccupation : Même avec les protections modernes de Solidity, auditer les hypothèses arithmétiques et les cas limites reste critique, surtout en migrant ou en mettant à jour d’anciens contrats.
- Divulgation responsable et collaboration : Le chercheur 0xflorent a démontré une bonne pratique en divulguant en privé, en validant les corrections sur testnets, et en coopérant avec les détenteurs multisig pour débloquer les fonds de manière éthique.
- Confiance des investisseurs et récupération : Le déblocage des fonds piégés peut restaurer une valeur significative aux détenteurs affectés des années plus tard, atténuant ainsi les dommages réputationnels et améliorant la confiance communautaire.
| Aspect clé | Exemple cas HongCoin | Meilleure pratique générale |
|---|---|---|
| Type de vulnérabilité | Débordement d’entier en fonction admin | Audits complets, utilisation de SafeMath |
| Approche de récupération | Coordination multisig et validation testnet | Contrôle multipartite ; déploiement et revue par étapes |
| Impact sur investisseurs | 2 millions $ débloqués pour 48 investisseurs | Communication transparente et remboursements |
| Potentiel risque héritage | Fonds bloqués pendant 9 ans | Surveillance continue, audits hérités |
Les équipes de sécurité maintenant ou auditant des protocoles hérités doivent être particulièrement vigilantes face à des problèmes similaires cachés, qui peuvent encore provoquer d’importants impacts opérationnels ou financiers.
Perspective Soken : “Les débordements d’entier dans les contrats intelligents hérités restent un défi de sécurité constant. Nos audits rencontrent fréquemment d’anciens schémas où les protections natives du langage faisaient défaut, générant des risques latents. La remédiation coordonnée — surtout pour des contrats contrôlés par portefeuilles multisignatures — exige souvent un équilibre délicat entre précision technique et gouvernance des parties prenantes. Cette récupération HongCoin illustre comment une divulgation éthique combinée à une gouvernance permettant des corrections peut débloquer une valeur piégée des années après le lancement.”
Commentaire de clôture : libérer la valeur héritée grâce à la vigilance technique et à la gouvernance
La restauration du débordement d’entier dans HongCoin dévoile comment des vulnérabilités de code d’une époque antérieure à Solidity peuvent piéger des millions de dollars pendant près d’une décennie. L’effort collaboratif mené par 0xflorent et les détenteurs multisig de HongCoin démontre l’efficacité d’un processus de divulgation axé sur la sécurité et d’une atténuation appuyée par la gouvernance pour libérer des actifs bloqués en toute sécurité.
Comprendre ces risques liés aux contrats hérités est crucial pour la santé à long terme de l’écosystème Ethereum, où des contrats intelligents anciens restent fondamentaux tout en étant souvent obscurs dans leur complexité et subtilité. Les projets blockchain chargés de la maintenance ou de la mise à jour d’anciens contrats doivent prioriser des audits rétrospectifs ciblés sur les débordements d’entier et problèmes associés, en exploitant les forks de testnet et les approbations multisig pour des corrections sûres.
Une étape pratique pour les équipes opérant des contrats hérités est de réaliser des évaluations ciblées sur les débordements d’entier, cartographiant les chemins admin sensibles et simulant leurs effets sur des forks de test — notamment quand des fonds piégés ou des variables d’état gelées peuvent exister. Agir de manière proactive peut prévenir des pertes pour les investisseurs et libérer une valeur cachée.
Intégrer des évaluations rigoureuses des contrats hérités au sein des programmes de sécurité — à l’instar des préparations à la réponse aux incidents — renforce la sûreté des protocoles et la confiance des investisseurs. Les services d’audit technique de Soken sont spécialisés dans ces revues nuancées, à la fois sur les contrats hérités et prospectifs, aidant les projets à identifier et corriger des risques couvrant toute la durée de vie des déploiements.
Frequently Asked Questions
Qu’est-ce qui a provoqué le blocage de 2 millions de dollars dans le contrat ICO HongCoin ?
Un bug de débordement entier dans une fonction admin restreinte du contrat ICO Ethereum de HongCoin en 2016 a bloqué environ 1 003,62 ETH, soit près de 2 millions de dollars, pendant neuf ans en empêchant toute transaction de fonds.
Comment la vulnérabilité de débordement entier a-t-elle été découverte et exploitée en toute sécurité ?
Le chercheur en sécurité 0xflorent a identifié le débordement dans la fonction admin limitée par multisignature et a utilisé une exécution multisignature coordonnée pour récupérer les fonds bloqués sans impacter les autres parties prenantes.
Quelles leçons de sécurité des smart contracts l’incident HongCoin met-il en évidence ?
L’incident souligne l’urgence de protéger contre les débordements entiers, de sécuriser les fonctions admin et de corriger les risques liés aux contrats legacy afin de garantir compatibilité et possibilité de récupération future des fonds.
Pourquoi les vulnérabilités dans les smart contracts legacy sont-elles cruciales en DeFi ?
Les contrats legacy dépourvus de protections modernes peuvent contenir des bugs cachés bloquant des fonds pendant des années. Cela présente un risque majeur en finance décentralisée et ventes ICO, soulignant l’importance des audits et corrections continues.
Quel rôle la wallet multisignature a-t-elle joué dans cette récupération de fonds ?
La wallet multisignature contrôlait les fonctions admin restreintes et a permis un déblocage sécurisé et coordonné des fonds bloqués, illustrant une approche white-hat respectant les contrôles de gouvernance.