Baru-baru ini, sebuah perusahaan keamanan menemukan dua celah serius dalam kontrak koleksi digital tertentu, yang dapat menyebabkan aset pengguna terkunci atau dana tim proyek tidak dapat ditarik.
Kerentanan pertama terletak pada fungsi pemrosesan pengembalian dana. Fungsi ini menggunakan loop untuk mengembalikan dana kepada semua pengguna, tetapi jika objek pengembalian dana adalah kontrak jahat, bisa menolak untuk menerima dan menyebabkan transaksi gagal, yang pada gilirannya mempengaruhi operasi pengembalian dana semua pengguna. Untungnya, kerentanan ini belum dimanfaatkan.
Untuk skenario pengembalian dana serupa, para ahli menyarankan untuk mengambil langkah-langkah keamanan berikut:
Pembatasan hanya akun pengguna biasa yang dapat berpartisipasi dalam proyek
Menggunakan token (seperti WETH) sebagai pengganti aset asli
Rancang mekanisme di mana pengguna dapat secara aktif meminta pengembalian dana, untuk menghindari pengembalian dana massal.
Kelemahan kedua adalah kesalahan kode. Dalam fungsi penarikan dana tim proyek, terdapat bug pada pemeriksaan kondisi. Pemeriksaan ini seharusnya membandingkan kemajuan pengembalian dana dan indeks penawaran, tetapi salah dibandingkan dengan total jumlah penawaran. Karena kemajuan pengembalian dana selalu lebih kecil dari total jumlah penawaran, dan tidak lagi meningkat, kondisi tersebut tidak pernah terpenuhi, sehingga dana tim proyek terkunci secara permanen dalam kontrak. Saat ini, lebih dari 34 juta dolar aset terkunci.
Kejadian ini sekali lagi menyoroti pentingnya keamanan proyek. Bahkan proyek terkenal pun dapat mengalami kesalahan dasar. Tim pengembang perlu menulis cukup kasus pengujian dan membangun kesadaran keamanan dasar. Meskipun di bidang keuangan terdesentralisasi, audit keamanan telah menjadi praktik umum, masih ada kekurangan dalam proyek koleksi digital, yang kali ini menyebabkan kerugian besar.
Peristiwa ini mengingatkan kita bahwa, tidak peduli seberapa besar skala proyek, kita harus memperhatikan keamanan kontrak pintar dan melakukan audit keamanan secara menyeluruh untuk mencegah terjadinya masalah serupa.
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.
12 Suka
Hadiah
12
8
Posting ulang
Bagikan
Komentar
0/400
AirdropBlackHole
· 22jam yang lalu
Ini adalah teknik paling kuat untuk memainkan orang sebagai suckers.
Lihat AsliBalas0
QuorumVoter
· 08-10 10:39
Insinyur senior langsung memuji profesionalisme
Lihat AsliBalas0
ShadowStaker
· 08-10 10:18
contoh klasik dari arsitektur tata kelola yang buruk smh...
Lihat AsliBalas0
MevTears
· 08-10 10:17
Kecelakaan kontrak sudah menjadi hal yang biasa.
Lihat AsliBalas0
CryptoPunster
· 08-10 10:17
Pengemis di antara pengemis aman, Semua bergantung pada nasib.
Lihat AsliBalas0
AirdropCollector
· 08-10 10:16
Cut Loss lari dengan baik, bahkan tidak bisa mengembalikan modal.
Lihat AsliBalas0
BearMarketSurvivor
· 08-10 10:10
Tidak bisa menulis kode, masih berani bermain smart contract!
Lihat AsliBalas0
HalfIsEmpty
· 08-10 10:02
Lagi-lagi, pemeriksaan yang tidak memadai merugikan diri sendiri dan orang lain.
Kerentanan kontrak koleksi digital mengakibatkan aset senilai 34 juta dolar AS terkunci, para ahli mengingatkan untuk memperhatikan audit keamanan.
Baru-baru ini, sebuah perusahaan keamanan menemukan dua celah serius dalam kontrak koleksi digital tertentu, yang dapat menyebabkan aset pengguna terkunci atau dana tim proyek tidak dapat ditarik.
Kerentanan pertama terletak pada fungsi pemrosesan pengembalian dana. Fungsi ini menggunakan loop untuk mengembalikan dana kepada semua pengguna, tetapi jika objek pengembalian dana adalah kontrak jahat, bisa menolak untuk menerima dan menyebabkan transaksi gagal, yang pada gilirannya mempengaruhi operasi pengembalian dana semua pengguna. Untungnya, kerentanan ini belum dimanfaatkan.
Untuk skenario pengembalian dana serupa, para ahli menyarankan untuk mengambil langkah-langkah keamanan berikut:
Kelemahan kedua adalah kesalahan kode. Dalam fungsi penarikan dana tim proyek, terdapat bug pada pemeriksaan kondisi. Pemeriksaan ini seharusnya membandingkan kemajuan pengembalian dana dan indeks penawaran, tetapi salah dibandingkan dengan total jumlah penawaran. Karena kemajuan pengembalian dana selalu lebih kecil dari total jumlah penawaran, dan tidak lagi meningkat, kondisi tersebut tidak pernah terpenuhi, sehingga dana tim proyek terkunci secara permanen dalam kontrak. Saat ini, lebih dari 34 juta dolar aset terkunci.
Kejadian ini sekali lagi menyoroti pentingnya keamanan proyek. Bahkan proyek terkenal pun dapat mengalami kesalahan dasar. Tim pengembang perlu menulis cukup kasus pengujian dan membangun kesadaran keamanan dasar. Meskipun di bidang keuangan terdesentralisasi, audit keamanan telah menjadi praktik umum, masih ada kekurangan dalam proyek koleksi digital, yang kali ini menyebabkan kerugian besar.
Peristiwa ini mengingatkan kita bahwa, tidak peduli seberapa besar skala proyek, kita harus memperhatikan keamanan kontrak pintar dan melakukan audit keamanan secara menyeluruh untuk mencegah terjadinya masalah serupa.