Pada 13 Maret 2023, protokol DeFi Euler Finance dieksploitasi dengan kerugian ~$197 juta dalam beberapa Tx. Sekitar 34.224.863$USDC , 849$WBTC , 85.818$stETH dan 8.877.507$BERI dicuri.
Tentang Euler Finance
Kembali pada bulan Juni 2020, Euler memenangkan tempat pertama dalam kompetisi online Spark College Hackathon yang diselenggarakan oleh Encode Club.
Euler pada awalnya adalah protokol peminjaman yang dibangun di atas Aave, Compound, dan protokol peminjaman lainnya yang memungkinkan pengguna membuat pasar peminjaman mereka sendiri untuk Token ERC-20 apa pun, sambil juga menyediakan model tarif Reaktif untuk mengurangi intervensi tata kelola.
Pada Agustus 2021, Euler menerima $8 juta dalam pendanaan Seri A yang dipimpin oleh Paradigm. Di situs resminya, Euler juga menunjukkan bahwa mereka memiliki enam auditor, dan tidak satupun dari mereka menemukan kerentanan kritis.
Info Terkait
Alamat proyek:
0x27182842e098f60e3d576794a5bffb0777e025d3
Serang Tks:
https://etherscan.io/tx/0xc310a0affe2169d1f6feec1c63dbc7f7c62a887fa48795d327d4d2da2d6b111d
https://etherscan.io/tx/0x47ac3527d02e6b9631c77fad1cdee7bfa77a8a7bfd4880dccbda5146ace4088f
https://etherscan.io/tx/0x71a908be0bef6174bccc3d493becdfd28395d78898e355d451cb52f7bac38617
https://etherscan.io/tx/0x62bd3d31a7b75c098ccf28bc4d4af8c4a191b4b9e451fab4232258079e8b18c4
https://etherscan.io/tx/0x465a6780145f1efe3ab52f94c006065575712d2003d83d85481f3d110ed131d9
https://etherscan.io/tx/0x3097830e9921e4063d334acb82f6a79374f76f0b1a8f857e89b89bc58df1f311
Penyerang:
0x5f259d0b76665c337c6104145894f4d1d2758b8c
0xb2698c2d99ad2c302a95a8db26b08d17a77cedd4
Kami mengambil satu tx untuk dianalisis.
1. Peretas pertama kali meminjamkan $30 juta$BERI dan menciptakan dua kontrak serangan. 0x583 untuk pinjaman dan 0xA03 untuk likuidasi. Kemudian dia menyetor $300 juta ke kontrak pinjaman.
2. Penyerang menyetor $20 juta untuk mendapatkan 19.568.124 eDAI.
3. Kemudian penyerang memanggil fungsi mint untuk menggunakan 19.568.124 eDAI untuk meminjam 195.681.243 eDAI (aset jaminan) dan 200.000.000 dDAI (aset hutang), sehingga meningkatkan saldo eDAI menjadi sepuluh kali lipat.
4. Penyerang kemudian menyetor sisa 10 juta DAI melalui fungsi pelunasan, meminjam 195.681.243 eDAI dan 200.000.000 dDAI lagi.
5. Penyerang kemudian melakukan operasi donateToReserves untuk membakar 100 juta eDAI, membuat eDAI < dDAI, yang mencapai kondisi likuidasi.
6. Kontrak likuidasi melikuidasi kontrak pinjaman.
7. Penyerang akhirnya menarik semua 38,9 juta DAI dari kontrak dan mengembalikan 30 juta DAI ke AAVE, menghasilkan keuntungan ~8,9 juta DAI.
Analisis Kerentanan
Fungsi donateToReserves kontrak Etoken gagal memeriksa jumlah sebenarnya token yang dipegang oleh pengguna dan status kesehatan buku besar pengguna setelah donasi, sehingga penyerang dapat menyumbangkan 100 juta eDAI (diperoleh melalui leverage, dengan pengguna sebenarnya hanya menyetor 30 juta DAI). Setelah donasi, status kesehatan buku besar pengguna memenuhi syarat untuk dilikuidasi, yang menyebabkan kontrak pinjaman dilikuidasi. Kontrak peminjaman mentransfer eDAI dan dDAI ke kontrak likuidasi, yang kemudian dilikuidasi. Karena jumlah piutang tak tertagih yang luar biasa besar, kontrak likuidasi akan dilikuidasi dengan diskon maksimum, menghasilkan 310,93 juta eDAI dan 259,31 juta dDAI setelah likuidasi. Pada titik ini, pengguna telah pulih kesehatannya dan dapat menarik dana, dan jumlah yang dapat ditarik adalah selisih antara eDAI dan dDAI. Namun, karena hanya ada 38,9 juta DAI di kumpulan, hanya jumlah tersebut yang dapat ditarik.
Secara keseluruhan, akar penyebab serangan tersebut adalah kontrak Etoken tidak memeriksa dengan benar jumlah token yang sebenarnya dipegang oleh pengguna dan status kesehatan buku besar pengguna setelah donasi, yang memberikan peluang bagi penyerang.
Aliran Dana
Pada waktu pers, 80.080,98 ETH disimpan di alamat 0xb2698c2d99ad2c302a95a8db26b08d17a77cedd4.
88.651,70 ETH dan 43063733,27 DAI disimpan di alamat 0xb66cd966670d962C227B3EABA30a872DbFb995db.
Hanya sejumlah kecil (100 ETH) yang ditransfer ke Tornado Cash.
Coba Beosin KYT di kyt.beosin.com.
Protokol apa saja yang terpengaruh oleh Euler?
Menurut 0xScope, Angle Protocol memiliki $17,6 juta USDC di Euler; Idle DAO memiliki $4,6 juta USDC di Euler; SwissBorg memiliki 6.357 Ether dan 1,7 juta USDT yang disimpan di Euler. Setelah serangan itu, SwissBorg dengan cepat meminjam 4.752 cbETH untuk mengurangi kerugian, tetapi masih memiliki aset sekitar $4,26 juta di Euler; alamat paus 0x28a5 dan czsamsun.eth masing-masing memiliki $4 juta dan $2,74 juta dalam protokol.
Agregator hasil Yearn men-tweet bahwa meskipun tidak secara langsung terkena serangan Euler, beberapa brankas Yearn secara tidak langsung terkena peretasan.
Idle Finance men-tweet bahwa itu juga terpengaruh.
Rekomendasi
1. Dalam mengembangkan kontrak cerdas, perhatikan apakah penambahan fungsionalitas selanjutnya berdampak pada logika sebelumnya.
2. Hati-hati untuk memeriksa aset.