Bug bounty
Dikenal juga sebagai Program bug bounty · Program imbalan kerentanan
Program bug bounty membayar peneliti keamanan yang melaporkan kerentanan secara bertanggung jawab alih-alih mengeksploitasinya, dengan imbalan yang disesuaikan dengan tingkat keparahan masalah. Program ini menjaga kode protokol tetap ditinjau jauh setelah audit-auditnya selesai.
Setiap smart contract yang aktif adalah undangan yang terus terbuka. Jika ia memegang uang dan memiliki celah, cepat atau lambat seseorang akan mencarinya. Bug bounty mengubah insentif dengan memberi siapa pun yang menemukan celah itu jalur yang sah dan berbayar untuk melaporkannya, sehingga pengungkapan menjadi pilihan yang lebih menguntungkan daripada serangan.
Cara kerja bug bounty
Sebuah program memublikasikan cakupan (kontrak, situs web, dan sistem mana yang tercakup), seperangkat aturan, dan tabel imbalan. Peneliti yang menemukan masalah mengirimkan laporan pribadi dengan detail yang cukup untuk mereproduksinya. Tim mengonfirmasi masalahnya, memperbaikinya, dan membayar imbalan berdasarkan tingkat keparahan. Aturan yang lazim melarang pengujian terhadap dana pengguna yang aktif, mewajibkan masalah dirahasiakan sampai diperbaiki, dan mengecualikan masalah yang sudah diketahui serta serangan yang bergantung pada kunci curian.
Bagaimana imbalan ditentukan
Imbalan biasanya mengikuti tingkatan keparahan. Masalah kritis yang dapat menyebabkan hilangnya dana secara langsung mendapat imbalan terbanyak, sering kali dengan batas atas yang dikaitkan dengan nilai yang berisiko; masalah tinggi, sedang, dan rendah mendapat imbalan yang makin kecil. Alasannya bersifat ekonomi. Jika imbalannya kecil dibandingkan apa yang bisa diambil penyerang, sebagian penemu akan tergoda, jadi program yang serius di DeFi menawarkan imbalan yang bisa besar. Membayar dengan cepat dan adil sama pentingnya dengan besarnya imbalan, karena para peneliti ingat tim mana yang menepati programnya.
Contoh sederhana
Seorang peneliti memperhatikan bahwa fungsi penarikan sebuah vault membulatkan angka yang menguntungkan pengguna dalam kasus tepi yang jarang terjadi. Jika diulang berkali-kali dalam satu transaksi, kesalahan ini perlahan dapat menguras vault. Ia menuliskan langkah-langkahnya secara pribadi. Tim mereproduksi bug tersebut, menghentikan sementara fungsi yang terdampak, merilis perbaikan, dan membayar imbalan tingkat tinggi. Tidak ada dana yang hilang, dan masalahnya diungkapkan secara publik setelah perbaikan aktif.
Bug bounty vs. audit
Audit smart contract adalah tinjauan terjadwal dengan cakupan tertentu oleh tim yang disewa pada satu titik waktu. Bug bounty bersifat terbuka: siapa pun boleh mencari, selama program berjalan, dan pembayaran bergantung pada hasil. Kekuatan audit ada sebelum peluncuran; bounty terus membayar perhatian sesudahnya, ketika kode sudah aktif dan taruhannya nyata. Pemantauan runtime menambah lapisan ketiga dengan mengawasi transaksi saat terjadi.
Risiko dan batasan
Bounty hanya berhasil jika peneliti menemukan bug sebelum penyerang, dan jika imbalannya sepadan dengan waktu mereka. Cakupan itu penting: masalah di luar kontrak yang tercantum mungkin tidak memenuhi syarat, yang dapat mendorong perhatian ke tempat lain. Program yang lambat membayar atau mempersoalkan temuan yang sah akan kehilangan kepercayaan komunitas peneliti. Bounty juga tidak memperbaiki apa pun dengan sendirinya; tim tetap harus merespons dengan cepat, dan sebagian bug butuh waktu untuk ditambal dengan aman setelah dilaporkan. Keberadaan sebuah program tidak banyak menunjukkan kualitasnya. Cakupan, aturan, dan rekam jejak pembayarannya memberi tahu Anda lebih banyak daripada besarnya imbalan maksimum.
Bagaimana Tori Finance menggunakannya
Tori Finance menjalankan program bug bounty internalnya sendiri, yang memberi imbalan kepada peneliti yang melaporkan kerentanan dalam kodenya secara bertanggung jawab. Program ini terpisah dari audit smart contract dan dari pemantauan runtime, dan menjaga kode tetap ditinjau selama aktif.
Pertanyaan yang sering diajukan
Apa itu program bug bounty?
Program yang membayar peneliti keamanan karena melaporkan kerentanan dalam sebuah sistem secara pribadi, sehingga kerentanan itu dapat diperbaiki sebelum ada yang mengeksploitasinya.
Bagaimana imbalan bug bounty ditentukan?
Biasanya berdasarkan tingkat keparahan. Masalah yang dapat menyebabkan hilangnya dana secara langsung mendapat imbalan terbanyak, sering kali disesuaikan dengan nilai yang berisiko, sementara masalah kecil mendapat lebih sedikit. Setiap program memublikasikan tabel imbalan dan aturannya sendiri.
Apa perbedaan audit dan bug bounty?
Audit adalah tinjauan terjadwal oleh tim yang disewa pada satu titik waktu. Bug bounty tetap terbuka selama kode aktif dan membayar siapa pun yang menemukan masalah yang memenuhi syarat. Keduanya saling melengkapi.
Istilah terkait
Audit smart contract
Audit smart contract adalah tinjauan keamanan independen atas kode sebuah protokol untuk mencari kerentanan sebelum, atau tidak lama setelah, protokol itu beroperasi. Audit menurunkan risiko dalam cakupan dan tanggal yang disebutkan, tetapi bukan janji bahwa kodenya bebas bug.
Pemantauan runtime
Pemantauan runtime adalah pengawasan berkelanjutan atas aktivitas onchain sebuah protokol secara langsung untuk menandai, dan terkadang memblokir, transaksi mencurigakan saat terjadi. Pemantauan ini melengkapi audit, yang meninjau kode pada satu titik waktu, dengan mengawasi apa yang benar-benar dilakukan kode.
Sumber
- ethereum.org: Ethereum bug bounty programethereum.org
- ethereum.org: Smart contract securityethereum.org
Ditulis oleh tim Tori Finance. Bukan saran investasi. Imbal hasil dapat berubah; modal Anda berisiko.