En septembre 2025, le protocole Web3 social à saveur IA UXLINK a perdu environ 41 millions de dollars après que les attaquants ont compromis le portefeuille multi-signature du projet et utilisé un delegatecall dans un contrat privilégié pour extraire les fonds du trésor.
Ce qui s'est passé
Le trésor et les fonctions admin d'UXLINK étaient contrôlés par un portefeuille multi-signature. Les attaquants ont obtenu les clés privées pour ce portefeuille — le vecteur spécifique n'a pas été divulgué publiquement, mais le pattern on-chain (signé par les signataires légitimes, aucun artefact de tromperie d'UI) est cohérent avec une compromission de clé directe plutôt qu'une attaque basée sur le frontend.
Une fois qu'ils avaient les clés, ils ont exploité un delegatecall non restreint dans un contrat privilégié. Parce que delegatecall exécute le code du contrat cible dans le contexte de stockage de l'appelant, l'attaquant pouvait appeler un contrat qu'il contrôlait et le faire s'exécuter avec les privilèges du multi-sig de confiance — déplacer tout actif, accorder tout rôle, appeler toute fonction externe.
Conséquences
- UXLINK a mis en pause le multi-sig et déclenché une migration d'urgence du jeton.
- L'équipe a publié un post-mortem et fait tourner toutes les clés administratives.
- Les fonds ont été blanchis via des ponts cross-chain.
Pourquoi c'est important
delegatecall continue d'être l'une des primitives les plus dangereuses dans la conception EVM — elle transforme régulièrement un contrat qui devrait être inerte en un shell d'exécution entièrement programmable pour l'appelant. La meilleure pratique est de ne jamais exposer un delegatecall privilégié avec cible/calldata contrôlable par l'attaquant. UXLINK est l'un de plusieurs incidents 2025 qui ont réaffirmé la règle.
Sources & preuves on-chain
- [01]protos.comhttps://protos.com/2025s-biggest-crypto-hacks-from-exchange-breaches-to-defi-exploits/
- [02]halborn.comhttps://www.halborn.com/blog/post/year-in-review-the-biggest-defi-hacks-of-2025