Jarvis Network mengalami serangan reentrancy Pinjaman Flash dengan kerugian 663.101 MATIC

robot
Pembuatan abstrak sedang berlangsung

Analisis Serangan Re-Entry Pinjaman Flash pada Proyek Jarvis Network

Pada 15 Januari 2023, proyek Jarvis_Network mengalami serangan, kehilangan 663.101 MATIC. Serangan ini terutama memanfaatkan Pinjaman Flash dan kerentanan re-enter, yang menyebabkan kehilangan dana proyek.

Analisis Kejadian Serangan Re-entrancy Pinjaman Flash Jarvis Network

Dengan menganalisis tumpukan panggilan transaksi, ditemukan bahwa penyerang melakukan serangan reentrancy dalam fungsi remove_liquidity. Fungsi ini bertanggung jawab untuk menghapus likuiditas dan mengembalikan token pengguna. Karena Polygon memiliki struktur yang mirip dengan rantai EVM, selama proses transfer MATIC, kontrak reentrancy terpicu.

Analisis Kejadian Serangan Re-entrance Pinjaman Flash Jarvis Network

Serangan reentrancy terjadi pada tahap pencarian harga. Penyerang memindahkan MATIC ke kontrak penyerang saat menghapus likuiditas. Dalam proses callback, penyerang terlebih dahulu memeriksa harga token tertentu. Karena pembaruan variabel self.D dalam kontrak tertunda setelah operasi transfer, hal ini menyebabkan kesalahan dalam pengambilan harga sebelumnya.

Analisis Insiden Serangan Re-entrancy Pinjaman Flash Jarvis Network

Proses eksekusi fungsi remove_liquidity adalah sebagai berikut:

  1. Menghancurkan token LP pengguna
  2. Mengirimkan dana staking kepada pengguna
  3. Perbarui variabel self.D

Analisis Kejadian Serangan Re-entrance Pinjaman Flash Jarvis Network

self.D variable digunakan untuk perhitungan harga, dan akan diperbarui saat menambah dan menghapus likuiditas. Penyerang memanfaatkan operasi dana besar, yang menyebabkan nilai self.D meningkat secara signifikan saat menambah likuiditas, sementara saat menghapusnya tidak diperbarui dengan cepat.

Analisis Kasus Serangan Re-entrancy Pinjaman Flash Jarvis Network

Meskipun fungsi remove_liquidity menggunakan dekorator @nonreentrant('lock') untuk mencegah reentrancy, penyerang berhasil mengatasi batasan ini melalui pinjaman lintas kontrak.

Analisis Insiden Serangan Re-entrance Pinjaman Flash Jarvis Network

Serangan kali ini mengungkapkan adanya celah keamanan dalam kode proyek. Untuk menghindari masalah serupa, disarankan agar pihak proyek mengambil langkah-langkah berikut:

  1. Melakukan audit keamanan yang ketat
  2. Tempatkan operasi modifikasi variabel sebelum pemanggilan eksternal
  3. Menggunakan berbagai sumber data untuk mendapatkan harga
  4. Mengikuti norma pengkodean "Pemeriksaan-Dampak-Interaksi" (Checks-Effects-Interactions)

Analisis Insiden Serangan Reentrancy Pinjaman Flash Jarvis Network

Dengan mengoptimalkan logika kode dan memperkuat langkah-langkah keamanan, dapat secara efektif meningkatkan keamanan dan stabilitas proyek, serta mencegah serangan serupa terjadi lagi.

Analisis Kasus Serangan Re-entrancy Pinjaman Flash Jarvis Network

Analisis Kejadian Serangan Re-entrancy Pinjaman Flash Jarvis Network

Analisis Insiden Serangan Re-entrance Pinjaman Flash Jarvis Network

Analisis Insiden Serangan Re-entrancy Pinjaman Flash Jarvis Network

Analisis Kejadian Serangan Reentrancy Pinjaman Flash Jarvis Network

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
  • 9
  • Bagikan
Komentar
0/400
MEV_Whisperervip
· 07-22 15:42
Panci ini hanya bisa dikembangkan.
Lihat AsliBalas0
AirdropCollectorvip
· 07-22 15:27
Sekali lihat sudah tidak ingin membeli.
Lihat AsliBalas0
GateUser-e87b21eevip
· 07-20 04:01
tim proyek防护不给力啊
Lihat AsliBalas0
StakeOrRegretvip
· 07-19 19:17
Satu proyek lagi telah disita...
Lihat AsliBalas0
ZenMinervip
· 07-19 19:09
Apa yang sedang dilakukan petugas keamanan ini?
Lihat AsliBalas0
LayerZeroEnjoyervip
· 07-19 19:09
Sigh, ini adalah reentrancy lagi, pola lama.
Lihat AsliBalas0
LiquidityOraclevip
· 07-19 19:05
Siapa yang menyebutkan bahwa menulis kode tidak serius
Lihat AsliBalas0
DecentralizedEldervip
· 07-19 19:01
Sekali lagi terkena hack, benar-benar tidak belajar dari pengalaman.
Lihat AsliBalas0
WhaleWatchervip
· 07-19 18:54
Sebuah proyek setengah jadi lainnya terkena pukulan berat
Lihat AsliBalas0
Lihat Lebih Banyak
  • 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)