Euler Finance mengalami serangan Pinjaman Flash, mengalami kerugian hampir 2 juta dolar AS
Baru-baru ini, proyek Euler Finance mengalami serangan pinjaman flash akibat kerentanan kontrak pintar, yang mengakibatkan kerugian dana yang besar. Artikel ini akan menganalisis kejadian ini secara rinci.
Ringkasan Peristiwa
Pada 13 Maret 2023, fungsi donateToReserves dalam kontrak Etoken proyek Euler Finance tidak memiliki pemeriksaan likuiditas yang diperlukan, yang dimanfaatkan oleh penyerang untuk melakukan flash loan attack. Penyerang melakukan beberapa operasi dengan berbagai jenis koin, yang akhirnya menyebabkan kerugian sekitar 197 juta dolar AS, melibatkan 6 jenis token. Saat ini, dana yang dicuri masih terjebak di akun penyerang.
Analisis Proses Serangan
Penyerang pertama-tama meminjam 30 juta DAI dari platform pinjaman menggunakan Pinjaman Flash, dan menerapkan kontrak pinjaman serta kontrak likuidasi.
Melalui fungsi deposit, menyetor 20 juta DAI ke dalam kontrak Euler Protocol, dan mendapatkan 19,5 juta eDAI.
Memanfaatkan fitur leverage 10 kali dari Euler Protocol, meminjam 195,6 juta eDAI dan 200 juta dDAI.
Menggunakan sisa 10 juta DAI untuk membayar sebagian utang dan menghancurkan dDAI yang sesuai, kemudian meminjam kembali jumlah eDAI dan dDAI yang setara.
Memanggil fungsi donateToReserves untuk mendonasikan 100 juta eDAI, lalu melakukan likuidasi melalui fungsi liquidate, memperoleh 310 juta dDAI dan 250 juta eDAI.
Akhirnya, melalui fungsi withdraw, menarik 38,9 juta DAI, mengembalikan 300 ribu DAI Pinjaman Flash, dengan keuntungan bersih 8,87 juta DAI.
Analisis Penyebab Kerentanan
Setelah melakukan pemeriksaan kode, ditemukan bahwa masalah terletak pada fungsi donateToReserves. Jika dibandingkan dengan fungsi penting lainnya seperti mint, fungsi donateToReserves tidak memiliki langkah checkLiquidity yang penting.
fungsi checkLiquidity biasanya akan memanggil modul RiskManager untuk memeriksa pengguna, memastikan jumlah Etoken lebih besar dari jumlah Dtoken. Karena fungsi donateToReserves tidak melakukan pemeriksaan ini, penyerang dapat memanfaatkan beberapa fungsi dalam protokol untuk terlebih dahulu menempatkan dirinya dalam keadaan yang dapat dilikuidasi, dan kemudian menyelesaikan likuidasi untuk mendapatkan keuntungan.
Rekomendasi Keamanan
Mengenai serangan semacam ini, pihak proyek harus memperhatikan hal-hal berikut:
Audit keamanan menyeluruh harus dilakukan sebelum kontrak diluncurkan untuk memastikan keamanan kontrak.
Proyek pinjaman perlu memperhatikan dengan cermat pengembalian dana, deteksi likuiditas, dan tahapan penyelesaian utang yang krusial.
Semua fungsi yang mungkin mempengaruhi status aset pengguna harus menyertakan mekanisme pemeriksaan keamanan yang diperlukan.
Secara berkala melakukan review kode dan program bug bounty, untuk menemukan dan memperbaiki ancaman potensial dengan cepat.
Membangun mekanisme respons darurat, sehingga dapat segera mengambil langkah-langkah perbaikan begitu terjadi insiden serangan.
Seiring dengan perkembangan proyek DeFi yang terus berlanjut, masalah keamanan semakin penting. Pihak proyek harus selalu waspada, mengambil langkah-langkah perlindungan keamanan yang komprehensif, dan memberikan jaminan yang kuat untuk keamanan aset pengguna.
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
19 Suka
Hadiah
19
3
Bagikan
Komentar
0/400
BagHolderTillRetire
· 07-24 17:19
Main proyek keras apa pun, lebih baik ikut saya buy the dip BTC
Euler Finance mengalami serangan Pinjaman Flash senilai 200 juta USD, celah pada smart contract menjadi penyebab utama.
Euler Finance mengalami serangan Pinjaman Flash, mengalami kerugian hampir 2 juta dolar AS
Baru-baru ini, proyek Euler Finance mengalami serangan pinjaman flash akibat kerentanan kontrak pintar, yang mengakibatkan kerugian dana yang besar. Artikel ini akan menganalisis kejadian ini secara rinci.
Ringkasan Peristiwa
Pada 13 Maret 2023, fungsi donateToReserves dalam kontrak Etoken proyek Euler Finance tidak memiliki pemeriksaan likuiditas yang diperlukan, yang dimanfaatkan oleh penyerang untuk melakukan flash loan attack. Penyerang melakukan beberapa operasi dengan berbagai jenis koin, yang akhirnya menyebabkan kerugian sekitar 197 juta dolar AS, melibatkan 6 jenis token. Saat ini, dana yang dicuri masih terjebak di akun penyerang.
Analisis Proses Serangan
Penyerang pertama-tama meminjam 30 juta DAI dari platform pinjaman menggunakan Pinjaman Flash, dan menerapkan kontrak pinjaman serta kontrak likuidasi.
Melalui fungsi deposit, menyetor 20 juta DAI ke dalam kontrak Euler Protocol, dan mendapatkan 19,5 juta eDAI.
Analisis Penyebab Kerentanan
Setelah melakukan pemeriksaan kode, ditemukan bahwa masalah terletak pada fungsi donateToReserves. Jika dibandingkan dengan fungsi penting lainnya seperti mint, fungsi donateToReserves tidak memiliki langkah checkLiquidity yang penting.
fungsi checkLiquidity biasanya akan memanggil modul RiskManager untuk memeriksa pengguna, memastikan jumlah Etoken lebih besar dari jumlah Dtoken. Karena fungsi donateToReserves tidak melakukan pemeriksaan ini, penyerang dapat memanfaatkan beberapa fungsi dalam protokol untuk terlebih dahulu menempatkan dirinya dalam keadaan yang dapat dilikuidasi, dan kemudian menyelesaikan likuidasi untuk mendapatkan keuntungan.
Rekomendasi Keamanan
Mengenai serangan semacam ini, pihak proyek harus memperhatikan hal-hal berikut:
Audit keamanan menyeluruh harus dilakukan sebelum kontrak diluncurkan untuk memastikan keamanan kontrak.
Proyek pinjaman perlu memperhatikan dengan cermat pengembalian dana, deteksi likuiditas, dan tahapan penyelesaian utang yang krusial.
Semua fungsi yang mungkin mempengaruhi status aset pengguna harus menyertakan mekanisme pemeriksaan keamanan yang diperlukan.
Secara berkala melakukan review kode dan program bug bounty, untuk menemukan dan memperbaiki ancaman potensial dengan cepat.
Membangun mekanisme respons darurat, sehingga dapat segera mengambil langkah-langkah perbaikan begitu terjadi insiden serangan.
Seiring dengan perkembangan proyek DeFi yang terus berlanjut, masalah keamanan semakin penting. Pihak proyek harus selalu waspada, mengambil langkah-langkah perlindungan keamanan yang komprehensif, dan memberikan jaminan yang kuat untuk keamanan aset pengguna.