Tezos Blockchain: Analisis Mendalam dari Perspektif Audit Intelijen Data Blockchain. Pencarian Vertikal. Ai.

Tezos Blockchain: Analisis Mendalam dari Perspektif Audit 

Waktu Baca: 5 menit

Proyek blockchain Tezos memiliki awal yang baik dengan mengumpulkan $232 juta dengan Penawaran Koin Awal, memperoleh tempat kedua dalam menerima dana terbesar di antara 20 ICO terbesar.

Di antara jaringan blockchain paling populer, seperti Ethereum atau Bitcoin, bagaimana Tezos bisa mendapatkan semua hype? Untuk mengetahui jawabannya, mari kita lihat lebih dekat ciri-ciri khas Tezos yang telah menarik gerombolan pendukungnya. 

Sementara blockchain yang muncul pada masanya bekerja pada konsensus Proof-of-Work (PoW), blockchain Tezos inovatif dalam menggunakan Proof-of-Stake(PoS) berdasarkan konsensus dengan mekanisme amandemen diri dan tata kelola on-chain. 

Akibatnya, Tezos menjadi pusat perhatian sebagai alternatif sempurna untuk membangun aplikasi DeFi ramah lingkungan yang membutuhkan lebih sedikit energi dan biaya rendah. Jadi, bagaimana infrastruktur Tezos menyamakan fleksibilitas dalam mengimplementasikan upgrade dengan lebih mudah?

Itu membuat kita belajar tentang pengaturan arsitektur, yang menambah nilai pada Tezos.

Kontrak Cerdas di Tezos

Kontrak pintar adalah kontrak yang dapat dieksekusi yang diprogram untuk memproses pertukaran token antara dua pihak tanpa mengharuskan salah satu pihak untuk mempercayai yang lain. 

Ketika datang ke Tezos, itu ditulis secara unik menggunakan bahasa pemrograman Michelson. Selain itu, Tezos menggunakan verifikasi formal untuk memastikan kebenaran kode, yang membuatnya lebih aman dan andal. 

Menghitung Spesifik Tezos Blockchain

Grafik sorotan dari Tezos diberikan di sini untuk pemahaman yang lebih baik tentang konfigurasi dan keunikannya. 

Mengubah diri sendiri

Tezos, yang memvalidasi blok yang beroperasi pada algoritme konsensus, dilengkapi dengan mekanisme yang dapat diubah sendiri. Setiap perubahan protokol, seperti beralih ke konsensus yang berbeda, memodifikasi sistem penghargaan, menambahkan transaksi, dll., diimplementasikan berdasarkan sistem voting on-chain. 

Perubahan kecil hingga besar dalam protokol ekonomi Tezos dipicu oleh prosedur voting on-chain. Protokol yang mengubah diri ini memiliki keunggulan dalam menghindari percabangan atau perpecahan dalam komunitas.

Tata kelola on-chain

Tezos bertentangan dengan Bitcoin dan Ethereum, yang mengikuti sistem tata kelola non-formal yang menyebabkan perpecahan blockchain (Bitcoin Cash dan Ethereum classic). 

Tata kelola on-chain di Tezos memfasilitasi “Bakers”, alias Penambang, untuk mengusulkan dan memberikan suara pada peningkatan protokol. Metodologi on-chain di Tezos dirancang untuk secara otomatis mengimplementasikan pemutakhiran dalam kode protokol yang mendasarinya tanpa melalui direktur terpusat. 

Konsensus bukti kepemilikan: PoS 

Konsensus PoS di Tezos memungkinkan siapa saja untuk berpartisipasi. Untuk menjadi pembuat roti Tezos yang memvalidasi blok dan memungkinkan pembangunan konsensus, pembuat roti harus memiliki kepemilikan minimum token XTZ (asli). 

Ini juga mengadopsi metode di mana jika pengguna tidak memiliki cukup uang untuk memanggang, mereka dapat mendelegasikan token XTZ ke pembuat roti dengan bankroll Tez yang besar. Pada gilirannya, hadiah yang diperoleh oleh pembuat roti didistribusikan kembali kepada para delegator. 

Alasan eksploitasi ditemukan dalam kontrak pintar Tezos

Salah satu laporan audit mengungkapkan kesalahan dalam arsitektur pesan lewat kontrak pintar Tezos. Kami akan memecahkan kode mereka di sini sekarang. 

Arsitektur penyampaian pesan

Kontrak eksternal yang seharusnya dipanggil selama eksekusi fungsi malah diantrekan dalam daftar panggilan yang akan dieksekusi dalam kontrak Tezos. 

Urutan yang ditemukan dalam kontrak Tezos adalah, 

  • Jalankan a() # Panggilan berikutnya: [b, d]
  • Jalankan b() # Panggilan berikutnya: [d, c]
  • Jalankan d() # Panggilan berikutnya: [c]
  • Jalankan c() # Panggilan berikutnya: []

