Artikel ini merupakan kiriman dari komunitas. Penulisnya adalah Zhangchi Qin, seorang auditor smart contract di sebuah perusahaan keamanan blockchain holistik bernama Salus Security.
Pandangan dalam artikel ini berasal dari kontributor/penulis dan tidak mencerminkan pandangan Binance Academy.
Ringkasan:
Proyek GameFi menghadapi berbagai tantangan keamanan yang dapat diklasifikasikan sebagai masalah on-chain dan off-chain.
Tantangan keamanan on-chain utamanya mencakup manajemen token ERC-20 dan NFT, keamanan cross-chain bridge, dan tata kelola organisasi otonom terdesentralisasi (DAO).
Di sisi lain, tantangan off-chain biasanya berkaitan dengan antarmuka web dan server.
Proyek GameFi harus memprioritaskan langkah-langkah keamanan, seperti audit yang ketat, pemindaian kerentanan, dan uji penetrasi, serta mengimplementasikan praktik operasional dan pengendalian bisnis terbaik.
Pendahuluan
GameFi menggabungkan teknologi blockchain dengan game untuk membuat platform terdesentralisasi yang memiliki aset game dan mata uang digital. GameFi biasanya memiliki model play-to-earn (P2E) yang memungkinkan pemain untuk mendapatkan reward kripto. GameFi juga memberikan kepemilikan sejati dan kontrol penuh kepada gamer terhadap aset dalam game.
GameFi meraih popularitas, tetapi menghadapi ancaman yang terus-menerus dan signifikan dari peretasan sepanjang siklus hidupnya. Beberapa proyek mungkin lebih mementingkan kecepatan daripada kualitas, sehingga kekurangan langkah keamanan yang kuat. Akhirnya, komunitas dan kreator berisiko mengalami kerugian yang besar.
Mengapa Keamanan GameFi Penting?
GameFi mengalami pertumbuhan yang signifikan pada tahun 2021 dengan model P2E yang menawarkan peluang finansial dalam game baru kepada pemain. Pada tahun 2022, proyek move-to-earn makin menyoroti potensi pertumbuhan GameFi. GameFi adalah sektor teratas kripto pada tahun 2022 yang meraih pangsa sekitar 9,5% dari total pendanaan industri dan pertumbuhan tahun-ke-tahun sebesar lebih dari 118%.
GameFi berbeda dari game pada umumnya, karena pengguna memiliki risiko yang lebih besar sehingga peretasan dapat menimbulkan kerugian yang besar bagi mereka. Dalam situasi yang ekstrem, pembobolan keamanan dapat mengakhiri sebuah proyek.
Misalnya, penyerang mengeksploitasi backdoor dalam node Remote Procedure Call (RPC/Panggilan Prosedur Jarak Jauh) untuk memperoleh tanda tangan pada proyek GameFi Axie Infinity pada tahun 2022, sehingga penyerang dapat melakukan penarikan ETH yang tidak sah dengan total hampir $600 juta. Segala kerentanan dalam proyek GameFi dapat menimbulkan kerugian yang besar bagi investor dan pemain, sehingga keamanan GameFi menjadi sangat penting.
Tantangan Keamanan On-Chain
Kerentanan token ERC-20
Token ERC-20 sering digunakan dalam proyek GameFi sebagai mata uang virtual untuk pembelian dalam game, mekanisme reward bagi pemain, dan alat pertukaran.
Pencetakan dan manajemen token ERC-20 yang tidak benar dapat menimbulkan risiko keamanan. Salah satu kerentanan umum yang disebut reentrancy (masuk ulang) dapat muncul selama proses pencetakan. Serangan dapat mengeksploitasi celah logika dalam kontrak untuk mengeksekusi fungsi tertentu berulang kali sehingga menyebabkan pencetakan token dalam jumlah tak terbatas.
Sebagai mata uang dalam game universal, kemampuan dan kuantitas token ERC-20 menentukan playability (kualitas permainan) dan keberlanjutan game. Oleh karena itu, proyek harus memastikan logika kode dan mengontrol total suplai token ERC-20 secara ketat.
Proyek GameFi P2E bernama DeFi Kingdoms diserang oleh pencetakan ERC-20 berbahaya pada tahun 2022. Beberapa pemain memanfaatkan kerentanan logikanya untuk mencetak token asli terkunci game, sehingga harga token anjlok setelahnya.
Kerentanan NFT
NFT digunakan terutama sebagai aset virtual dalam game pada proyek GameFi, termasuk perlengkapan, properti, dan suvenir. NFT menawarkan kepemilikan yang jelas kepada pemain serta dapat mempertahankan nilai yang stabil melalui pengendalian inflasi dan kelangkaan. Namun, penggunaan NFT yang tidak tepat dapat menimbulkan kerentanan keamanan.
Nilai NFT tercermin dalam kelangkaan perlengkapan atau properti. Pemain biasanya mencari NFT yang paling langka. Selama proses pencetakan NFT, informasi terkait blok seperti tanda waktu mungkin digunakan sebagai sumber acak yang lemah untuk menghasilkan NFT dengan berbagai tingkat kelangkaan. Seorang miner dapat memanipulasi tanda waktu blok hingga batas tertentu untuk mencetak NFT yang lebih langka dengan niat jahat.
Sumber keacakan yang paling andal pun, seperti Chainlink VRF (Verifiable Random Function), tidak menghilangkan semua risiko. Pengguna jahat dapat menarik operasi saat mencetak ID token NFT yang tidak diinginkan, lalu mengulangi prosesnya hingga NFT yang langka dicetak.
Saat pemain memperdagangkan dan mentransfer NFT, mungkin muncul potensi kerentanan smart contract. Misalnya, fungsi safeTransferFrom() digunakan untuk mentransfer NFT ERC-721. Ketika penerimanya merupakan alamat kontrak, fungsi onERC721Received() akan dipicu untuk callback (panggilan balik). Kemudian, terdapat potensi risiko serangan reentrancy yang memungkinkan penyerang untuk menentukan logika di dalam fungsi pada ERC721Received().
Terdapat juga risiko pada NFT ERC-1155. Fungsi safeTransferFrom() di dalamnya dapat memicu fungsi onERC1155Received() dan memungkinkan penyerang melakukan serangan reentrancy.
Kerentanan bridge
Cross-chain bridge digunakan dalam GameFi agar pengguna dapat menukar aset dalam game pada berbagai jaringan. Bridge ini juga penting untuk meningkatkan pengalaman dan likuiditas GameFi.
Salah satu risiko utama dalam cross-chain bridge dalam GameFi berasal dari inkonsistensi pada aset dalam game. Kontrak pada kedua sisi bridge harus menjamin bahwa aset dalam jumlah yang sama akan diterima dan masuk burning. Namun, karena celah dalam kontrak untuk memverifikasi dan memperhitungkan, penyerang dapat merusaknya untuk membuat aset dalam jumlah besar secara tiba-tiba.
Kerentanan tata kelola DAO
Kebanyakan proyek GameFi dikelola oleh DAO yang dapat menimbulkan risiko sentralisasi jika mayoritas token tata kelola dimiliki oleh segelintir pelaku besar. Smart contract yang menentukan aturan tata kelola DAO membuka celah untuk potensi perusakan lainnya, karena penyerang dapat mencari cara untuk mengakses perbendaharaan DAO.
Tantangan Keamanan Off-Chain
Sebagian besar proyek GameFi masih mengandalkan server off-chain tersentralisasi untuk operasi back-end, antarmuka web, atau aplikasi seluler. Server ini mewadahi informasi penting, termasuk data game dan akun pemilik, serta rentan terhadap serangan berbahaya, seperti penetrasi dan malware Trojan horse.
Dalam hal NFT, metadata berisi informasi deskriptif penting dan disimpan secara off-chain sebagai file JSON. Namun, kebanyakan proyek GameFi menyimpan metadata NFT pada server tersentralisasinya sendiri daripada menggunakan infrastruktur terdesentralisasi seperti IPFS. Hal ini meningkatkan kemungkinan perusakan metadata oleh pihak terkait atau penyerang yang dapat melanggar hak pemain.
Dalam konteks cross-chain bridge, penyerang dapat memperoleh tanda tangan atau kunci privat validator melalui penetrasi atau serangan phishing. Mereka dapat merusak infrastruktur dan mengeksekusi exploit untuk mengontrol aset dalam game.
Selama transmisi data, penyerang dapat membajak paket jaringan dan memasukkan kode berbahaya ke dalamnya. Dengan memodifikasi paket data, penyerang dapat mengimplementasikan pengisian ulang palsu dan menggunakan jumlah pembelian unit untuk mendapatkan lebih banyak item game.
Antarmuka front-end memberikan celah lain bagi penyerang untuk menyusupi sistem dengan niat jahat. Jika kebocoran informasi terjadi pada papan peringkat sebuah game, penyerang dapat mengirim informasi terkait alamat yang bocor ke server untuk memperoleh informasi sensitif yang bersangkutan.
Cara Meningkatkan Keamanan
Untuk melindungi proyek GameFi, diperlukan kehati-hatian di setiap tahap. Memastikan kode smart contract sempurna merupakan fondasi untuk sebuah proyek GameFi yang berhasil — tindakan ini mencakup penulisan kode berkualitas tinggi, pelaksanaan audit rutin, dan penggunaan verifikasi smart contract formal.
Mempertahankan keamanan server dan komponen infrastruktur lainnya juga penting. Uji penetrasi harus dilakukan untuk mendeteksi kemungkinan kerentanan. Dengan DApp dan sistem berbasis blockchain, uji penetrasi menghadirkan fitur Web3. Dengan begitu, tindakan pencegahan tertentu diperlukan untuk dompet digital dan protokol terdesentralisasi.
Proyek GameFi juga harus mengikuti praktik terbaik lainnya, termasuk proses runtime yang aman dan respons darurat lengkap. Praktik yang pertama mencakup pemantauan peristiwa keamanan yang terpicu, pengetatan keamanan lingkungan, dan perilisan program imbalan bug.
Di saat yang sama, proyek harus mengembangkan proses respons darurat lengkap yang mencakup aspek seperti pelepasan stop-loss, pelacakan serangan, dan analisis masalah.
Penutup
Kerentanan keamanan GameFi lebih dari yang telah disebutkan dalam artikel ini. Berbagai insiden telah menunjukkan bahwa proyek telah mengabaikan atau menyepelekan risiko keamanan. GameFi adalah bagian yang signifikan dari masa depan game. Oleh karena itu, proyek harus selalu memperhatikan masalah keamanan dan mengutamakan kepentingan komunitas.
Bacaan Lebih Lanjut
Penafian dan Peringatan Risiko: Konten ini disajikan kepada Anda dengan dasar “sebagaimana adanya” untuk informasi umum dan tujuan pendidikan saja tanpa pernyataan atau jaminan dalam bentuk apa pun. Konten ini tidak boleh dianggap sebagai nasihat keuangan, hukum, atau profesional lainnya ataupun dimaksudkan untuk menyarankan pembelian produk atau jasa tertentu. Anda sebaiknya mencari nasihat dari penasihat profesional yang sesuai. Jika artikel merupakan kontribusi dari kontributor pihak ketiga, harap diperhatikan bahwa pandangan yang dinyatakan berasal dari kontributor pihak ketiga dan tidak mencerminkan pandangan Binance Academy. Silakan baca penafian lengkap kami di sini untuk detail lebih lanjut. Harga aset digital dapat menjadi volatil. Nilai investasi Anda mungkin turun atau naik. Anda mungkin tidak mendapatkan kembali jumlah yang sudah diinvestasikan. Anda bertanggung jawab sepenuhnya terhadap keputusan investasi Anda. Binance Academy tidak bertanggung jawab terhadap kerugian yang mungkin Anda alami. Materi ini tidak boleh dianggap sebagai nasihat keuangan, hukum, atau profesional lainnya. Untuk informasi selengkapnya, baca Ketentuan Penggunaan dan Peringatan Risiko kami.