Portalkripto.com- Sejumlah protokol keuangan terdesentralisasi (DeFi) mengalami peretasan yang mengakibatkan dana senilai $ 24 juta atau setara dengan Rp 362 milyar tercuri. Serangan yang dilakukan pada hari Minggu, 30 Juli 2023 ini, memanfaatkan celah dalam liquidity pool Curve, sebuah platform automated market maker.
Celah serangan ini diduga berasal dari Vyper, bahasa pemrograman alternatif pihak ketiga untuk kontrak pintar Ethereum. Curve menyatakan di Twitter bahwa liquidity pool lain yang tidak menggunakan bahasa tersebut tidak terdampak.Â
A number of stablepools (alETH/msETH/pETH) using Vyper 0.2.15 have been exploited as a result of a malfunctioning reentrancy lock. We are assessing the situation and will update the community as things develop.
Other pools are safe. https://t.co/eWy2d3cDDj
— Curve Finance (@CurveFinance) July 30, 2023
liquidity pool adalah kontrak pintar yang menyimpan token, dan tempat yang menyediakan likuiditas untuk pasar kripto tanpa bergantung pada perantara keuangan. Namun, seperti yang dipelajari beberapa proyek pada hari Minggu, satu kelemahan kecil bisa menyebabkan kerugian besar.
Salah satu yang mengalami kerugian ialah protokol peminjaman NFT JPEG’d. Platform NFT ini dilaporkan kehilangan aset kripto senilai $11 juta. JPEG’d adalah salah satu yang pertama kali mengidentifikasi masalah pada kolamnya di Curve.
“Pada hari Minggu terjadi serangan,” kata JPEG’d di Twitter. “Kami telah menyelidiki masalah sejak kami menyadari dan… masalah ini tampaknya terkait dengan kolam Curve.”
JPEG’d memungkinkan pengguna untuk memposting NFT sebagai jaminan untuk pinjaman. Dalam hal total nilai yang di-lock (TVL) ke dalam JPEG’d, protokol tersebut memiliki nilai sekitar $32 juta. JPEG’d mengatakan bahwa kode yang bertanggung jawab atas keamanan NFT dan dana kas tidak terpengaruh.
Latihan Trading Crypto Tanpa Modal di Upsidebit. Unduh Sekarang Aplikasinya!
Harga token governance protokol JPEG langsung turun 23% setelah peretasan tersebut. Pada hari Minggu, harga token tersebut mencapai nilai terendah sepanjang masa sebesar $0.000347.Â
Pada awalnya, Curve menggambarkan kerentanannya sebagai serangan “re-entrancy” biasa yang bersifat “read-only” yang seharusnya dapat dihindari. Serangan re-entrancy terjadi ketika kontrak pintar berinteraksi dengan kontrak lain, yang pada gilirannya memanggil kembali ke kontrak pertama sebelum sepenuhnya dieksekusi.
Kerentanan re-entrancy memungkinkan penyerang untuk memasukkan beberapa panggilan ke dalam satu fungsi dan memperdaya kontrak pintar untuk menghitung saldo yang tidak tepat. Salah satu contoh paling terkenal adalah peretasan DAO senilai $55 juta pada tahun 2016 di Ethereum.
Namun, kemudian Curve menarik pernyataan awalnya yang telah dihapus dan mengakui bahwa mereka keliru. Mereka mengatakan bahwa tidak ada kesalahan dari proyek-proyek yang mengintegrasikan bahasa Vyper atau bahkan pengguna bahasa Vyper.
Serangan re-entrancy merupakan salah satu vektor umum yang sering digunakan oleh penyerang untuk mencuri aset dari protokol. Vektor ini dapat dihindari dengan desain dan pengembangan yang tepat.
Sejumlah Protokl Mengalami Kerugian Besar
Masalah ini tidak hanya terjadi pada protokol JPEG’d. Tidak lama setelah protokol peminjaman NFT tersebut diserang, Alchemix dan Metronome DAO masing-masing kehilangan $13,6 juta dan $1,6 juta dalam serangan serupa.Â
Alchemix mengakui di Twitter bahwa mereka sedang bekerja untuk memperbaiki masalah pada kolam likuiditasnya. MetronomeDAO menyatakan di Twitter bahwa penyelidikan atas insiden tersebut masih berlangsung dan menggambarkan serangan tersebut sebagai bagian dari serangkaian serangan yang lebih luas.
Dalam kasus JPEG’d, penyerang berhasil menjalankan serangan MEV (maximal extractable value) bot. Bot tersebut mengidentifikasi transaksi calon penyerang dan membayar biaya untuk menjalankan transaksi serupa sebelumnya.
Vyper menyatakan di Twitter bahwa penyebab masalah tersebut adalah compiler bahasa pemrogramannya. Ketika seorang pengembang telah menulis kode, kode tersebut kemudian di-compile dari format yang dapat dibaca oleh manusia menjadi format yang dapat dijalankan oleh komputer.
Compiler yang gagal menyebabkan “re-entry guards” (proteksi yang seharusnya melindungi terhadap serangan re-entrancy) tidak berfungsi. Hal ini terjadi karena compiler, dalam beberapa versi, gagal mengompilasi dengan benar.


