Bitget App
Trade smarter
Acheter des cryptosMarchésTradingFuturesEarnWeb3CommunautéPlus
Trading
Spot
Achat et vente de cryptos
Marge
Amplifiez et maximisez l'efficacité de vos fonds
Onchain
Tradez Onchain sans aller on-chain
Convert & Block Trade
Trades volumineux – Convertissez des cryptos en un clic et sans frais
Explorer
Launchhub
Prenez l'avantage dès le début et commencez à gagner
Copier
Copiez des traders experts en un clic
Bots
Bots de trading IA simples, rapides et fiables
Trading
Futures USDT-M
Futures réglés en USDT
Futures USDC-M
Futures réglés en USDC
Futures Coin-M
Futures réglés en cryptomonnaies
Explorer
Guide des Futures
Le parcours de trading de Futures, du débutant à l'expert
Événements Futures
Profitez de généreuses récompenses
Bitget Earn
Une variété de produits pour faire fructifier vos actifs
Simple Earn
Déposez et retirez à tout moment, rendements flexibles sans risque
On-chain Earn
Réalisez des profits quotidiens sans risquer votre capital
Structured Earn
Une innovation financière solide pour gérer les fluctuations du marché
VIP et Gestion de patrimoine
Des services premium pour une gestion de patrimoine intelligente
Prêt Crypto
Emprunts flexibles avec un haut niveau de sécurité des fonds
Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ?

Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ?

BlockBeatsBlockBeats2025/11/04 06:24
Afficher le texte d'origine
Par:BlockBeats

Le problème clé de cette attaque réside dans la logique de traitement des petites transactions par le protocole.

Titre original : « Analyse technique de la faille de $120M volés sur Balancer »
Source originale : ExVul Security


Préface


Le 3 novembre 2025, le protocole Balancer a été victime d'une attaque de hackers sur plusieurs blockchains telles qu'Arbitrum et Ethereum, entraînant une perte d'actifs de 120 millions de dollars. Le cœur de l'attaque réside dans une double faille liée à la perte de précision et à la manipulation de l'invariant.


L'infrastructure de Chainlink maintient depuis longtemps les standards les plus élevés dans le domaine Web3, ce qui en fait un choix naturel pour X Layer, qui s'efforce de fournir des outils de niveau institutionnel aux développeurs.


Le problème clé de cette attaque réside dans la logique de gestion des petites transactions par le protocole. Lorsqu'un utilisateur effectue un échange de faible montant, le protocole appelle la fonction _upscaleArray, qui utilise mulDown pour arrondir les valeurs à la baisse. Dès que le solde de la transaction et le montant d'entrée se situent simultanément à une certaine limite d'arrondi (par exemple dans la plage de 8-9 wei), une erreur de précision relative significative se produit.


L'erreur de précision se transmet au calcul de l'invariant D du protocole, ce qui conduit à une réduction anormale de la valeur D. Or, la variation de D entraîne directement une baisse du prix du BPT (Balancer Pool Token) dans le protocole Balancer. Le hacker exploite ce prix de BPT artificiellement bas pour réaliser un arbitrage via un chemin de transaction préalablement conçu, causant ainsi une perte massive d'actifs.


Transaction d'exploitation de la faille :


Transaction de transfert d'actifs :


Analyse technique


Point d'entrée de l'attaque


Le point d'entrée de l'attaque est le contrat Balancer: Vault, la fonction d'entrée correspondante étant la fonction batchSwap, qui appelle en interne onSwap pour l'échange de tokens.


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 0


À partir des paramètres et des restrictions de la fonction, on peut obtenir plusieurs informations :


1. L'attaquant doit appeler cette fonction via le Vault, il ne peut pas l'appeler directement.


2. La fonction appelle en interne _scalingFactors() pour obtenir le facteur d'échelle et effectuer l'opération de mise à l'échelle.


3. Les opérations de mise à l'échelle sont concentrées dans _swapGivenIn ou _swapGivenOut.


Analyse du mode d'attaque


Mécanisme de calcul du prix du BPT


Dans le modèle de pool stable de Balancer, le prix du BPT est une référence importante, déterminant combien de BPT l'utilisateur reçoit et combien d'actifs chaque BPT contient.


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 1


Dans le calcul des échanges du pool :


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 2


La partie servant de référence pour le prix du BPT est l'invariant D, ce qui signifie que pour manipuler le prix du BPT, il faut manipuler D. Analysons le processus de calcul de D :


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 3


Dans le code ci-dessus, le calcul de D dépend du tableau balances mis à l'échelle. Il faut donc une opération pour modifier la précision de ces balances, ce qui conduit à une erreur dans le calcul de D.


Origine de la perte de précision


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 4


Opération de mise à l'échelle :


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 5


Comme illustré ci-dessus, lors de l'appel à _upscaleArray, si le solde est très faible (par exemple 8-9 wei), l'arrondi à la baisse de mulDown entraîne une perte de précision significative.