Di mana Anda dapat melihat bahwa kode d() dijalankan sebelum kode c().

Jenis eksekusi ini memiliki kemungkinan untuk dua jenis kerentanan,

Bypass Otorisasi Panggilan Balik 

Arsitektur Tezos dibangun untuk mencegah kontrak membaca nilai kembalian panggilan eksternal menggunakan fungsi panggilan balik. Tapi di sini, karena tidak ada batasan, penggunaan callback dapat menyebabkan masalah kontrol akses. 

Injeksi Panggilan

Ini menawarkan ruang bagi penyerang untuk mengkompromikan kontrak dengan menyuntikkan panggilan antara fungsi dan panggilan eksternal yang dihasilkan. 

Pada eksekusi fungsi, panggilan yang dihasilkan diantrekan dalam daftar panggilan yang akan dieksekusi. Seorang penyerang dapat memperoleh keuntungan dengan menempatkan panggilan mereka dalam antrian dan mengeksekusi kode antara akhir fungsi yang dijalankan dan panggilan yang dihasilkan. 

Ketika panggilan penyerang dieksekusi, saldo kontrak atau memori kontrak menjadi tidak valid, dan penyerang berhasil mencapai injeksi panggilan. 

Tindakan Pencegahan Yang Harus Diperhatikan Saat Mengkode Kontrak Cerdas Tezos Menggunakan Michelson

Bahasa pemrograman Michelson adalah pilihan masuk untuk menulis kontrak aman yang tahan terhadap kebocoran data dan pencurian dana. Meskipun bahasa pemrogramannya sangat kuat, ada daftar kesalahan yang dapat muncul dalam kontrak. 

Mari kita memahami kesalahan umum dan cara untuk menyingkirkan kesalahan.

Pengembalian Dana Ke Daftar Kontrak

Ini adalah kondisi di mana dana sekelompok orang dikembalikan sekaligus. Itu terjadi saat menerima kontrak sewenang-wenang di mana pengguna jahat memulai masalah seperti itu. 

Kemungkinan masalah dari kesalahan ini adalah kontrak menelan semua gas melalui serangkaian panggilan balik, instruksi 'GAGAL' disebut yang menghentikan semua perhitungan, kesalahan masuk kembali dan sebagainya. 

Apa solusinya?

Akun default tidak mengeksekusi kode; oleh karena itu, masalah di atas dapat diurutkan dengan membuat akun default dari kunci orang. Juga, dapat diprogram agar pengguna menarik dana mereka secara individual. 

Tidak Mengatur Status Sebelum Transfer

Masuk kembali adalah rintangan umum di blockchain. Ketika kontrak memanggil kontrak eksternal lain untuk melakukan transfer, sewenang-wenang mendapatkan keunggulan dalam melakukan transfer lebih lanjut jika keadaan tidak diperbarui setelah setiap transfer.

Hal ini menyebabkan beberapa penarikan dana dari kontrak. 

Apa solusinya?

Berhati-hatilah saat melakukan panggilan ke kontrak eksternal, dan pastikan bahwa perilaku mereka tidak dapat diubah. Untuk melarang masuk kembali, tandai di penyimpanan sehingga pengguna tidak dapat masuk kembali kecuali mereka memiliki alasan yang baik. 

Menyimpan Atau Mentransfer Data Pribadi

Data yang dipublikasikan dapat dilihat secara eksplisit. Itu berarti informasi pribadi menjadi terlihat oleh semua orang ketika transaksi disiarkan. Ini memberikan kesempatan bagi node jahat dalam sistem untuk memanipulasi transaksi yang tidak ditandatangani dengan menunda atau memodifikasinya. 

Apa solusinya?

Tanda tangani transaksi yang mengandung informasi sensitif. Menggunakan counter untuk menegakkan perintah transaksi dapat memecahkan masalah. 

Pastikan Perlindungan Pro Untuk Proyek Melalui Audit Kontrak Cerdas Tezos 

Tezos yang dibangun dengan struktur self-amending menawarkan skalabilitas dan keandalan yang lebih baik, tetapi meskipun keamanan selalu menjadi pertanyaan untuk aplikasi berbasis blockchain. Masalah terkecil dapat menyebabkan kerugian dana terbesar. 

Dan di situlah QuillAudit mengambil langkah maju untuk melindungi aset dari cengkeraman aktor jahat. Kami tidak memberi mereka kesempatan untuk mengeksploitasi kontrak karena kami mengenali dan memperbaiki masalah tersebut dengan melakukan secara menyeluruh Audit kontrak pintar Tezos

Dapatkan konsultasi gratis dengan para ahli kami untuk mempelajari tentang layanan audit kami. 

2 views

Stempel Waktu:

Lebih dari Quillhash