Dunia kripto versi menyelinap? Laporan insiden Slow Mist: Bagaimana hacker memanfaatkan celah kode untuk merampok 2,2 juta dolar Cetus

Baru-baru ini, kasus pencurian sebesar 220 juta USD dari protokol Cetus yang mengguncang dunia kripto, telah memicu diskusi di berbagai kalangan. Tim keamanan siber Slow Mist juga merilis laporan lengkap tentang seluruh kejadian tersebut, dan tim Slow Mist menyatakan bahwa serangan kali ini menunjukkan kekuatan kerentanan overflow matematis. Penyerang memilih parameter tertentu melalui perhitungan yang tepat, memanfaatkan cacat fungsi checked_shlw, untuk mendapatkan likuiditas senilai miliaran dengan biaya 1 Token. Ini adalah serangan matematis yang sangat canggih, dan disarankan agar para pengembang secara ketat memverifikasi semua kondisi batas fungsi matematis dalam pengembangan kontrak pintar.

Slow Mist: Inti dari peristiwa adalah kerentanan pada pemeriksaan overflow.

Tim Slow Mist menyatakan bahwa inti dari kejadian ini adalah penyerang yang membangun parameter dengan hati-hati, sehingga menyebabkan overflow tetapi dapat menghindari deteksi, dan akhirnya dapat menukarkan aset likuiditas besar dengan jumlah token yang sangat kecil. Ini konsisten dengan analisis sebelumnya dari @neeksec.

( Dari celah protokol hingga dialektika desentralisasi: penjelasan mendalam tentang peristiwa Cetus, apakah keamanan bahasa MOVE terguncang? )

Penyerang pertama-tama meminjam 10.020.000 haSUI melalui pinjaman kilat, dengan cepat menyebabkan harga di kolam haSUI/SUI anjlok 99,9%. Kemudian menambahkan likuiditas di rentang nilai tick 300000~300200, yang memiliki lebar rentang hanya 1%.

Selanjutnya adalah celah kunci dalam peristiwa tersebut, penyerang mengklaim telah menambahkan likuiditas yang sangat besar ( lebih dari 10 pangkat 27 ), tetapi karena kesalahan pengkodean pada fungsi checked_shlw, kontrak hanya mengenakan biaya 1 koin haSUI.

Rumus likuiditas yang dibutuhkan ( Sumber: Slow Mist Technology )

Analisis kabut lambat Alasan mengapa penyerang dapat menukar 1 token dengan likuiditas yang besar. Alasan inti untuk ini adalah bahwa checked_shlw dalam fungsi get_delta_a memiliki kerentanan pemeriksaan luapan. Penyerang mengambil keuntungan dari ini, menyebabkan sistem sangat miring dalam menghitung berapa banyak haSUI yang sebenarnya perlu ditambahkan. Karena luapan tidak terdeteksi, sistem salah menilai jumlah haSUI yang dibutuhkan, memungkinkan penyerang untuk menukar sejumlah besar aset likuid dengan token yang sangat sedikit.

Setiap nilai input yang kurang dari 0xffffffffffffffff << 192 akan melewati pemeriksaan overflow. Namun, ketika nilai-nilai ini digeser ke kiri sebanyak 64 bit, hasilnya akan melebihi rentang representasi u256, pada titik ini data bit tinggi akan terpotong, mengakibatkan hasil yang diperoleh jauh lebih kecil dari nilai teoritis. Dengan demikian, sistem akan meremehkan jumlah haSUI yang diperlukan dalam perhitungan selanjutnya.

Muncul kode masalah ( sumber: Slow Mist Technology )

Penyerang menghapus likuiditas dalam tiga tahap, total memperoleh 20.040.000 haSUI dan lebih dari 5.760.000 SUI. Akhirnya, penyerang mengembalikan pinjaman kilat, dengan keuntungan bersih akhir lebih dari 230 juta dolar.

Cetus telah memperbaiki kode

Setelah itu Cetus memperbaiki kode, termasuk:

Ubah 0xffffffffffffffff << 192 menjadi ambang yang benar 1 << 192.

Mengubah kondisi penilaian dari n > mask menjadi n >= mask.

Pastikan bahwa saat menggeser kiri 64 bit dapat menyebabkan overflow, dapat mendeteksi dan mengembalikan tanda overflow dengan benar.

Fungsi checked_shlw yang telah diperbaiki ( Sumber: Slow Mist Technology ) Tim Slow Mist: Pengembang harus secara ketat memvalidasi semua kondisi batas fungsi matematis.

Slow Mist menyatakan bahwa penyerang telah menyiapkan gas fee dua hari yang lalu, dan sebelum serangan, ada satu percobaan lagi, tetapi gagal. Saat ini, dana alamat Sui penyerang telah dibekukan, dan alamat EVM juga telah dimasukkan ke dalam daftar hitam oleh Slow Mist untuk dipantau.

Tim Slow Mist menyatakan bahwa serangan kali ini menunjukkan kekuatan dari celah matematis overflow. Penyerang memilih parameter tertentu melalui perhitungan yang akurat, memanfaatkan cacat dari fungsi checked_shlw, untuk mendapatkan likuiditas senilai miliaran dengan biaya 1 Token. Ini adalah serangan matematis yang sangat cermat, tim keamanan Slow Mist menyarankan pengembang untuk secara ketat memverifikasi semua kondisi batas fungsi matematis dalam pengembangan kontrak pintar.

Artikel ini dunia kripto versi tipu daya? Laporan kejadian Slow Mist: Bagaimana peretas memanfaatkan celah kode untuk merampok 2,2 juta dolar Cetus. Pertama kali muncul di berita rantai ABMedia.

Lihat Asli
Konten ini hanya untuk referensi, bukan ajakan atau tawaran. Tidak ada nasihat investasi, pajak, atau hukum yang diberikan. Lihat Penafian untuk pengungkapan risiko lebih lanjut.
  • Hadiah
  • 1
  • Bagikan
Komentar
0/400
GateUser-54dccd8dvip
· 05-27 09:00
Kuat HODL💎
Balas0
  • 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)