Residual Mematikan: Analisis Peristiwa $300.000 yang Dihasilkan oleh Penyimpanan Transien di Rantai
Pada 30 Maret 2025, sebuah sistem pemantauan keamanan on-chain mendeteksi bahwa proyek perdagangan leverage di jaringan Ethereum mengalami serangan, yang mengakibatkan kerugian aset lebih dari 300.000 dolar AS. Tim keamanan melakukan analisis mendalam terhadap peristiwa ini, dan kini membagikan hasilnya sebagai berikut:
Latar Belakang
Versi Solidity 0.8.24 memperkenalkan fitur penyimpanan transien berdasarkan EIP-1153. Ini adalah lokasi penyimpanan data baru yang memberikan cara penyimpanan sementara yang efektif selama transaksi dengan biaya rendah bagi pengembang. Karakteristik utama dari penyimpanan transien meliputi:
Biaya gas rendah: Operasi mengkonsumsi 100 gas tetap, jauh lebih rendah dibandingkan dengan operasi penyimpanan biasa.
Persistensi dalam transaksi: Data tetap valid selama periode transaksi.
Pembersihan otomatis: Setelah transaksi selesai, penyimpanan transien secara otomatis direset menjadi nol.
Analisis Peristiwa
Penyebab mendasar dari kejadian ini adalah bahwa nilai yang disimpan sementara menggunakan tstore dalam fungsi tidak dihapus setelah pemanggilan fungsi selesai, yang memungkinkan penyerang memanfaatkan sifat ini untuk membangun alamat jahat tertentu dan melewati pemeriksaan izin untuk mentransfer token.
Langkah-langkah serangan adalah sebagai berikut:
Penyerang membuat dua token jahat A dan B, dan membuat kolam likuiditas untuk dua token ini di suatu DEX.
Panggil fungsi initialize dari kontrak tujuan, menggunakan token A sebagai jaminan dan token B sebagai token utang untuk membuat pasar perdagangan dengan leverage.
Memanggil fungsi mint, menyimpan token utang B untuk mencetak token lever. Dalam proses ini, alamat kolam DEX dan jumlah yang dicetak disimpan secara sementara.
Buat kontrak jahat dengan alamat yang sama dengan jumlah yang dicetak di penyimpanan sementara.
Memanggil fungsi callback dari kontrak target melalui kontrak jahat, memanfaatkan nilai yang tersisa di penyimpanan transien untuk melewati otentikasi.
Terakhir, penyerang memperoleh keuntungan dengan menyerang kontrak dan langsung memanggil fungsi callback dari kontrak target, sehingga mentransfer token lainnya (seperti WBTC, WETH) keluar.
Arah Aliran Dana
Menurut data dari alat analisis on-chain, penyerang mencuri sekitar 300.000 dolar aset, termasuk:
17,814.8626 USDC
1.4085 WBTC
119.871 WETH
Aset-aset ini kemudian ditukarkan menjadi WETH, total 193.1428 WETH ditransfer ke suatu alat anonim. Sumber dana awal penyerang berasal dari 0.3 ETH yang ditransfer ke alat tersebut.
Saran Keamanan
Pihak proyek harus segera menggunakan tstore(key, 0) untuk membersihkan nilai yang ada di penyimpanan sementara setelah panggilan fungsi selesai berdasarkan logika bisnis.
Memperkuat audit kode kontrak dan pengujian keamanan, dengan perhatian khusus pada fitur bahasa baru yang diperkenalkan dan potensi risikonya.
Menerapkan mekanisme verifikasi ganda untuk menghindari kerugian aset besar akibat satu celah.
Melakukan evaluasi keamanan dan pemindaian kerentanan secara berkala, serta memperbaiki masalah potensial dengan tepat waktu.
Pertimbangkan untuk memperkenalkan sistem pemantauan keamanan untuk memantau perilaku transaksi yang abnormal secara real-time.
Peristiwa ini sekali lagi mengingatkan kita bahwa perlu berhati-hati saat mengadopsi teknologi baru, serta memahami sepenuhnya karakteristik dan potensi risikonya. Pada saat yang sama, praktik keamanan yang berkelanjutan dan audit berkala sangat penting untuk menjaga keamanan proyek on-chain.
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.
10 Suka
Hadiah
10
5
Bagikan
Komentar
0/400
MemeTokenGenius
· 07-22 16:28
30w dolar begitu saja hilang? Berapa banyak orang yang mati?
Lihat AsliBalas0
WhaleStalker
· 07-21 21:55
Satu lagi smart contract jatuh ke dalam jebakan.
Lihat AsliBalas0
GateUser-1a2ed0b9
· 07-19 16:59
Ada orang lain yang mengalami kegagalan. Siapa yang menyuruhmu untuk serakah?
Lihat AsliBalas0
ProxyCollector
· 07-19 16:55
lagi dipermainkan 30w, tsk tsk
Lihat AsliBalas0
BugBountyHunter
· 07-19 16:50
Kecepatan tangan menangkap bug MAX yang sebenarnya!
Sisa penyimpanan transien menyebabkan kerugian aset $300.000 di on-chain, pengembang harus waspada terhadap risiko fitur baru
Residual Mematikan: Analisis Peristiwa $300.000 yang Dihasilkan oleh Penyimpanan Transien di Rantai
Pada 30 Maret 2025, sebuah sistem pemantauan keamanan on-chain mendeteksi bahwa proyek perdagangan leverage di jaringan Ethereum mengalami serangan, yang mengakibatkan kerugian aset lebih dari 300.000 dolar AS. Tim keamanan melakukan analisis mendalam terhadap peristiwa ini, dan kini membagikan hasilnya sebagai berikut:
Latar Belakang
Versi Solidity 0.8.24 memperkenalkan fitur penyimpanan transien berdasarkan EIP-1153. Ini adalah lokasi penyimpanan data baru yang memberikan cara penyimpanan sementara yang efektif selama transaksi dengan biaya rendah bagi pengembang. Karakteristik utama dari penyimpanan transien meliputi:
Analisis Peristiwa
Penyebab mendasar dari kejadian ini adalah bahwa nilai yang disimpan sementara menggunakan tstore dalam fungsi tidak dihapus setelah pemanggilan fungsi selesai, yang memungkinkan penyerang memanfaatkan sifat ini untuk membangun alamat jahat tertentu dan melewati pemeriksaan izin untuk mentransfer token.
Langkah-langkah serangan adalah sebagai berikut:
Arah Aliran Dana
Menurut data dari alat analisis on-chain, penyerang mencuri sekitar 300.000 dolar aset, termasuk:
Aset-aset ini kemudian ditukarkan menjadi WETH, total 193.1428 WETH ditransfer ke suatu alat anonim. Sumber dana awal penyerang berasal dari 0.3 ETH yang ditransfer ke alat tersebut.
Saran Keamanan
Peristiwa ini sekali lagi mengingatkan kita bahwa perlu berhati-hati saat mengadopsi teknologi baru, serta memahami sepenuhnya karakteristik dan potensi risikonya. Pada saat yang sama, praktik keamanan yang berkelanjutan dan audit berkala sangat penting untuk menjaga keamanan proyek on-chain.