Autor: Doris@SlowMist Zespół ds. bezpieczeństwa
tło
Jak wynika z monitoringu systemu monitorowania bezpieczeństwa SlowMist MistEye, w dniu 10 czerwca 2024 r. zaatakowano platformę UwU Lend świadczącą usługi pożyczania aktywów cyfrowych w sieci EVM, w wyniku czego nastąpiła strata w wysokości około 19,3 mln USD. Zespół bezpieczeństwa SlowMist przeanalizował incydent i podzielił się wynikami w następujący sposób:
(https://x.com/SlowMist_Team/status/1800181916857155761)
Powiązana informacja
Adres atakującego:
0x841ddf093f5188989fa1524e7b893de64b421f47
Adres umowy, w której występuje luka:
0x9bc6333081266e55d88942e277fc809b485698b9
Transakcja ataku:
0xca1bbf3b320662c89232006f1ec6624b56242850f07e0f1dadbe4f69ba0d6ac3
0xb3f067618ce54bc26a960b660cfc28f9ea0315e2e9a1a855ede1508eb4017376
0x242a0fb4fde9de0dc2fd42e8db743cbc197ffa2bf6a036ba0bba303df296408b
Atakuj rdzeń
Istotą tego ataku jest to, że osoba atakująca może bezpośrednio manipulować wyrocznią cenową, przeprowadzając wymiany dużych kwot w puli CurveFinance, wpływając na cenę tokena sUSDE i wykorzystując zmanipulowaną cenę do ewakuacji innych aktywów z puli.
Proces ataku
1. Pożyczki flash pożyczają aktywa i obniżają cenę USDE: osoba atakująca najpierw pożycza dużą ilość aktywów za pośrednictwem pożyczek flash i wymienia część pożyczonych tokenów USDE na inne tokeny z puli Curve, które mogą mieć wpływ na cenę sUSDE.
2. Utwórz dużą liczbę pozycji pożyczkowych: w ramach obecnego spadku cen sUSDE pożyczaj dużą liczbę tokenów sUSDE, deponując inne tokeny bazowe.
3. Ponownie zmanipuluj wyrocznię, aby podnieść cenę sUSDE: Wykonując operację wymiany zwrotnej w poprzedniej puli Curve, cena sUSDE szybko wzrosła.
4. Likwidacja pozycji pasywów na dużą skalę: Ponieważ cena sUSDE gwałtownie wzrosła, napastnicy mogli zlikwidować wcześniej pożyczone pozycje w dużych ilościach, aby uzyskać uWETH.
5. Zdeponuj pozostałe tokeny sUSDE i pożycz inne tokeny bazowe w ramach umowy: osoba atakująca ponownie deponuje aktualnie drogie sUSDE, aby pożyczyć więcej tokenów aktywów bazowych w celu uzyskania zysku.
Nietrudno zauważyć, że atakujący osiągał zyski głównie poprzez wielokrotne manipulowanie ceną sUSDE, pożyczanie dużych kwot, gdy cena była niska, oraz likwidację i remortgage, gdy cena była wysoka. Śledzimy kontrakt Oracle sUSDePriceProviderBUniCatch, który oblicza cenę sUSDE:
Można zauważyć, że cenę sUSDE ustala się najpierw uzyskując różne ceny 11 tokenów USDE z puli USDE i puli UNI V3 na CurveFinance, a następnie sortując i obliczając medianę na podstawie tych cen.
W logice obliczeń ceny 5 USDE są uzyskiwane bezpośrednio za pomocą funkcji get_p w celu uzyskania ceny spot w puli Curve w czasie rzeczywistym. Umożliwia to atakującemu bezpośredni wpływ na średnią cenę poprzez wymianę dużych kwot w ramach jednej transakcji. Wyniki obliczeń liczbowych.
Analiza MistTrack
Według analizy narzędzia do śledzenia w łańcuchu MistTrack, osoba atakująca 0x841ddf093f5188989fa1524e7b893de64b421f47 zarobiła w wyniku tego ataku około 19,3 mln dolarów, w tym w walutach ETH, crvUSD, bLUSD i USDC. Tokeny ERC-20 zostały następnie wymienione na ETH.
Śledząc opłaty manipulacyjne adresu atakującego, ustalono, że początkowe środki na adres pochodziły z 0,98 ETH przesłanego z Tornado Cash, a następnie na adres wpłynęło również 5 środków z Tornado Cash.
Rozbudowując mapę transakcji ustalono, że atakujący przesłał 1292,98 ETH na adres 0x48d7c1dd4214b41eda3301bca434348f8d1c5eb6 Aktualne saldo adresu wynosi 1282,98 ETH; pozostałe 4000 ETH atakujący przesłał na adres 0x050c7e9c62bf9. 9184182 7f37745ddadb563feb70, aktualne saldo tego adresu wynosi 4010 ETH.
MistTrack zablokował odpowiedni adres i będzie nadal monitorować transfer skradzionych środków.
Podsumować
Istotą tego ataku jest to, że osoba atakująca wykorzystuje lukę w kompatybilności wyroczni cenowej, aby bezpośrednio uzyskać natychmiastową cenę spot i medianę obliczonej ceny w celu manipulowania ceną sUSDE, przeprowadzając w ten sposób udzielanie pożyczek i likwidację pod wpływem poważnych różnic cenowych w celu uzyskania nieoczekiwane zyski. Zespół ds. bezpieczeństwa SlowMist zaleca, aby zespół projektowy ulepszył możliwości antymanipulacyjne wyroczni cenowej i zaprojektował bezpieczniejszy mechanizm podawania cen wyroczni, aby uniknąć ponownego wystąpienia podobnych incydentów.