Jarvis Network mengalami serangan reentrancy Pinjaman Flash, kehilangan 66 ribu MATIC

robot
Pembuatan abstrak sedang berlangsung

Analisis Serangan Re-Entrant Pinjaman Flash pada Jarvis Network

Pada 15 Januari 2023, proyek Jarvis_Network mengalami insiden serangan besar yang mengakibatkan kerugian sebesar 663.101 MATIC. Serangan ini memanfaatkan kombinasi Pinjaman Flash dan serangan reentrancy, yang mengekspos kerentanan serius dalam kontrak proyek.

Analisis insiden serangan reentrancy Pinjaman Flash Jarvis Network

Penyerang dengan cerdik memanfaatkan celah dalam fungsi remove_liquidity. Fungsi ini mengembalikan token yang ditambahkan oleh pengguna saat menghapus likuiditas. Karena rantai Polygon kompatibel dengan EVM, ketika MATIC ditransfer ke kontrak, logika reentrancy kontrak akan terpicu.

Analisis Kejadian Serangan Reentrancy Pinjaman Flash Jarvis Network

Analisis menemukan bahwa kunci serangan terletak pada panggilan fungsi getUnderlyingPrice. Fungsi ini mengembalikan harga yang sangat berbeda sebelum dan sesudah reentrasi: sebelum reentrasi adalah 1002157321772769944, sedangkan setelah reentrasi mencapai 10091002696492234934, hampir selisih 10 kali.

Analisis Peristiwa Serangan Re-entrancy Pinjaman Flash Jarvis Network

Akar masalah terletak pada ketidakcocokan waktu pembaruan variabel self.D dalam kontrak. Urutan eksekusi fungsi remove_liquidity adalah: 1) menghancurkan token LP pengguna; 2) mengirimkan dana staking kepada pengguna; 3) memperbarui self.D. Penyerang melakukan reentrancy pada langkah kedua, memanfaatkan nilai self.D yang belum diperbarui untuk mendapatkan informasi harga yang salah, sehingga melakukan operasi pinjaman yang menguntungkan.

Analisis Kejadian Serangan Re-entrancy Pinjaman Flash Jarvis Network

Analisis Peristiwa Serangan Re-entrance Pinjaman Flash Jarvis Network

Meskipun fungsi remove_liquidity menggunakan dekorator @nonreentrant('lock') untuk mencegah reentrancy, langkah perlindungan ini tidak berhasil karena serangan melibatkan operasi lintas kontrak.

Analisis kejadian serangan reentrancy Pinjaman Flash Jarvis Network

Peristiwa ini menyoroti beberapa prinsip keamanan kunci:

  1. Modifikasi variabel harus diselesaikan sebelum pemanggilan eksternal, untuk mencegah ketidakkonsistenan status.
  2. Mekanisme pengambilan harga harus menggunakan metode multi-sumber data untuk meningkatkan keandalan.
  3. Logika kode harus mengikuti pola "Checks-Effects-Interactions"(, yaitu melakukan pemeriksaan kondisi terlebih dahulu, kemudian memodifikasi variabel status, dan terakhir melakukan panggilan eksternal.

![Analisis Kejadian Serangan Re-entrancy Pinjaman Flash Jarvis Network])https://img-cdn.gateio.im/webp-social/moments-a0f03c13dd2d37ba67ccf538fec62aa0.webp(

![Analisis Kasus Serangan Re-entrance Pinjaman Flash Jarvis Network])https://img-cdn.gateio.im/webp-social/moments-fcd66f4cc03bb8e822c9414526681442.webp(

![Jarvis Network Pinjaman Flash重入攻击事件分析])https://img-cdn.gateio.im/webp-social/moments-9b2de9b00c52d3ff96d5a361df65769a.webp(

![Analisis Insiden Serangan Re-entrancy Pinjaman Flash Jarvis Network])https://img-cdn.gateio.im/webp-social/moments-88f9283ee0923cff2a22405715721cd2.webp(

![Analisis Insiden Serangan Re-entrance Pinjaman Flash Jarvis Network])https://img-cdn.gateio.im/webp-social/moments-d41ac025ee561569cce3b941d7e07967.webp(

Serangan kali ini sekali lagi membuktikan bahwa audit keamanan kontrak pintar sangat penting. Pihak proyek harus lebih memperhatikan keamanan kontrak, memastikan bahwa kode telah melalui audit yang menyeluruh dan ketat untuk mencegah munculnya kerentanan serupa.

![Analisis Insiden Serangan Re-Entrancy Pinjaman Flash Jarvis Network])https://img-cdn.gateio.im/webp-social/moments-2c4474781d661306bc8c432dad3942c0.webp(

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
  • Komentar
  • Bagikan
Komentar
0/400
Tidak ada komentar
  • 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)