Alasannya adalah bahwa di pasar USDC baru, masalah pembulatan matematis dalam fungsi “bakar” diperkuat dan dieksploitasi, memungkinkan peretas mengekstrak USDC tambahan.
Disusun oleh Daniel Tan
Pada tanggal 3 Januari 2024 waktu Beijing, protokol Radiant di Arbitrum diserang oleh pinjaman kilat. Peretas melakukan 3 serangan pada protokol #Radiant, yang mengakibatkan kerugian total 1,902 ETH (senilai $4.5 juta). Penyebab utamanya adalah di pasar $USDC yang baru, masalah pembulatan matematis dalam fungsi “bakar” diperkuat dan dieksploitasi, sehingga memungkinkan peretas untuk menarik $USDC tambahan.
MetaTrust Labs melakukan penelitian dan analisis mendalam terhadap serangan ini, mengungkap bagaimana peretas mengeksploitasi kerentanan tersebut.
Radiant adalah protokol pinjaman non-penahanan terdesentralisasi yang berjalan di banyak rantai, termasuk Arbitrum, BNBChain, dan Ethereum.

Setelah serangan tersebut, nilai total yang dikunci dalam protokol Radiant masih $313 juta. Hal ini karena tim proyek dengan cepat menangguhkan protokol tersebut setelah diserang untuk mencegah kerugian lebih lanjut.


0xc5c4bbddec70edb58efba60c1f27bce6515a45ffcab4236026a5eeb3e877fc6d
0x2af556386c023f7ebe7c662fd5d1c6cc5ed7fba4723cbd75e00faaa98cd14243
0x1ce7e9a9e3b6dd3293c9067221ac3260858ce119ecb7ca860eac28b2474c7c9b
Ketiga transaksi serangan tersebut mengakibatkan total kerugian lebih dari 1,902 ETH senilai lebih dari 4,5 juta dolar AS. Pada saat penulisan, 1,902 $ETH masih disimpan di dompet peretas (0x826d5f4d8084980366f975e10db6c4cf1f9dde6d).
penyerang
0x826d5f4d8084980366f975e10db6c4cf1f9dde6d
Kontrak Serangan
0x39519c027b503f40867548fb0c890b11728faa8f
Kontrak sedang diserang
Bercahaya: Kelompok Peminjaman:
0xf4b1486dd74d07706052a33d31d7c0aafd0659e1
ruUSDCn:
0x3a2d44e354f2d88ef6da7a5a4646fd70182a7f55
Lima belas detik sebelum serangan, pihak proyek baru saja membuat pasar USDC baru di Arbitrum, dan peretas adalah orang pertama yang berinteraksi dengan pasar USDC baru.

Ambil transaksi serangan pertama 0x1ce7e9a9e3b6dd3293c9067221ac3260858ce119ecb7ca860eac28b2474c7c9b sebagai contoh.
Pinjam USD 3 juta USDC dari AAVE melalui fungsi pinjaman kilat;
Setorkan 2 juta $USDC ke Radiant Pool Saat ini, Indeks Likuiditasnya adalah 1e27.

Lakukan pinjaman kilat sebesar $2 juta di Radiant Lending Pool dan perbesar Indeks Likuiditas menjadi 1,8e36.
Ulangi langkah 3 sebanyak 151 kali untuk memperbesar liauidityIndex menjadi 2.7e38 yaitu 270000000000 kali nilai awal.

Pinjam 90,6 $ETH dari Radiant Pool, senilai $215K. Ini adalah keuntungan dari serangan ini;
Buat kontrak baru (0xd8b591);
Setujui USDC tak terbatas untuk kontrak baru, transfer 543K $USDC ke kontrak baru, dan gunakan kontrak baru untuk melakukan langkah-langkah berikut; transfer 543K $USDC ke kontrak baru, dan gunakan kontrak baru untuk melakukan langkah-langkah berikut ;
Setor 543K $USDC ke dalam kumpulan Radiant dan cetak 2 token wei. Karena jumlah yang Diskalakan adalah 2 token, 543600000002*1e27/271800000000999999999999998631966035920=2;




Setor 271K $USDC ke dalam kumpulan Radiant dan buat token dengan jumlah Berskala 1 karena 271800000001*1e27/271800000000999999999999998631966035920=1
Tarik 407K $USDC dari kumpulan Radiant dan hanya hancurkan token dengan jumlah Skala 1.
Ulangi langkah 10 dan 11 hingga 18 kali dan tiriskan $USDC dari pasar baru yang sebelumnya disetorkan peretas ke pasar baru.
Ubah 2 $WETH menjadi 4,73K $USDC dan 3,23K $USDC menjadi 1,36 $WETH.
Gunakan USD 3,5 juta USDC sebagai pokok dan USD 15.000 USDC sebagai biaya untuk membayar kembali pinjaman kilat AAVE.
Keuntungan $90 ETH.
Alasan mendasarnya adalah peretas adalah orang pertama yang berinteraksi dengan pasar USDC asli yang baru dibuat, mengeksploitasi fungsi pinjaman kilat protokol Radiant untuk memperkuat Indeks likuiditas, dan mengeksploitasi masalah pembulatan matematis untuk mencuri aset dari kumpulan pinjaman.

