30 ribu dolar serangan on-chain: kerentanan penyimpanan sementara menyebabkan proyek Perdagangan Margin menderita

robot
Pembuatan abstrak sedang berlangsung

Residual Mematikan: Sebuah Insiden Serangan $300.000 di on-chain yang Berasal dari Penyimpanan Transien

Pada tanggal 30 Maret 2025, suatu sistem pemantauan keamanan mendeteksi bahwa proyek perdagangan leverage di jaringan Ethereum mengalami serangan, dengan kerugian aset lebih dari 300.000 dolar. Tim keamanan melakukan analisis mendalam terhadap kejadian ini, dan kini membagikan hasilnya sebagai berikut:

Latar Belakang

Versi Solidity 0.8.24 (dirilis Januari 2024) memperkenalkan fitur penyimpanan transien berbasis EIP-1153. Ini adalah lokasi penyimpanan data baru yang dirancang untuk memberikan cara penyimpanan sementara yang efisien biaya dan berlaku selama transaksi kepada pengembang.

Ciri utama dari penyimpanan transien meliputi:

  1. Biaya gas rendah: Biaya gas untuk operasi TSTORE dan TLOAD tetap sebesar 100.
  2. Persistensi dalam transaksi: Data tetap valid sepanjang periode transaksi.
  3. Pembersihan otomatis: Setelah transaksi selesai, penyimpanan sementara otomatis direset menjadi nol.

Dampak Fatal: Sebuah Perampokan $300.000 on-chain yang Ditingkatkan oleh Penyimpanan Transien

Sumber Serangan

Penyebab mendasar dari kejadian ini adalah bahwa nilai yang disimpan secara transien menggunakan tstore dalam fungsi tidak dihapus setelah pemanggilan fungsi selesai. Ini memungkinkan penyerang memanfaatkan fitur ini untuk membangun alamat jahat tertentu, melewati pemeriksaan izin untuk mengeluarkan token.

Residue Mematikan: Sebuah Perampokan $300.000 yang Dipicu oleh Penyimpanan Transien

Proses Serangan

  1. Penyerang membuat dua token jahat A dan B, menciptakan kolam untuk kedua token ini di DEX tertentu dan menyuntikkan likuiditas, di mana token A adalah kontrak serangan.

  2. Penyerang memanggil fungsi initialize dari kontrak Vault, menggunakan token A sebagai token jaminan dan token B sebagai token utang untuk membuat pasar perdagangan leverage APE-21.

  3. Penyerang memanggil fungsi mint dari kontrak Vault, menyetor token utang B untuk mencetak token leverage APE. Dalam proses ini, terdapat dua operasi penyimpanan transien: pertama menyimpan alamat kolam DEX tertentu, kemudian menyimpan jumlah token yang dicetak.

Dampak Fatal: Sebuah Perampokan $300.000 yang Dipicu oleh Penyimpanan Transien

  1. Penyerang membuat kontrak jahat melalui metode khusus, yang alamatnya sama dengan nilai penyimpanan transien kedua.

  2. Penyerang langsung memanggil fungsi callback dari kontrak Vault melalui kontrak jahat tersebut untuk mengeluarkan token. Karena nilai dalam penyimpanan sementara tidak dihapus, pemeriksaan identitas terhadap pemanggil dilalui dengan salah.

  3. Terakhir, penyerang memanggil fungsi callback dari kontrak Vault melalui serangan kontrak (token A), dan mengeluarkan token lain dari kontrak Vault (seperti WBTC, WETH) untuk mendapatkan keuntungan.

Dampak Mematikan: Sebuah Perampokan $300,000 on-chain yang Dipicu oleh Penyimpanan Transien

Dampak Fatal: Sebuah Perampokan 300.000 Dolar AS yang Dipicu oleh Penyimpanan Sementara

Residue Mematikan: Sebuah Perampokan $300.000 yang Dipicu oleh Penyimpanan Transien

Residual Memorable: Sebuah perampokan on-chain senilai 300.000 USD yang dipicu oleh penyimpanan transien

Residual Memorable: Sebuah perampokan on-chain senilai 300 ribu dolar yang dipicu oleh penyimpanan transien

Ketinggalan Fatal: Sebuah Perampokan 300.000 Dolar di On-Chain yang Dipicu oleh Penyimpanan Transien

Kejahatan on-chain senilai 300 ribu dolar yang dipicu oleh penyimpanan transien

Dampak Mematikan: Sebuah Perampokan $300.000 di on-chain yang Dipicu oleh Penyimpanan Transien

Dampak Fatal: Sebuah perampokan $300,000 on-chain yang dipicu oleh penyimpanan transien

Kejahatan on-chain senilai 300 ribu dolar yang disebabkan oleh penyimpanan transien

Residue Mematikan: Sebuah Perampokan $300.000 yang Dipicu oleh Penyimpanan Transien

Residue Fatal: Sebuah perampokan on-chain senilai $300.000 yang disebabkan oleh penyimpanan transien

Residual Fatal: Sebuah perampokan senilai 300 ribu dolar yang dipicu oleh penyimpanan transien on-chain

Residual Memorable: Sebuah perampokan 300.000 dolar AS di on-chain yang dipicu oleh penyimpanan transien

Analisis Aliran Dana

Menurut analisis alat analisis on-chain, penyerang mencuri sekitar 300.000 dolar aset, termasuk 17.814,8626 USDC, 1,4085 WBTC, dan 119,871 WETH. Aset-aset ini kemudian digabungkan dan dikonversi menjadi WETH, yang akhirnya ditransfer ke suatu protokol perdagangan privasi.

Sumber dana awal penyerang berasal dari 0,3 ETH yang ditransfer ke dalam protokol transaksi privasi tersebut.

Ringkasan dan Saran

Inti dari serangan ini adalah bahwa penyerang memanfaatkan karakteristik penyimpanan sementara yang mempertahankan nilai yang tidak berubah selama seluruh transaksi, sehingga dapat menghindari verifikasi izin dari fungsi callback untuk mendapatkan keuntungan. Untuk mencegah situasi serupa terjadi, disarankan kepada pihak proyek:

  1. Segera gunakan tstore(key, 0) untuk menghapus nilai di penyimpanan sementara setelah pemanggilan fungsi selesai berdasarkan logika bisnis.
  2. Memperkuat audit kode kontrak dan pengujian keamanan.
  3. Gunakan fitur baru yang diperkenalkan dengan hati-hati, dan pahami risiko potensialnya.
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
  • 6
  • Bagikan
Komentar
0/400
LayerZeroHerovip
· 08-02 23:27
Serangan pasti memiliki pintu belakang
Lihat AsliBalas0
Web3ProductManagervip
· 08-01 12:37
Serangan titik gesekan UX klasik
Lihat AsliBalas0
OnchainDetectivevip
· 08-01 04:23
Jika ada kesalahan dalam kode, semuanya akan gagal.
Lihat AsliBalas0
SchrodingersFOMOvip
· 08-01 04:18
Sebelum diuji, sudah siap-siap menghadapi bahaya
Lihat AsliBalas0
ProbablyNothingvip
· 08-01 04:18
Lambat laun akan ada celah
Lihat AsliBalas0
rug_connoisseurvip
· 08-01 04:11
Celah baru cepat dapat uang
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)