Bitget App
Trade smarter
Kup kryptoRynkiHandelFuturesEarnWeb3CentrumWięcej
Handel
Spot
Kupuj i sprzedawaj krypto
Margin
Zwiększ swój kapitał i wydajność środków
Onchain
Korzyści Onchain bez wchodzenia na blockchain
Konwersja i handel blokowy
Konwertuj kryptowaluty jednym kliknięciem i bez opłat
Odkryj
Launchhub
Zdobądź przewagę na wczesnym etapie i zacznij wygrywać
Kopiuj
Kopiuj wybitnego tradera jednym kliknięciem
Boty
Prosty, szybki i niezawodny bot handlowy AI
Handel
Kontrakty futures zabezpieczone USDT
Kontrakty futures rozliczane w USDT
Kontrakty futures zabezpieczone USDC
Kontrakty futures rozliczane w USDC
Kontrakty futures zabezpieczone monetami
Kontrakty futures rozliczane w kryptowalutach
Odkryj
Przewodnik po kontraktach futures
Podróż po handlu kontraktami futures – od początkującego do zaawansowanego
Promocje kontraktów futures
Czekają na Ciebie wysokie nagrody
Bitget Earn
Najróżniejsze produkty do pomnażania Twoich aktywów
Simple Earn
Dokonuj wpłat i wypłat w dowolnej chwili, aby uzyskać elastyczne zyski przy zerowym ryzyku
On-chain Earn
Codzienne zyski bez ryzykowania kapitału
Strukturyzowane produkty Earn
Solidna innowacja finansowa pomagająca poruszać się po wahaniach rynkowych
VIP i Wealth Management
Usługi premium do inteligentnego zarządzania majątkiem
Pożyczki
Elastyczne pożyczanie z wysokim bezpieczeństwem środków
Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach?

Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach?

BlockBeatsBlockBeats2025/11/04 06:25
Pokaż oryginał
Przez:BlockBeats

Kluczowym problemem tego ataku jest sposób, w jaki protokół obsługuje transakcje o małej wartości.

Original Article Title: " Balancer $120M Hack Vulnerability Technical Analysis"
Original Source: ExVul Security


Wstęp


3 listopada 2025 roku protokół Balancer został zaatakowany na wielu łańcuchach, w tym na Arbitrum i Ethereum, co doprowadziło do utraty aktywów o wartości 120 milionów dolarów. Atak był głównie wynikiem podwójnej podatności związanej z utratą precyzji oraz manipulacją Invariant.


Infrastruktura Chainlink od dawna utrzymuje najwyższe standardy w przestrzeni Web3, co czyni ją naturalnym wyborem dla X Layer, który jest dedykowany dostarczaniu narzędzi klasy instytucjonalnej dla deweloperów.


Kluczowy problem w tym ataku leży w logice protokołu dotyczącej obsługi małych transakcji. Gdy użytkownicy dokonują wymian na niewielkie kwoty, protokół wywołuje funkcję _upscaleArray, która używa mulDown do zaokrąglania wartości w dół. Gdy saldo w transakcji oraz kwota wejściowa osiągają określoną granicę zaokrąglenia (np. zakres 8-9 wei), pojawia się zauważalny względny błąd precyzji.


Błąd ten jest propagowany do obliczania wartości Invariant D protokołu, powodując nienormalne zmniejszenie wartości D. Wahania wartości D bezpośrednio obniżają cenę Balancer Pool Token (BPT) w protokole Balancer. Haker wykorzystał tę zaniżoną cenę BPT poprzez zaplanowaną ścieżkę handlową do arbitrażu, co ostatecznie doprowadziło do ogromnej straty aktywów.


Wykorzystana transakcja:


https://etherscan.io/tx/0x6ed07db1a9fe5c0794d44cd36081d6a6df103fab868cdd75d581e3bd23bc9742


Transakcja transferu aktywów:


https://etherscan.io/tx/0xd155207261712c35fa3d472ed1e51bfcd816e616dd4f517fa5959836f5b48569


