Euler Finance, flaş kredi saldırısı ile karşılaştı, neredeyse 200 milyon dolar kaybetti
13 Mart'ta, Euler Finance projesi bir akıllı sözleşme açığı nedeniyle flaş kredi saldırısına uğradı ve yaklaşık 197 milyon dolarlık bir kayıp yaşandı. Saldırgan, projedeki donateToReserves fonksiyonunun likidite kontrolü eksikliğinden faydalanarak, farklı kripto paralarla birden fazla işlem gerçekleştirerek kar elde etti. Şu anda, çalınan fonlar hala saldırganın hesabında beklemekte.
Saldırı Süreci Analizi
Saldırgan öncelikle bir borç verme platformundan 30 milyon DAI tutarında Flaş Krediler aldı ve hem borç verme hem de tasfiye için iki sözleşme dağıttı.
20 milyon DAI'yi Euler Protocol sözleşmesine teminat olarak yatırın ve 19.5 milyon eDAI alın.
Euler Protocol'ün 10 kat kaldıraç özelliğini kullanarak 1.956 milyon eDAI ve 2 milyon dDAI ödünç alın.
Kalan 10 milyon DAI ile borcun bir kısmını geri ödeyin ve ilgili dDAI'yi yok edin, ardından eşit miktarda eDAI ve dDAI'yi tekrar borç alın.
donateToReserves fonksiyonu ile 1 milyar eDAI bağışlayarak, hemen ardından liquidate fonksiyonunu çağırarak 3.1 milyar dDAI ve 2.5 milyar eDAI elde ettim.
Son olarak 38.9 milyon DAI çekildi, 30 milyon Flaş Krediler geri ödendi, net kar yaklaşık 8.87 milyon DAI.
Açık Neden Analizi
Saldırının başarılı olmasının başlıca nedeni, donateToReserves fonksiyonunun gerekli likidite kontrollerinden yoksun olmasıdır. Mint gibi diğer kritik fonksiyonların aksine, donateToReserves fonksiyonu kullanıcı likidite doğrulaması için checkLiquidity'i çağırmamıştır. Bu durum, saldırganların belirli işlemler aracılığıyla hesaplarını tasfiye edilebilir bir duruma getirmesine ve ardından tasfiye ile kazanç elde etmesine olanak tanımıştır.
Normal koşullarda, checkLiquidity fonksiyonu RiskManager modülünü çağırarak kullanıcıların Etoken miktarının her zaman Dtoken miktarından büyük olmasını sağlar. Ancak, donateToReserves fonksiyonu bu kritik adımı atlayarak saldırılar için bir fırsat yaratmıştır.
Güvenlik Önerileri
Bu olay, akıllı sözleşmelerin güvenlik denetimlerinin önemini bir kez daha vurgulamaktadır. Proje sahipleri, lansmandan önce kapsamlı ve detaylı bir güvenlik kontrolü yapmalı, özellikle borç verme projeleri için aşağıdaki birkaç alana özellikle dikkat etmelidir:
Fonların geri ödeme mekanizmasının bütünlüğü
Likidite testinin kapsamlılığı
Borç tasfiye sürecinin güvenliği
Bu kritik aşamaların güvenliğinden emin olunmadığı sürece, benzer saldırıların meydana gelmesini etkili bir şekilde önlemek mümkün değildir. Web3 ekosisteminin sürekli gelişimiyle birlikte, akıllı sözleşmelerin güvenliği sektördeki dikkat çekici bir odak olmaya devam edecektir.
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
12 Likes
Reward
12
6
Repost
Share
Comment
0/400
LongTermDreamer
· 5h ago
Üç yıl sonra tekrar bakınca, yine değer tersine dönüşen bir hikaye. Anlayan anlar.
View OriginalReply0
GasBandit
· 5h ago
Yine akıllı sözleşmelerin suçu mu? Denetim nasıl yapılıyor?
Euler Finance, flaş kredi saldırısı sonucunda 1.97 milyar dolar kaybetti, sözleşme açığı ana sebep olarak belirlendi.
Euler Finance, flaş kredi saldırısı ile karşılaştı, neredeyse 200 milyon dolar kaybetti
13 Mart'ta, Euler Finance projesi bir akıllı sözleşme açığı nedeniyle flaş kredi saldırısına uğradı ve yaklaşık 197 milyon dolarlık bir kayıp yaşandı. Saldırgan, projedeki donateToReserves fonksiyonunun likidite kontrolü eksikliğinden faydalanarak, farklı kripto paralarla birden fazla işlem gerçekleştirerek kar elde etti. Şu anda, çalınan fonlar hala saldırganın hesabında beklemekte.
Saldırı Süreci Analizi
Saldırgan öncelikle bir borç verme platformundan 30 milyon DAI tutarında Flaş Krediler aldı ve hem borç verme hem de tasfiye için iki sözleşme dağıttı.
20 milyon DAI'yi Euler Protocol sözleşmesine teminat olarak yatırın ve 19.5 milyon eDAI alın.
Euler Protocol'ün 10 kat kaldıraç özelliğini kullanarak 1.956 milyon eDAI ve 2 milyon dDAI ödünç alın.
Kalan 10 milyon DAI ile borcun bir kısmını geri ödeyin ve ilgili dDAI'yi yok edin, ardından eşit miktarda eDAI ve dDAI'yi tekrar borç alın.
donateToReserves fonksiyonu ile 1 milyar eDAI bağışlayarak, hemen ardından liquidate fonksiyonunu çağırarak 3.1 milyar dDAI ve 2.5 milyar eDAI elde ettim.
Son olarak 38.9 milyon DAI çekildi, 30 milyon Flaş Krediler geri ödendi, net kar yaklaşık 8.87 milyon DAI.
Açık Neden Analizi
Saldırının başarılı olmasının başlıca nedeni, donateToReserves fonksiyonunun gerekli likidite kontrollerinden yoksun olmasıdır. Mint gibi diğer kritik fonksiyonların aksine, donateToReserves fonksiyonu kullanıcı likidite doğrulaması için checkLiquidity'i çağırmamıştır. Bu durum, saldırganların belirli işlemler aracılığıyla hesaplarını tasfiye edilebilir bir duruma getirmesine ve ardından tasfiye ile kazanç elde etmesine olanak tanımıştır.
Normal koşullarda, checkLiquidity fonksiyonu RiskManager modülünü çağırarak kullanıcıların Etoken miktarının her zaman Dtoken miktarından büyük olmasını sağlar. Ancak, donateToReserves fonksiyonu bu kritik adımı atlayarak saldırılar için bir fırsat yaratmıştır.
Güvenlik Önerileri
Bu olay, akıllı sözleşmelerin güvenlik denetimlerinin önemini bir kez daha vurgulamaktadır. Proje sahipleri, lansmandan önce kapsamlı ve detaylı bir güvenlik kontrolü yapmalı, özellikle borç verme projeleri için aşağıdaki birkaç alana özellikle dikkat etmelidir:
Bu kritik aşamaların güvenliğinden emin olunmadığı sürece, benzer saldırıların meydana gelmesini etkili bir şekilde önlemek mümkün değildir. Web3 ekosisteminin sürekli gelişimiyle birlikte, akıllı sözleşmelerin güvenliği sektördeki dikkat çekici bir odak olmaya devam edecektir.