OrionProtocol mengalami serangan reentrancy dengan kerugian sebesar 2,9 juta USDT dan BUSD

Analisis Kejadian Serangan Re-entrance OrionProtocol

Pada 2 Februari 2023, OrionProtocol mengalami serangan reentrancy di jaringan Ethereum dan Binance Smart Chain, dengan total kerugian sekitar 2,9 juta dolar AS. Para penyerang memanfaatkan celah kontrak untuk mencuri 2.844.766 USDT di jaringan Ethereum dan 191.606 BUSD di Binance Smart Chain.

Proses Serangan

Penyerang pertama-tama menerapkan kontrak Token kustom, dan melakukan operasi transfer dan otorisasi yang relevan untuk mempersiapkan serangan berikutnya. Selanjutnya, penyerang meminjam melalui metode swap UNI-V2, dan memanggil metode swapThroughOrionPool dari kontrak ExchangeWithAtomic untuk menukar token.

Pengaturan jalur pertukaran diatur ke [USDC, Token Penyerang, USDT]. Kuncinya adalah, kontrak Token yang dibuat oleh penyerang mengandung fungsi callback. Selama proses pertukaran, penyerang memanfaatkan metode Token.Transfer untuk memanggil fungsi ExchangeWithAtomic.depositAsset, melakukan serangan reentrancy, yang menyebabkan jumlah setoran terus bertambah. Akhirnya, penyerang menyelesaikan keuntungan melalui operasi penarikan.

Analisis Serangan Reentrancy OrionProtocol dengan PoC

Arah Aliran Dana

Modal awal penyerang berasal dari akun dompet panas di suatu platform perdagangan. Dari 1.651 ETH yang didapat, 657,5 ETH masih tersisa di alamat dompet penyerang, sementara yang lainnya telah dipindahkan melalui layanan pencampur.

Analisis Serangan Re-Entrancy OrionProtocol dengan PoC

Analisis Kerentanan

Masalah inti terletak pada fungsi doSwapThroughOrionPool dari kontrak ExchangeWithAtomic. Fungsi ini melakukan operasi _doSwapTokens dengan terlebih dahulu melakukan transfer, kemudian memperbarui variabel curBalance. Penyerang menambahkan logika callback dalam fungsi transfer dari Token kustom, yang menyebabkan pembaruan curBalance menjadi salah. Ini memungkinkan penyerang untuk menarik dana yang berlebihan melalui fungsi withdraw setelah melunasi pinjaman kilat.

Analisis serangan reentrancy OrionProtocol dengan PoC

Analisis serangan Reentrancy OrionProtocol dengan PoC

Analisis Serangan Re-Entrancy 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 Re-entrancy OrionProtocol dengan PoC

Saran Pencegahan

  1. Desain kontrak harus mengikuti pola "Cek-Efek-Interaksi" (Checks-Effects-Interactions), pertama memperbarui variabel status, kemudian melakukan panggilan eksternal.

  2. Menerapkan kunci reentrant dan mekanisme pencegahan reentrancy lainnya.

  3. Untuk fungsi yang melibatkan pertukaran token, perlu mempertimbangkan secara menyeluruh berbagai jenis Token dan kemungkinan risiko keamanan yang ditimbulkan oleh jalur pertukaran.

  4. Memperkuat audit kode, dengan fokus khusus pada fungsi kunci yang melibatkan operasi dana.

  5. Pertimbangkan untuk menerapkan batas jumlah transaksi atau langkah-langkah keamanan tambahan seperti kunci waktu.

  6. Secara berkala melakukan evaluasi keamanan dan pengujian penetrasi untuk segera menemukan dan memperbaiki potensi kerentanan.

Kejadian ini sekali lagi menyoroti pentingnya keamanan kontrak pintar. Pihak proyek harus terus memperhatikan keamanan kontrak, mengambil langkah-langkah perlindungan ganda, dan meminimalkan risiko keamanan.

Lihat Asli
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Hadiah
  • 6
  • Bagikan
Komentar
0/400
NewPumpamentalsvip
· 07-11 03:48
Setiap hari diserang Rug Pull
Lihat AsliBalas0
HodlBelievervip
· 07-08 12:16
Risiko kontrak yang khas
Lihat AsliBalas0
0xSoullessvip
· 07-08 08:06
Reentrancy selalu menjadi titik nyeri
Lihat AsliBalas0
PaperHandSistervip
· 07-08 08:03
ketinggalan siswi hari ini menangis deras
Lihat AsliBalas0
AirdropHunterXMvip
· 07-08 08:02
Kecelakaan serangan reentrancy lagi
Lihat AsliBalas0
ChainWatchervip
· 07-08 07:55
Sekali lagi sebuah tempat yang diklip kupon
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)