Analiza techniczna


Wektor ataku


Punktem wejścia ataku był kontrakt Balancer: Vault, a odpowiadającą mu funkcją wejściową była batchSwap, która wewnętrznie wywołuje onSwap do wymiany tokenów.


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 0


Z perspektywy parametrów funkcji i ograniczeń można uzyskać kilka informacji:


1. Atakujący musi wywołać tę funkcję przez Vault i nie może jej wywołać bezpośrednio.


2. Funkcja wewnętrznie wywołuje _scalingFactors(), aby uzyskać współczynnik skalowania do operacji skalowania.


3. Operacja skalowania jest skoncentrowana w _swapGivenIn lub _swapGivenOut.


Analiza wzorca ataku


Mechanizm obliczania ceny BPT


W modelu stable pool Balancer, cena BPT jest kluczowym punktem odniesienia, który określa, ile BPT otrzymuje użytkownik i ile aktywów przypada na każdy BPT.


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 1


W obliczeniach wymiany w puli:


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 2


Częścią pełniącą rolę kotwicy ceny BPT jest niezmienna wartość D, co oznacza, że kontrolowanie ceny BPT wymaga kontrolowania D. Przeanalizujmy dalej proces obliczania D:


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 3


W powyższym kodzie proces obliczania D zależy od tablicy zbilansowanych wartości po skalowaniu. Oznacza to, że potrzebna jest operacja zmieniająca precyzję tych sald, prowadząca do nieprawidłowego obliczenia D.


Główna przyczyna utraty precyzji


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 4


Operacja skalowania:


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 5


Jak pokazano powyżej, podczas przechodzenia przez _upscaleArray, jeśli saldo jest bardzo małe (np. 8-9 wei), zaokrąglenie w dół w mulDown skutkuje znaczną utratą precyzji.


Szczegółowy przebieg ataku


Faza 1: Dostosowanie do granicy zaokrąglenia


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 6


Faza 2: Wywołanie utraty precyzji (główna podatność)


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 7


Faza 3: Wykorzystanie zaniżonej ceny BPT dla zysku


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 8


Powyżej atakujący używa Batch Swap, aby wykonać wiele wymian w jednej transakcji:


1. Pierwsza wymiana: BPT → cbETH (dostosowanie salda)


2. Druga wymiana: wstETH (8) → cbETH (wywołanie utraty precyzji)


3. Trzecia wymiana: Aktywo bazowe → BPT (realizacja zysku)


Wszystkie te wymiany odbywają się w ramach tej samej transakcji batch swap, dzieląc ten sam stan salda, ale każda wymiana wywołuje _upscaleArray, aby zmodyfikować tablicę sald.


Brak mechanizmu callback


Główny proces jest inicjowany przez Vault. Jak to prowadzi do kumulowania się utraty precyzji? Odpowiedź tkwi w mechanizmie przekazywania tablicy sald.


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 9


Patrząc na powyższy kod, chociaż Vault tworzy nową tablicę currentBalances za każdym razem, gdy wywoływany jest onSwap, w Batch Swap:


1. Po pierwszej wymianie saldo jest aktualizowane (ale z powodu utraty precyzji zaktualizowana wartość może być niedokładna)


2. Druga wymiana kontynuuje obliczenia na podstawie wyniku pierwszej wymiany


3. Utrata precyzji się kumuluje, co ostatecznie powoduje znaczny spadek wartości invariant D


Kluczowy problem:


Analiza techniczna: Atak na Balancer o wartości 120 milionów dolarów – na czym polegała luka w zabezpieczeniach? image 10


Podsumowanie


Atak na Balancer można podsumować następująco:


1. Funkcja skalowania używa zaokrąglania w dół: _upscaleArray używa mulDown do skalowania, co skutkuje znaczną względną utratą precyzji, gdy saldo jest bardzo małe (np. 8-9 wei).


