Web 3.0 adalah internet terdesentralisasi yang melibatkan penggunaan protokol terdesentralisasi yang digunakan pada blockchain dan dieksekusi oleh mesin virtual. Aplikasi terdesentralisasi ini disebut kontrak pintar.
Penggunaan Web 3.0 sangat terkait dengan uang dalam bentuk cryptocurrency melalui pasar DeFi dan NFT. Aplikasi keuangan Web 3.0 saat ini adalah yang utama. Lagi pula, Anda perlu mengeluarkan beberapa cryptocurrency untuk setiap transaksi yang Anda lakukan untuk membayar penambang dan validator untuk layanan mereka dalam memproses transaksi Anda.
Tetapi ketika Anda memiliki sistem yang dirancang untuk menangani arus kas, Anda membutuhkannya untuk dibangun dengan aman. Tapi Web 3.0 saat ini dalam tahap pengembangan yang sangat awal dan lebih terlihat seperti pengujian eksperimental daripada teknologi suara. Dan seperti yang umum untuk sebagian besar teknologi digital baru saat ini, keamanan adalah salah satu masalah utama dari Web 3.0. Namun, itu telah menerima modal ventura substansial yang terpikat oleh hadiah yang menarik.
Dan setiap usaha teknologi baru yang memiliki uang besar terkunci di dalamnya dan sejumlah celah yang belum ditambal secara alami menjadi daya tarik bagi peretas yang bersedia menggunakannya untuk keuntungan finansial mereka sendiri. Selain itu, sifat Web 3.0 yang terdesentralisasi dan kurangnya kebutuhan untuk memberikan detail pribadi Anda membuatnya semakin menarik bagi penjahat dunia maya.
Dan ukuran investasi adalah indikator terbaik dari potensi industri. Jadi, dapat dikatakan bahwa Web 3.0 memiliki potensi yang baik – beberapa di antaranya mungkin masih belum dimanfaatkan. Untuk mendukung perkembangannya, standar keamanan harus ditingkatkan.
Apa ancaman utama terhadap keamanan DeFi?
Ancaman yang ada saat ini terkait dengan serangan siber di Web 3.0 dapat dimasukkan ke dalam dua kelompok – kerentanan dalam kode dan kerentanan dalam logika bisnis kontrak pintar. Kelompok pertama mencakup eksploitasi mesin virtual, kelebihan mempool, dan serangan reentrancy. Mereka dibangun di sekitar mengeksploitasi fungsi dan urutan pelaksanaan perintah mereka.
Kerentanan Reentransi
Serangan Reentrancy dapat menguras
Kontrak Cerdas eter-nya dan dapat membantu penyusupan ke dalam kode kontrak. Ketika fungsi eksternal memanggil kontrak lain yang tidak tepercaya dan penyerang mendapatkan kendali atas kontrak tidak tepercaya ini, mereka dapat membuat panggilan rekursif kembali ke aslinya, secara tak terduga mengulangi transaksi yang akan terjadi jika tidak berjalan, dan akhirnya mengkonsumsi semua gas.
Jika kontrak menggunakan panggilan, kirim atau transfer yang dapat menyebabkan aliran kontrol ke kontrak eksternal, dengan fungsi mundur, dan kemudian memperbarui status setelahnya maka ini menyebabkan
keadaan kontrak menjadi tidak lengkap saat kontrol aliran ditransfer. Karena itu, ketika mundur ini fungsi dipicu, aliran kontrol mungkin tidak kembali sebagai
disebut kontrak mengharapkan dan penelepon mungkin melakukan sejumlah hal-hal tak terduga seperti memanggil fungsi lagi, menelepon fungsi lain atau bahkan memanggil kontrak lain.
Intinya, eksploitasi ini tidak merusak perangkat lunak terdesentralisasi dalam pengertian tradisional seperti yang terjadi dengan serangan terhadap infrastruktur TI dan komputer pribadi yang terpusat. Mereka hanya memanfaatkan peluang yang secara tidak sengaja disediakan oleh programmer.
Itu bisa terjadi dengan cara yang berbeda. Seringkali, pengembang menggunakan basis kode proyek sumber terbuka lainnya tetapi pada saat yang sama melakukan beberapa modifikasi yang mungkin tampak kecil dan tidak mempengaruhi cara kontrak pintar akan beroperasi. Namun, mereka mungkin akhirnya terbukti salah karena modifikasi ini dapat memengaruhi mekanisme operasi kontrak pintar dengan cara yang tidak terduga.
Serangan reentrancy telah turun dalam sejarah blockchain sebagai salah satu jenis serangan klasik dari protokol terdesentralisasi. Mereka menargetkan apa yang disebut fungsi panggilan balik dan fungsi dalam kontrak menggunakan saldonya. Fungsi ini digunakan dalam kontrak pintar protokol peminjaman karena diperlukan untuk memantau agunan pengguna di platform dan menghitung jumlah dana yang dapat mereka pinjam.
Saat pengguna meminjam dana, mereka menanyakan 'fungsi panggilan balik', yang memeriksa saldo pengguna dalam kontrak dan mengeluarkan jumlah likuiditas masing-masing sebagai pinjaman. Proses ini terdiri dari tiga operasi – pemeriksaan saldo pengguna, perhitungan saldo pengguna setelah penerbitan pinjaman dan penerbitan pinjaman seperti itu.
Bergantung pada eksekusi pesanan dari operasi ini dalam fungsi panggilan balik, mungkin ada cara untuk menipu sistem dan mengambil lebih banyak likuiditas daripada yang diizinkan oleh jaminan Anda.
Pertama pergi cek saldo, dan kemudian pergi baik penerbitan pinjaman atau perhitungan saldo berubah. Jika pinjaman dikeluarkan terlebih dahulu dan ada panggilan balik di akhir urutan kode, itu memungkinkan pengguna untuk memulai proses dari awal, sementara transaksi ini tidak ditambang dan ditambahkan ke blockchain.
Misalnya, Anda memiliki jaminan $200 dan mengambil pinjaman $100 untuk jaminan Anda $100. Jika pinjaman dikeluarkan terlebih dahulu dan Anda menanyakan panggilan balik sebelum efek tindakan Anda diselesaikan di blockchain, Anda dapat mengambil pinjaman lain dengan jumlah agunan yang tidak berubah. Prosedur ini dapat mengambil beberapa iterasi dan memungkinkan pengguna untuk menguras kontrak likuiditas.
Cara untuk melindungi kontrak dari ancaman siber ini disebut pola checks-effect-interactions. Pola ini menempatkan perhitungan saldo pengguna dalam kontrak sebelum pengeluaran dana. Pola sederhana ini, bagaimanapun, bekerja untuk serangan reentrancy pada fungsi callback itu sendiri, tetapi serangan reentrancy lintas fungsi lebih sulit untuk dipertahankan.
Tetapi serangan reentrancy menjadi kurang teratur karena kerangka kerja baru dirancang untuk menghilangkannya. Saat ini, peretas DeFi lebih memfokuskan upaya mereka untuk mengeksploitasi inkonsistensi dalam logika bisnis kontrak pintar, sering kali menggunakan banyak protokol untuk mencuri dana dari satu. Serangan semacam itu sering kali melibatkan layanan pinjaman kilat yang memungkinkan Anda mengambil pinjaman tanpa mengajukan jaminan.
Salah satu serangan pinjaman kilat terbesar dilakukan pada Cream Finance pada Desember 2021. Ini mengakibatkan pencurian cryptocurrency dan token senilai $130 juta . Ada dua alamat yang terlibat dalam serangan itu, yang menggunakan platform pinjaman kilat seperti MakerDAO, AAVE, Yearn.finance dan Curve untuk menarik dana dari Cream Finance.
Pada akhirnya, penyerang mengeksploitasi celah dalam evaluasi PriceOracleProxy Cream tentang harga cryUSD – stablecoin yang dipatok USD dari Cream. PriceOracleProxy menilai cryUSD berdasarkan harga stablecoin yUSDVault (stablecoin Yearn.finance) yang disimpan di $USD Yearn Vault.
Setelah melakukan beberapa manipulasi dengan likuiditas yang dipinjamkan dari MakerDAO, penyerang menambahkan delapan juta yUSD ke delapan juta yUSDVault. Cream Finance PriceOracleProxy menganggap ini sebagai yUSDVault sekarang berharga $2, bukan satu dan menggandakan harga cryUSD.
Dengan demikian, penyerang mendapatkan $3 miliar dalam 1,5 miliar cryUSD yang telah dicetak dari $1,5 miliar yUSDVault. Ini memungkinkan penyerang untuk melunasi pinjaman, bunga, dan menggunakan sisa $1 miliar untuk menguras Cream Finance dari likuiditas senilai $130 juta.
Apa yang akan terjadi di masa depan untuk Web 3.0
Untuk membuat Web 3.0 lebih aman, standar keamanan harus ditingkatkan. Ini membutuhkan tenaga kerja yang kompeten untuk membangun Web 3.0 dari awal dan spesialis keamanan yang memenuhi syarat yang bekerja untuk perusahaan Web 3.0. Sementara DeFi dan entitas lain dari Web 3.0 membawa risiko tingkat tinggi, tidak masuk akal untuk mengharapkan masyarakat arus utama untuk merangkul Web 3.0. Untuk mewujudkannya lebih cepat, kami juga dapat mengadopsi praktik keamanan terbaik dari CeFi dan menerapkannya dalam sistem terdesentralisasi.
Kelebihan dan Keuntungan Web 3.0
Kehadiran web 3.0 akan menghadirkan sejumlah keuntungan yang selama ini tidak kita peroleh dari generasi web terdahulu yakni:
Lebih Aman dan Private
Melalui desentralisasi web, maka pada web 3.0 end-user akan memiliki kendali penuh atas data dan identitas mereka. Oleh karenanya, user akan menentukan bagaimana sebuah data dikelola dan dibagikan. Konsekuensinya, otoritas yang selama ini dimiliki institusi pemilik platform seperti YouTube, Facebook, Twitter, dan lain-lain akan dihilangkan.
Web 3.0 yang dibangun di atas landasan teknologi blockchain juga menjadikannya sulit untuk diretas. Setiap data juga akan terlindungi melalui enkripsi. Informasi/data memang masih dapat dikelola dan dibagikan, namun hal tersebut hanya dilakukan berdasarkan izin kasus per kasus.
Semantic Web
Salah satu fitur dalam web 3.0 adalah semantic web di mana komputer memiliki kemampuan untuk memahami konten yang ada pada website ketimbang hanya melalui kata kunci saja. Hal ini akan sangat menguntungkan user karena kemampuan web untuk memberikan hasil akan sangat berkualitas sehingga makin mempermudah manusia.
3D Graphic
Salah satu kelebihan yang akan dibawa oleh web 3.0 adalah penggunaan 3D graphic yang sangat meluas. Batasan antara dunia nyata dan dunia virtual akan semakin kabur karena manusia dapat berinteraksi dengan dunia virtual secara lebih lancar dibandingkan sebelumnya. Gambaran mengenai hal ini dapat kita lihat pada metaverse yang tengah dikembangkan sejumlah perusahaan teknologi.
Ekosistem yang Lebih Baik untuk Bisnis
Web 3.0 akan menghilangkan arsitektur web 2.0 yang sangat tersentralisasi dan membuat dunia internet hanya dimonopoli oleh sejumlah perusahaan saja. Dengan internet yang lebih terbuka dan transparan, ide dan inovasi bisnis akan makin bermunculan dan mendapatkan kesempatan yang sama.
Web 3.0 mendemokratisasi kesempatan untuk membangun bisnis sehingga setiap pengusaha dapat menawarkan layanan yang selama ini dimonopoli korporasi besar seperti keuangan, asuransi hingga banking solution. Arsitektur web 3.0 yang terdesentralisasi juga memungkinkan pengusaha membuat aplikasi yang dijalankan di blockchain sehingga menghilangkan ketergantungan pada server yang dimiliki dan dikelola oleh satu institusi saja.