Détail du processus d'attaque


Étape 1 : Ajustement à la limite d'arrondi


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 6


Étape 2 : Déclenchement de la perte de précision (faille principale)


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 7


Étape 3 : Profiter du prix du BPT artificiellement bas


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 8


Comme illustré ci-dessus, l'attaquant effectue plusieurs échanges dans une même transaction via le Batch Swap :


1. Premier échange : BPT → cbETH (ajustement du solde)


2. Deuxième échange : wstETH (8) → cbETH (déclenchement de la perte de précision)


3. Troisième échange : actif sous-jacent → BPT (profit)


Tous ces échanges se déroulent dans la même transaction batch swap, partageant le même état de solde, mais chaque échange appelle _upscaleArray pour modifier le tableau balances.


Absence de mécanisme de callback


Le processus principal est initié par le Vault, mais comment cela conduit-il à une accumulation de perte de précision ? La réponse réside dans le mécanisme de transmission du tableau balances.


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 9


En analysant le code ci-dessus, bien que le Vault crée un nouveau tableau currentBalances à chaque appel de onSwap, dans le Batch Swap :


1. Après le premier échange, le solde est mis à jour (mais en raison de la perte de précision, la valeur mise à jour peut être inexacte)


2. Le deuxième échange continue le calcul sur la base du résultat du premier


3. La perte de précision s'accumule, conduisant finalement à une réduction significative de l'invariant D


Problème clé :


Analyse technique : Balancer a été piraté pour 120 millions de dollars, où se trouvait la faille ? image 10


Résumé


L'attaque sur Balancer peut être résumée par les points suivants :


1. La fonction de mise à l'échelle utilise un arrondi à la baisse : _upscaleArray utilise mulDown pour la mise à l'échelle. Lorsque le solde est très faible (par exemple 8-9 wei), cela entraîne une perte de précision relative significative.


2. Le calcul de l'invariant est sensible à la précision : Le calcul de l'invariant D dépend du tableau balances mis à l'échelle. Toute perte de précision se transmet directement au calcul de D, le faisant diminuer.


3. Absence de vérification de la variation de l'invariant : Lors des échanges, il n'y a pas de vérification pour s'assurer que la variation de l'invariant D reste dans une plage raisonnable, permettant ainsi à l'attaquant d'exploiter à plusieurs reprises la perte de précision pour faire baisser le prix du BPT.


4. Accumulation de la perte de précision dans le Batch Swap : Dans un même batch swap, la perte de précision de plusieurs échanges s'accumule, conduisant finalement à une perte financière considérable.


Ces deux problèmes — perte de précision et absence de vérification — combinés à la conception minutieuse des conditions limites par l'attaquant, ont conduit à cette perte.


0

Avertissement : le contenu de cet article reflète uniquement le point de vue de l'auteur et ne représente en aucun cas la plateforme. Cet article n'est pas destiné à servir de référence pour prendre des décisions d'investissement.

PoolX : Bloquez vos actifs pour gagner de nouveaux tokens
Jusqu'à 12% d'APR. Gagnez plus d'airdrops en bloquant davantage.
Bloquez maintenant !

Vous pourriez également aimer

Un coup de froid : la plupart des entreprises de trésorerie en bitcoin vont vers leur fin

Ils ont imité le bilan de Strategy, mais n'ont pas reproduit la structure du capital.

深潮2025/11/06 11:27
Un coup de froid : la plupart des entreprises de trésorerie en bitcoin vont vers leur fin

L’analyste en cryptomonnaies met en avant des signes de reprise chez des altcoins clés

En bref, l’analyste Ali Martinez identifie des signes potentiels de reprise chez des altcoins majeurs. Martinez met en avant des re-tests de supports critiques pour SEI, PEPE, VET, ALGO et AVAX. Les indicateurs techniques suggèrent d’éventuels changements de tendance pour ces altcoins.

Cointurk2025/11/06 11:03
L’analyste en cryptomonnaies met en avant des signes de reprise chez des altcoins clés

Ripple et Mastercard propulsent XRP vers de nouveaux sommets

En résumé, le prix de XRP a grimpé de 4,9 %, atteignant 2,35 dollars, stimulé par les transactions institutionnelles. Le projet pilote XRP Ledger mené par Ripple et Mastercard renforce la demande du marché pour XRP. Dogecoin maintient sa tendance avec un soutien institutionnel autour de 0,1620-0,1670 dollar.

Cointurk2025/11/06 11:02
Ripple et Mastercard propulsent XRP vers de nouveaux sommets

Plongez dans les stratégies Altcoin qui façonnent le marché

Arthur Hayes partage ses réflexions sur l'émergence réelle d'une saison des altcoins. Les investisseurs se concentrent désormais sur des projets générant des revenus et distribuant des parts. Ce changement reflète la maturité croissante du marché des cryptomonnaies.

Cointurk2025/11/06 11:02
Plongez dans les stratégies Altcoin qui façonnent le marché