2. Obliczanie wartości invariant jest wrażliwe na precyzję: Obliczanie wartości invariant D opiera się na tablicy zbilansowanych wartości po skalowaniu, a utrata precyzji bezpośrednio wpływa na obliczanie D, powodując jego spadek.


3. Brak walidacji zmiany wartości invariant: Podczas procesu wymiany nie było walidacji, aby upewnić się, że zmiana wartości invariant D mieści się w rozsądnym zakresie, co pozwoliło atakującym wielokrotnie wykorzystywać utratę precyzji do zaniżania ceny BPT.


4. Kumulacja utraty precyzji w batch swapach: W ramach tego samego batch swap utrata precyzji z wielu wymian się kumuluje i ostatecznie prowadzi do znacznych strat finansowych.


Te dwa problemy — utrata precyzji i brak walidacji — w połączeniu z przemyślanym projektowaniem warunków brzegowych przez atakującego, doprowadziły do tej straty.


0

Zastrzeżenie: Treść tego artykułu odzwierciedla wyłącznie opinię autora i nie reprezentuje platformy w żadnym charakterze. Niniejszy artykuł nie ma służyć jako punkt odniesienia przy podejmowaniu decyzji inwestycyjnych.

PoolX: Stakuj, aby zarabiać
Nawet ponad 10% APR. Zarabiaj więcej, stakując więcej.
Stakuj teraz!

Może Ci się również spodobać

Dlaczego bitcoin może rosnąć dopiero po otwarciu rządu USA?

Rząd Stanów Zjednoczonych pozostaje zamknięty już 36 dzień, co doprowadziło do spadków na globalnych rynkach finansowych. Zamknięcie rządu uniemożliwiło Departamentowi Skarbu wypływ środków z ogólnego rachunku skarbowego (TGA), co wycofało płynność z rynku i wywołało kryzys płynności. Stopy procentowe na rynku międzybankowym gwałtownie wzrosły, a wskaźniki niewypłacalności kredytów komercyjnych i samochodowych rosną, co zwiększa ryzyko systemowe. Rynek jest podzielony co do przyszłych trendów: pesymiści uważają, że szok płynnościowy będzie się utrzymywał, podczas gdy optymiści przewidują uwolnienie płynności po zakończeniu zamknięcia rządu. Streszczenie wygenerowane przez Mars AI. To streszczenie zostało wygenerowane przez model Mars AI i jego dokładność oraz kompletność są nadal w fazie iteracyjnej aktualizacji.

MarsBit2025/11/06 05:03
Dlaczego bitcoin może rosnąć dopiero po otwarciu rządu USA?

Skarbce aktywów cyfrowych się załamują: utrata zaufania wywołuje wyprzedaż na rynku

Premia rynkowa dla firm DAT zniknęła, a wskaźniki mNAV zbliżają się do 1,0. Analitycy przypisują ostatni spadek na rynku kryptowalut częściowo masowej likwidacji przez te korporacyjne grupy skarbowe.

BeInCrypto2025/11/06 05:02
Skarbce aktywów cyfrowych się załamują: utrata zaufania wywołuje wyprzedaż na rynku

Jensen Huang przewiduje: Chiny prześcigną USA w wyścigu AI

Dyrektor generalny Nvidia, Jensen Huang, stwierdził bez ogródek, że dzięki przewadze w cenach energii elektrycznej i regulacjach, Chiny wygrają wyścig o AI, a zbyt ostrożne i konserwatywne regulacje krajów zachodnich, takich jak Wielka Brytania i Stany Zjednoczone, będą je hamować.

Jin102025/11/06 04:59

Dyrektor finansowy OpenAI: Sztuczna inteligencja nie potrzebuje ochłodzenia, entuzjazmu wciąż jest zdecydowanie za mało!

Podczas gdy Wall Street coraz bardziej obawia się pęknięcia bańki AI, dyrektor finansowa OpenAI apeluje o „więcej entuzjazmu”. Dodała również, że obecnie firma nie planuje wejścia na giełdę.

Jin102025/11/06 04:59