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

robot
Pembuatan abstrak sedang berlangsung

Analisis Insiden Serangan Reentrancy pada OrionProtocol

Pada 2 Februari 2023 pukul 15:40:20 UTC, kontrak OrionProtocol di Ethereum dan Binance Smart Chain diserang dengan serangan reentrancy karena adanya celah. Penyerang meraih keuntungan sebesar 2.844.766 USDT di rantai Ethereum dan 191.606 BUSD di Binance Smart Chain, dengan total sekitar 2,9 juta dolar AS.

Analisis Proses Serangan

Penyerang pertama-tama menerapkan kontrak Token kustom dan melakukan operasi transfer dan otorisasi yang relevan, sebagai persiapan untuk serangan selanjutnya.

Kemudian, penyerang melakukan pinjaman melalui metode swap dari DEX tertentu, dan memanggil metode ExchangeWithAtomic.swapThroughOrionPool dari OrionProtocol untuk menukar token. Jalur penukaran diatur menjadi [USDC, Token Penyerang, USDT].

Selama proses penukaran, karena kontrak Token yang dibuat oleh penyerang mengandung logika callback, maka saat melakukan operasi Transfer akan memicu pemanggilan ulang metode ExchangeWithAtomic.depositAsset, yang menyebabkan jumlah setoran terakumulasi berkali-kali. Akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis Serangan Re-Entrancy 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 terjebak di alamat dompet penyerang, sementara sisanya telah dipindahkan melalui layanan pencampuran koin.

Analisis serangan reentrancy OrionProtocol beserta 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 memanfaatkan metode callback transfer dari Token kustom untuk memanggil metode depositAsset, yang menyebabkan curBalance diperbarui secara salah. Akhirnya, setelah melunasi pinjaman kilat, penyerang menarik dana berlebih melalui fungsi withdraw.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Analisis serangan reentrancy OrionProtocol beserta PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol disertai PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

OrionProtocol Analisis Serangan Re-Entry dengan PoC

Saran Keamanan

  1. Dalam desain kontrak, harus mempertimbangkan risiko keamanan yang mungkin ditimbulkan oleh berbagai Token dan jalur pertukaran.

  2. Mengikuti pola "Checks-Effects-Interactions" (Checks-Effects-Interactions) dalam menulis kode kontrak, yaitu pertama melakukan pemeriksaan kondisi, kemudian memperbarui variabel status, dan akhirnya melakukan panggilan eksternal.

  3. Implementasikan kunci reentrancy di fungsi kunci untuk mencegah serangan reentrancy.

  4. Untuk kontrak Token yang dipanggil dari luar, perlu dilakukan audit keamanan yang ketat dan manajemen whitelist.

  5. Melakukan audit keamanan kontrak secara berkala untuk mendeteksi dan memperbaiki potensi kerentanan dengan cepat.

Dengan mengambil langkah-langkah ini, risiko serangan terhadap kontrak pintar dapat secara efektif dikurangi, meningkatkan keselamatan keseluruhan proyek.

TOKEN-1.65%
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
  • 5
  • Bagikan
Komentar
0/400
DevChivevip
· 21jam yang lalu
Sekali lagi, mesin pemotong suckers telah mati.
Lihat AsliBalas0
GasWastervip
· 21jam yang lalu
Satu lagi mesin pemotong suckers sudah doomed.
Lihat AsliBalas0
SleepTradervip
· 21jam yang lalu
Sekali lagi memainkan orang-orang untuk para pemula.
Lihat AsliBalas0
BearMarketLightningvip
· 21jam yang lalu
又被Kupon Klip了
Lihat AsliBalas0
DoomCanistervip
· 21jam yang lalu
Ini adalah masalah lama dari smart contract 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)