OrionProtocol mengalami serangan reentrancy dengan kerugian sebesar 2,9 juta dolar AS

robot
Pembuatan abstrak sedang berlangsung

Analisis Insiden Serangan Re-Entry pada OrionProtocol

Pada 2 Februari 2023 sore, kontrak OrionProtocol di Ethereum dan Binance Smart Chain mengalami serangan reentrancy akibat adanya celah, dengan kerugian sekitar 2,9 juta dolar AS, termasuk 2.844.766 USDT di rantai Ethereum dan 191.606 BUSD di rantai BSC.

Analisis Serangan Re-Entry OrionProtocol dengan PoC

Analisis Proses Serangan

Penyerang pertama-tama membuat sebuah kontrak Token khusus dan melakukan serangkaian persiapan. Selanjutnya, penyerang memanfaatkan fungsi swap dari DEX tertentu untuk meminjam, dan memanggil metode swapThroughOrionPool dari OrionProtocol untuk menukar token. Jalur penukaran mencakup alamat kontrak Token yang dibuat oleh penyerang, yang menyiapkan dasar untuk serangan callback selanjutnya.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Dalam proses penukaran, kontrak Token penyerang memicu callback melalui fungsi Transfer, yang secara berulang memanggil fungsi depositAsset dari OrionProtocol, mengakibatkan jumlah setoran terus bertambah. Akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Aliran Dana

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

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Analisis Kerentanan

Inti dari kerentanan terletak pada implementasi fungsi doSwapThroughOrionPool dan _doSwapTokens. Kontrak memperbarui variabel curBalance setelah operasi transfer, yang menciptakan kondisi untuk serangan reentrancy. Penyerang menambahkan logika callback dalam fungsi transfer Token kustom, yang menyebabkan curBalance diperbarui secara salah, akhirnya memungkinkan penyerang untuk menarik dana tambahan setelah mengembalikan pinjaman kilat.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Reproduksi Serangan

Peneliti menyediakan sebagian kode POC yang mensimulasikan proses serangan. Hasil pengujian menunjukkan bahwa penyerang berhasil memanfaatkan celah untuk mendapatkan USDT tambahan.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis serangan reentrancy OrionProtocol dengan PoC

Analisis Serangan Re-entrancy OrionProtocol dengan PoC

Saran Keamanan

  1. Dalam merancang kontrak, perlu mempertimbangkan kemungkinan situasi tak terduga yang dapat ditimbulkan oleh berbagai Token dan jalur pertukaran.
  2. Ikuti "penilaian terlebih dahulu, kemudian simpan dalam variabel, lalu lakukan panggilan eksternal" sebagai standar pengkodean (mode Checks-Effects-Interactions).
  3. Meningkatkan pembatasan dan pemeriksaan terhadap panggilan eksternal, terutama yang melibatkan operasi transfer dana.
  4. Lakukan audit keamanan secara berkala untuk mendeteksi dan memperbaiki kerentanan yang mungkin ada.
  5. Terapkan langkah-langkah keamanan tambahan seperti tanda tangan ganda untuk mencegah titik kegagalan tunggal.

Kejadian ini sekali lagi menyoroti tantangan keamanan yang dihadapi oleh proyek DeFi. Pengembang harus selalu waspada dan terus meningkatkan keamanan kontrak untuk melindungi aset pengguna dan reputasi proyek.

TOKEN-6.76%
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
  • 6
  • Bagikan
Komentar
0/400
SellLowExpertvip
· 1jam yang lalu
Sekali lagi reentry, koin ini sudah seharusnya runtuh.
Lihat AsliBalas0
WalletWhisperervip
· 07-31 16:43
Satu lagi proyek yang terjebak
Lihat AsliBalas0
SatoshiHeirvip
· 07-30 13:22
Perlu dicatat bahwa risiko reentrancy dari smart contract sudah dijelaskan di halaman pertama buku teks Solidity, tampaknya sekali lagi sebuah tim proyek tidak melakukan pekerjaan rumah...
Lihat AsliBalas0
SnapshotDayLaborervip
· 07-30 13:22
play people for suckers play people for suckers~
Lihat AsliBalas0
ChainComedianvip
· 07-30 12:59
lagi 290w, Dianggap Bodoh segera lari
Lihat AsliBalas0
ChainSauceMastervip
· 07-30 12:58
Wah, saya sudah kena Kupon Klip lagi.
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)