Pourquoi la mise à niveau de mon contrat intelligent me permet-elle de corrompre silencieusement un stockage que les auditeurs avaient déjà validé ?
Opportunité
Les modèles de proxy évolutifs (UUPS, Transparent Proxy, Diamond) sont standard en DeFi de production, mais imposent une contrainte stricte : la disposition du stockage d'une nouvelle implémentation doit être compatible avec chaque emplacement assigné par la précédente. Insérez une nouvelle variable d'état à la mauvaise position et chaque emplacement suivant est corrompu silencieusement, sans erreur on-chain. Les outils de vérification automatisés comme le plugin de mise à niveau d'OpenZeppelin détectent les cas évidents, mais passent à côté du stockage nommé ERC-7201 avec un packing personnalisé, des assignations de slots au niveau assembleur, et les collisions croisées entre facettes Diamond où deux facettes revendiquent la même région de stockage. Une étude évaluée par des pairs publiée en janvier 2026 (ProxyLens) a identifié une classe significative de vulnérabilités de collision inter-facettes que les outils existants ne détectent pas. Les auditeurs examinent les contrats d'implémentation de façon isolée et ne peuvent pas reconstituer la cartographie complète du stockage d'un proxy comportant plusieurs facettes déléguées.
Pourquoi c'est important
Un outil qui construit une carte de stockage complète avec diff de version sur l'ensemble des contrats proxy et d'implémentation transformerait une catégorie de corruptions silencieuses de données en déploiements bloqués.
Comment j'évalue l'opportunité
Le Score d'Opportunité est mon évaluation personnelle, pas une mesure : l'intensité de la douleur, sa fréquence et le peu de solutions qui existent aujourd'hui. Plus il est élevé, plus je pense que le problème vaut la peine d'être résolu.
L'intensité de la douleur qu'il provoque lorsqu'il se manifeste.
La fréquence à laquelle les gens y sont réellement confrontés.
Le peu de bons outils qui existent pour y remédier aujourd'hui.
D'autres problèmes qui méritent d'être résolus
Pourquoi ne puis-je pas prouver ma solvabilité sans révéler mon solde ?
BlockchainPourquoi déplacer de l'argent entre blockchains est-il encore plus effrayant que les débuts d'internet ?
BlockchainPourquoi la conformité se résume-t-elle encore à un PDF et une prière ?
BlockchainPourquoi la garde autonome est-elle encore un choix entre perdre ses clés et faire confiance à une entreprise ?
BlockchainPourquoi la tokenisation d'un actif réel nécessite-t-elle encore dix intermédiaires ?
BlockchainPourquoi un stablecoin ne peut-il pas effectuer un paiement sans connexion internet ?