OrionProtocol mengalami serangan reentrancy senilai 2,9 miliar, dana telah sebagian mengalir ke tumbler kripto

robot
Pembuatan abstrak sedang berlangsung

Analisis Insiden Serangan Reentrancy pada OrionProtocol

Pada 2 Februari 2023, OrionProtocol mengalami serangan re-entrance akibat kerentanan kontrak di jaringan Ethereum dan Binance Smart Chain, dengan total kerugian sekitar 2,9 juta dolar AS. Rincian kerugian mencakup 2.844.766 USDT di jaringan Ethereum dan 191.606 BUSD di Binance Smart Chain.

Analisis Proses Serangan

Penyerang pertama-tama menyebarkan kontrak Token kustom dan melakukan operasi transfer serta otorisasi terkait, untuk mempersiapkan serangan selanjutnya. Kemudian, penyerang meminjam melalui metode swap dari DEX tertentu, dan memanggil metode ExchangeWithAtomic.swapThroughOrionPool untuk pertukaran token. Jalur pertukaran diatur menjadi [USDC, Token penyerang, USDT].

Dalam proses penukaran, penyerang memanfaatkan fungsi callback dari kontrak Token kustom, dengan memanggil fungsi ExchangeWithAtomic.depositAsset secara berulang melalui metode Token.Transfer, yang mengakibatkan jumlah deposit terus terakumulasi. Akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis Serangan Reentrancy OrionProtocol beserta PoC

Arus Dana

Sumber dana awal penyerang berasal dari akun dompet panas di suatu platform perdagangan. Dari 1.651 ETH yang diperoleh dari serangan, 657,5 ETH masih tersisa di alamat dompet penyerang, sementara sisanya telah dipindahkan melalui layanan pencampuran.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Kerentanan

Masalah inti terletak pada fungsi doSwapThroughOrionPool. Fungsi ini memanggil fungsi _doSwapTokens, yang memperbarui variabel curBalance setelah melakukan transfer token. Penyerang menambahkan logika callback dalam fungsi transfer Token kustom, memanggil fungsi depositAsset, yang menyebabkan pembaruan curBalance menjadi salah. Penyerang kemudian memanggil fungsi withdraw untuk menarik dana setelah membayar kembali pinjaman kilat, menyelesaikan serangan.

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Reproduksi Serangan

Penyerang melakukan serangan dengan membuat kontrak token ERC20 kustom dan memanfaatkan fungsi pinjaman kilat dari DEX tertentu. Langkah-langkah utamanya meliputi:

  1. Membuat Token kustom dan membangun pasangan perdagangan dengan USDC, USDT
  2. Siapkan dana awal dan sediakan likuiditas
  3. Panggil fungsi depositAsset dan swapThroughOrionPool dari kontrak ExchangeWithAtomic
  4. Tambahkan logika callback dalam fungsi transfer Token kustom
  5. Akhirnya menarik dana keuntungan melalui fungsi withdraw

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Re-Entry OrionProtocol dengan PoC

Analisis Serangan Re-Entrant OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Saran Keamanan

Untuk menghindari serangan serupa, pihak proyek harus memperhatikan hal-hal berikut:

  1. Dalam desain kontrak, perlu mempertimbangkan risiko keamanan yang mungkin ditimbulkan oleh berbagai Token dan jalur pertukaran.
  2. Mengikuti norma pengkodean "periksa dulu, baru berlaku, lalu interaksi" (Checks-Effects-Interactions)
  3. Melaksanakan audit keamanan secara menyeluruh, dengan fokus khusus pada risiko serangan reentrancy.
  4. Pertimbangkan untuk menggunakan mekanisme keamanan seperti kunci reentrancy
  5. Melakukan pemindaian kerentanan kontrak dan evaluasi keamanan secara berkala

Peristiwa ini sekali lagi menekankan pentingnya keamanan kontrak pintar, pihak proyek harus terus memantau dan meningkatkan langkah-langkah keamanannya untuk melindungi aset pengguna dan menjaga reputasi platform.

TOKEN-5.22%
Lihat Asli
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.
  • Hadiah
  • 4
  • Bagikan
Komentar
0/400
AirdropF5Brovip
· 20jam yang lalu
jebakan uang tunai berjalan lagi, ada tujuan baru~
Lihat AsliBalas0
ProbablyNothingvip
· 20jam yang lalu
Apakah kontrak bisa lebih buruk lagi?
Lihat AsliBalas0
CountdownToBrokevip
· 20jam yang lalu
Satu lagi sudah tamat.
Lihat AsliBalas0
StablecoinAnxietyvip
· 20jam yang lalu
Aduh, datang lagi seorang Hacker ala wasit
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)