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

robot
Pembuatan abstrak sedang berlangsung

Analisis Insiden Serangan Reentrancy pada OrionProtocol

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

Analisis Proses Serangan

Penyerang pertama-tama menyebarkan kontrak Token kustom dan melakukan persiapan yang diperlukan. Selanjutnya, penyerang meminjam dana melalui fungsi swap dari DEX tertentu, memanggil metode OrionProtocol ExchangeWithAtomic.swapThroughOrionPool untuk menukar token. Jalur pertukaran mencakup alamat kontrak Token yang dibuat oleh penyerang.

Dalam proses pertukaran, penyerang memanfaatkan fungsi callback dari kontrak Token yang disesuaikan untuk memanggil metode ExchangeWithAtomic.depositAsset secara berulang, menyebabkan jumlah setoran terus bertambah. Pada akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis serangan reentrancy OrionProtocol dengan PoC

Aliran Dana

Modal awal penyerang berasal dari 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 Re-entrancy OrionProtocol dengan PoC

Analisis Kerentanan

Masalah inti terletak pada fungsi doSwapThroughOrionPool dan _doSwapTokens dari kontrak ExchangeWithAtomic. Fungsi-fungsi ini memperbarui variabel curBalance setelah melakukan transfer token, melanggar pola "Checks-Effects-Interactions" ( Checks-Effects-Interactions ). Penyerang dapat melakukan serangan reentrancy dengan menambahkan logika callback dalam fungsi transfer Token kustom, yang menyebabkan pembaruan curBalance yang salah.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis serangan reentrancy OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Reproduksi Serangan

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

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Analisis Serangan Re-entrancy OrionProtocol dengan PoC

Analisis Serangan Reentrance OrionProtocol dengan PoC

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Analisis serangan reentrancy OrionProtocol dengan PoC

Saran Keamanan

  1. Pihak proyek harus mempertimbangkan risiko keamanan yang mungkin ditimbulkan oleh berbagai jenis Token dan jalur pertukaran saat mengimplementasikan fungsi pertukaran token.

  2. Ikuti dengan ketat standar pengkodean "periksa-berlaku-interaksi", pastikan pembaruan variabel status diselesaikan sebelum pemanggilan eksternal.

  3. Terapkan mekanisme keamanan seperti kunci reentrancy untuk mencegah serangan reentrancy.

  4. Secara berkala melakukan audit kode dan pengujian keamanan, untuk segera menemukan dan memperbaiki potensi kerentanan.

  5. Pertimbangkan untuk memperkenalkan mekanisme batasan, mengontrol jumlah maksimum per transaksi, mengurangi potensi kerugian.

Peristiwa ini sekali lagi mengingatkan kita bahwa dalam pengembangan kontrak pintar, kita harus selalu waspada dan mengutamakan keamanan. Hanya dengan terus meningkatkan langkah-langkah keamanan, kita dapat memberikan jaminan yang kuat untuk perkembangan sehat ekosistem Web3.

TOKEN4.49%
ETH5.49%
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
  • Posting ulang
  • Bagikan
Komentar
0/400
LowCapGemHuntervip
· 4jam yang lalu
tim proyek terlalu ceroboh
Lihat AsliBalas0
NeverPresentvip
· 08-07 03:18
Satu lagi celah yang membuat bingung
Lihat AsliBalas0
ProposalDetectivevip
· 08-07 03:17
Kerentanan kontrak merugikan orang.
Lihat AsliBalas0
GateUser-a606bf0cvip
· 08-07 03:14
Kontrak ini sangat berisiko
Lihat AsliBalas0
GateUser-c802f0e8vip
· 08-07 03:13
Asetnya berhasil pergi 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)