Blok zinciri güvenlik şirketi SlowMist, 31 Ağustos’ta yaptığı açıklamada, bir saldırganın Uniswap V3 slot0 spot fiyatını bozarak etkilenen Hypervisor akıllı sözleşmelerinin LP payı değerlerini hatalı hesaplamasına yol açtığını bildirdi. Şirket, saldırının temelinde TWAP veya oracle doğrulaması ile fiyat kayması koruması bulunmayan fonksiyonların yer aldığını tespit etti.
Saldırgan, Uniswap V3 likidite havuzunda büyük ölçekli işlemler gerçekleştirerek currentTick() ve getTotalAmounts() fonksiyonlarından dönen değerleri manipüle etti. SlowMist’e göre, saldırgan bu şişirilmiş pay değerleriyle Hypervisor sözleşmelerine defalarca para yatırıp çekerek sistemden değer elde etti.
Güvenlik şirketi, saldırganın cüzdan adresini 0xaea29218262dc6b0904ca077f6527c49dfd426d9 ve saldırıda kullanılan akıllı sözleşmeyi 0xb46655eb5b77de277063a75586d1883e951b6c54 olarak belirledi. İki savunmasız sözleşme ise 0x85cbed523459b7f6f81c11e710df969703a8a70c ve 0xc86b1e7fa86834cac1468937cdd53ba3ccbc1153 adreslerinde yer alırken, saldırının hedefindeki likidite havuzu 0xe8c2036068fc3b0161ee1def0e8d01df4eac0ac olarak tespit edildi.
Float Protocol’deki açık, Uniswap V3 spot fiyat manipülasyonuna dayanıyor
Saldırı, etkilenen sözleşmelerin fiyat bilgisini Uniswap V3 havuzundan nasıl aldığına odaklanıyor. SlowMist, büyük işlemlerle havuzun slot0 değerinin bozulduğunu ve bunun da havuzun güncel fiyatı ile tick bilgisini içerdiğini belirtti.
Havuz fiyatı değiştirildikten sonra, currentTick() ve getTotalAmounts() fonksiyonlarından dönen değerler de manipüle edildi. Hypervisor sözleşmeleri, bu değiştirilen verileri kullanarak LP payı değerlerini hesapladı ve saldırgan, paylar yanlış fiyatlanırken sözleşmelerle etkileşime girdi.
Flash loan’lar, büyük işlemler için gerekli geçici sermayeyi sağladı. Flash loan, varlıkların herhangi bir teminat gerekmeksizin, aynı blok zinciri işlemi içinde borç alınıp geri ödenmesini sağlayan bir mekanizma olarak biliniyor. Eğer geri ödeme gerçekleşmezse, işlem tamamen iptal ediliyor. Bu yöntem, arbitraj, teminat değişimi ve tasfiye gibi işlemler için büyük miktarda geçici likidite sunarken, aynı zamanda fiyatlama veya akıllı sözleşme mantığındaki açıkların istismar edilmesine de olanak tanıyor.
SlowMist’in analizine göre, Float Protocol’deki kaybın nedeni, sözleşmelerin manipüle edilebilen spot fiyatlara dayanması ve bu fiyatların zaman ağırlıklı ortalama fiyat (TWAP) veya başka bir oracle ile doğrulanmamasıydı. Ayrıca, kritik fonksiyonlarda fiyat kayması koruması da bulunmuyordu.
Saldırgan, şişirilmiş LP payı değerlerini defalarca kullandı
SlowMist, saldırganın Uniswap V3 havuz fiyatını değiştirdikten sonra işlemleri sürdürdüğünü belirtti. Slot0 değeri bozulduktan sonra, saldırgan şişirilmiş LP payı hesaplamalarını kullanarak etkilenen sözleşmelere tekrar tekrar para yatırıp çekti.
Bu işlem dizisi, sözleşmeler manipüle edilmiş havuz durumuna dayanırken değer çekilmesine olanak tanıdı. SlowMist, nihai kaybın yaklaşık 10,71 ETH, yani saldırı anında yaklaşık 28.000 dolar olduğunu açıkladı.
Benzer yöntemler, büyük geçici işlemlerle fiyatların veya havuz oranlarının bozulduğu ve başka bir sözleşmenin bu manipüle edilmiş değerleri kullandığı diğer merkeziyetsiz finans saldırılarında da görüldü.
Temmuz ayında, Allbridge Core, bir saldırganın Kamino’dan 1,12 milyon USDC’lik flash loan kullanarak gerçekleştirdiği ve PeckShield’in yaklaşık 1,65 milyon dolar kayba yol açtığını tahmin ettiği bir saldırı sonrası durduruldu.
Onchain Lens, Allbridge saldırganının bir stablecoin havuzunda oranı değiştirmek için hızlı USDC ve USDT takasları yaptığını, ardından flash loan’u aynı işlemde geri ödemeden önce bozulmuş orandan likidite çektiğini bildirdi.
Allbridge, olay sonrası bazı likidite havuzlarının geçici olarak dengesiz kaldığını ve olağandışı fiyatlamadan kâr eden kullanıcıların fonları iade etmelerini istediğini açıkladı. Protokol, varlıkların Solana’dan Ethereum’a taşındığı süreçte Core’u duraklattı.
Fiyat verileri DeFi saldırılarında hedef olmaya devam ediyor
Temmuz ayında yaşanan bir başka olay, manipüle edilmiş fiyat bilgisinin, zafiyet protokolün akıllı sözleşmelerinin dışında olsa bile kullanılabileceğini gösterdi.
Ostium, 23,75 milyon USDC’lik istismarın zincir dışı altyapıdaki bir açığa dayandığını açıkladı. Merkeziyetsiz alım satım protokolü, bir saldırganın sahte BTC/USD fiyat raporları sunarak OLP likidite kasasından fon çekilmesini sağladığını belirtti.
Ostium, akıllı sözleşmelerinin bu ihlalin kaynağı olmadığını vurguladı. Otomatik izleme sistemi saldırıyı tespit etti, 23 Temmuz’da işlemler yeniden başladı ve kullanıcı teminatlarının etkilenmediği bildirildi.
Float Protocol’de ise SlowMist’in analizine göre, zafiyet etkilenen Hypervisor sözleşmelerinin içinde yer alıyor ve manipüle edilen Uniswap V3 havuz verileri, LP payı değerlemesinde kullanılan hesaplamaları etkileyebiliyor.
Flash loan sermayesi, yıl içinde başka saldırılarda da öne çıktı. Temmuz ayında Swan Treasury’ye yönelik bir saldırıda, zincir dışı imzalayıcı anahtarının ele geçirilmesiyle bir saldırgan PancakeSwap üzerinden flash loan kullanarak STY token’larını büyük indirimle satın aldı.
Swan Treasury saldırısı yaklaşık 625.000 dolar kayba yol açtı. Güvenlik analizi, protokolün imzalayıcı anahtarının ele geçirilmesiyle sahte talep ve transfer imzalarının oluşturulduğunu, yaklaşık 687.000 STY’nin yaklaşık 100 kat indirimle satın alınıp STY/USDT havuzunda satıldığını ortaya koydu.
Flash loan, işlem için gerekli sermayeyi sağlarken, temel zafiyetin protokolün imza doğrulama mantığından değil, sızdırılan imzalayıcı anahtarından kaynaklandığı tespit edildi.
Float Protocol Sözleşmelerinde Fiyat Kontrollerinin Eksikliği
Float Protocol özelinde SlowMist, saldırı yolunun bir parçası olarak TWAP veya oracle doğrulamasının eksikliğine dikkat çekti.
TWAP, yalnızca anlık fiyat yerine belirli bir zaman diliminde toplanan gözlemleri kullanıyor. Likidite havuzlarındaki spot fiyatlar, yeterince büyük bir işlemle varlık oranı değiştirildiğinde hareket edebiliyor. SlowMist, Float Protocol saldırganının da bu mekanizmayı kullandığını belirtti.
Crypto.news’in flash loan rehberinde, fiyat manipülasyonu, geçici likiditenin savunmasız bir DeFi uygulamasına karşı kullanılabileceği yaygın yöntemlerden biri olarak tanımlanıyor. Raporda, flash loan’un saldırı için sermaye sağladığı, istismar edilebilir zafiyetin ise fiyat oracle’larında, yönetişim sistemlerinde veya sözleşme mantığında olabileceği vurgulanıyor.
Float Protocol’de SlowMist, büyük işlemlerle Uniswap V3 havuzunun slot0 değerinin bozulduğunu, bunun da currentTick() ve getTotalAmounts() fonksiyonlarını etkilediğini belirtti. Saldırgan, etkilenen Hypervisor sözleşmeleri şişirilmiş LP payı değerleriyle işlem yaparken defalarca para yatırıp çekti ve toplamda yaklaşık 10,71 ETH kayıp yaşandı.
Bu içerik hazırlanırken faydalanılan kaynaklar: crypto.news