OrionProtocol mengalami serangan reentrancy dengan kerugian aset enkripsi sebesar 2,9 juta dolar.

robot
Pembuatan abstrak sedang berlangsung

Analisis Insiden Serangan Re-entrancy pada OrionProtocol

Pada 2 Februari 2023 sore, proyek OrionProtocol di Ethereum dan Binance Smart Chain mengalami serangan reentrancy akibat kerentanan kontrak, dengan total kerugian sekitar 2,9 juta dolar AS dalam aset kripto, termasuk 2.844.766 USDT (Ethereum) dan 191.606 BUSD (BSC).

Analisis Proses Serangan

Penyerang pertama-tama menerapkan kontrak Token kustom dan melakukan operasi transfer dan otorisasi yang sesuai untuk mempersiapkan serangan selanjutnya. Selanjutnya, penyerang meminjam dana melalui fungsi swap dari suatu bursa terdesentralisasi dan memanggil metode OrionProtocol's ExchangeWithAtomic.swapThroughOrionPool untuk menukar token. Jalur pertukaran diatur menjadi USDC → Token Kustom Penyerang → USDT.

Dalam proses penukaran, penyerang memanfaatkan fungsi callback dalam kontrak Token kustom, secara berulang memanggil metode ExchangeWithAtomic.depositAsset, yang mengakibatkan jumlah setoran bertambah. Akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Arus Dana

Sumber dana awal penyerang berasal dari dompet panas di sebuah platform perdagangan besar. Dari 1.651 ETH yang didapat, 657,5 ETH masih tersisa di alamat dompet penyerang, sementara sisanya telah dipindahkan menggunakan alat pencampuran.

Analisis Serangan Re-entrancy OrionProtocol dengan PoC

Analisis Kerentanan

Masalah inti terletak pada fungsi doSwapThroughOrionPool dari kontrak ExchangeWithAtomic. Fungsi ini memperbarui variabel curBalance setelah melakukan transfer token, yang menciptakan kondisi untuk serangan reentrancy. Penyerang menambahkan logika callback dalam fungsi transfer Token kustom, yang menyebabkan pemanggilan ulang fungsi depositAsset, sehingga curBalance diperbarui secara tidak benar. Pada akhirnya, penyerang menarik dana berlebih melalui fungsi withdraw setelah melunasi pinjaman kilat.

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 Reentrancy 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 Pencegahan

  1. Pengembangan kontrak harus mengikuti pola "Cek-Dampak-Interaksi" (Checks-Effects-Interactions), menghindari pemanggilan eksternal sebelum pembaruan status.

  2. Dalam mengimplementasikan fungsi pertukaran token, perlu mempertimbangkan risiko keamanan yang mungkin ditimbulkan oleh berbagai jenis Token dan jalur pertukaran.

  3. Menambahkan mekanisme keamanan seperti kunci re-entry untuk mencegah serangan re-entry.

  4. Terapkan kontrol akses dan langkah-langkah pembatasan untuk operasi kunci.

  5. Melakukan audit keamanan menyeluruh, dengan fokus khusus pada fungsi inti yang melibatkan operasi dana.

Peristiwa ini sekali lagi menekankan pentingnya keamanan kontrak pintar. Pihak proyek harus terus memperhatikan keamanan kontrak, secara berkala melakukan audit kode dan perbaikan kerentanan, untuk memastikan keamanan aset pengguna. Pada saat yang sama, pengguna juga harus tetap waspada saat berpartisipasi dalam proyek baru, memperhatikan kondisi keamanan proyek dan laporan audit.

TOKEN-10.59%
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
ShamedApeSellervip
· 07-24 12:02
Sekali lagi sudah dingin
Lihat AsliBalas0
CoffeeOnChainvip
· 07-24 09:46
Tidak melakukan audit kontrak? Layak dicabut!
Lihat AsliBalas0
FlippedSignalvip
· 07-23 09:34
Sekali lagi terkena serangan
Lihat AsliBalas0
SchrodingersFOMOvip
· 07-23 09:26
Belum selesai trading koin, koinnya sudah meledak lagi?
Lihat AsliBalas0
ETHReserveBankvip
· 07-23 09:25
Lagi-lagi, pelatihan online untuk ahli 0day
Lihat AsliBalas0
FlatlineTradervip
· 07-23 09:15
Belum bisa mencegah serangan reentrancy? Sangat bodoh.
Lihat AsliBalas0
  • Sematkan
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)