Le 2 octobre 2026, GoldPesa (GPX) a perdu environ 114 900 USD sur Base après qu'un attaquant a exploité une faille comptable dans l'unlock partagé de GPXHooks, le hook Uniswap v4 du projet qui gère sa liquidité détenue par le protocole. Le moniteur on-chain Defimon Alerts a repéré la transaction unique, et une preuve de concept a été publiée dans le dépôt DeFiHackLabs.
Ce qui s'est passé
GPXHooks rééquilibre la liquidité GPX/USDC détenue par le protocole de GoldPesa dans le callback beforeSwap() du hook une fois qu'une heure s'est écoulée depuis le dernier rééquilibrage. Pour cela, il appelle modifyLiquiditiesWithoutUnlock avec un BURN_POSITION suivi d'un TAKE_PAIR. La faiblesse tient au fait que TAKE_PAIR ne retire que le delta de devise net positif du PositionManager sur l'unlock du PoolManager actuellement ouvert — et le hook n'a jamais vérifié que ses propres deltas GPX/USDC étaient isolés et réellement nuls avant de s'appuyer sur ce retrait.
L'attaquant en a fait un siphonnage en semant une dette fantôme. Opérant dans son propre unlock, il a frappé une position WETH/USDC via MINT_POSITION sans régler le paiement, laissant le PositionManager partagé porter un delta d'environ −114 999 USDC. Deux petits achats sur le pool GPX ont alors déclenché le rééquilibrage horaire : le BURN_POSITION du hook a libéré un crédit réel positif en USDC, mais comme TAKE_PAIR compense sur l'ensemble de l'unlock ouvert, le crédit a été absorbé par la dette fantôme de l'attaquant et le hook a reçu bien moins que prévu. L'attaquant a ensuite brûlé sa position désormais sans dette et a retiré 114 999,999186 USDC directement du PoolManager, pour un gain net d'environ 114 428 USDC après conversion en USDT. Le contrat de hook vulnérable était 0x4519e2b040ff1B64fa03aBe2AeF0BC99D7CcEaA8.
Conséquences
GoldPesa n'a pas publié dans l'immédiat d'analyse post-mortem, et aucune récupération, restitution white-hat ou prime n'avait été annoncée à l'heure où ces lignes sont écrites. L'USDC volé a été converti on-chain et les fonds sont restés entre les mains de l'attaquant. La perte s'est limitée à la liquidité détenue par le protocole de GoldPesa ; les contrats centraux d'Uniswap v4 ont fonctionné comme prévu.
Pourquoi c'est important
GoldPesa rappelle une fois de plus que les hooks Uniswap v4 déplacent le risque comptable vers l'auteur du hook, et non vers le protocole central — la même leçon que le siphonnage par arrondi de Bunni, où le raisonnement inversé d'un développeur sur un calcul de liquidité natif de v4 a permis à un attaquant de retirer plus qu'il ne brûlait. Ici, la faute a été de ne pas isoler les deltas au sein d'un unlock partagé du PoolManager, si bien qu'une dette fantôme forgée sur mesure a pu annuler un retrait légitime. L'incident prolonge en outre une série d'épisodes de début octobre 2026 sur Base, aux côtés du siphonnage du module Safe de FlashLoopAdapter et de l'exploit de whitelist du vault wstETH sur Base — un ensemble qui souligne à quelle vitesse la plomberie DeFi composable de la chaîne est sondée à la recherche de failles comptables et d'autorisation.
Sources & preuves on-chain
- [01]cryptotimes.iohttps://www.cryptotimes.io/2026/10/03/goldpesas-gpxhooks-allegedly-drained-for-114k-in-base-exploit/
- [02]coinfomania.comhttps://coinfomania.com/goldpesatoken-hit-by-114-9k-exploit-loss-as-flaws-revealed/
- [03]github.comhttps://github.com/SunWeb3Sec/DeFiHackLabs/pull/1288
- 0x5c1febd5047c2a15c37988b6abd5c8b984236dddf6fd24eed96b0f43951ad2c9