Sebagian besar protokol DeFi yang serius diaudit sebelum diluncurkan. Namun sebagian besar peretasan DeFi yang serius menyerang protokol yang telah diaudit. Jika tujuan audit keamanan adalah menangkap kerentanan sebelum dieksploitasi, mengapa catatannya terlihat seolah audit hampir tidak memperlambat eksploitasi? Jawabannya kurang sinis dari kedengarannya — tetapi juga tidak membebaskan industri auditing dari tanggung jawab.
Apa Kata Komunitas
Setelah setiap peretasan DeFi besar, pertukaran yang sama terjadi di r/CryptoCurrency dan r/defi: seseorang menautkan post-mortem, seseorang menemukan laporan audit, seseorang memposting “diaudit oleh [firma terkemuka], masih kehilangan $100 juta.” Frustrasi itu nyata. Asumsi bahwa “protokol yang diaudit = protokol yang lebih aman” tertanam dalam budaya DeFi — protokol menampilkan lencana audit mereka seperti sertifikasi keselamatan produk, dan pengguna memperlakukannya kira-kira seperti itu.
Eksploitasi Euler Finance pada Maret 2023 mengkristalkan frustrasi ini dengan paling jelas. Euler adalah salah satu protokol pinjaman yang paling menyeluruh diaudit di DeFi — enam audit terpisah dari firma termasuk Halborn, Sherlock, dan ZKSecurity, ditambah program bug bounty yang aktif. Serangan menelan biaya $197 juta. Kerentanan tersebut telah ada dalam kode hampir delapan bulan sebelum dieksploitasi, dan tidak ada audit yang menandainya.
Di r/ethfinance, thread setelah peretasan Euler lebih analitis dari biasanya. Beberapa komentator dengan tepat mengidentifikasi bahwa kerentanan tersebut adalah kesalahan logika ekonomi — kombinasi mekanisme donasi dan insentif likuidasi yang menciptakan jalur ekstraksi nilai — bukan bug level kode yang klasik. Perbedaan itu sangat penting, dan berada di inti mengapa audit menghasilkan rasa aman palsu bagi pengguna.
Bukti: Apa yang Ditunjukkan Post-Mortem
Perbedaan kritis dalam keamanan smart contract adalah antara bug level kode dan kerentanan logika ekonomi.
Bug level kode adalah yang dirancang untuk ditangkap oleh audit tradisional: kesalahan reentrancy (kerentanan di balik peretasan DAO 2016), overflow dan underflow integer, kesalahan kontrol akses, validasi input yang tidak tepat. Proses audit — meminta insinyur berpengalaman untuk meninjau kode secara manual mencari cacat implementasi — memang efektif untuk kelas kerentanan ini.
Kerentanan logika ekonomi berbeda. Ini bukan kesalahan dalam cara kode mengimplementasikan spesifikasi. Ini adalah cacat dalam spesifikasi itu sendiri — kasus di mana aturan protokol menciptakan kondisi yang dapat dieksploitasi melalui interaksi on-chain yang sepenuhnya sah dalam urutan yang tidak diantisipasi oleh perancang. Serangan flash loan adalah contoh kanoniknya: sebagian besar eksploitasi flash loan awal tidak melibatkan bug kode apa pun. Mereka menggunakan fungsi protokol yang sah dalam kombinasi yang menciptakan jalur keuntungan yang tidak dipertimbangkan oleh perancang protokol. Auditor yang membaca kode tidak dapat menandai jalur tersebut sebagai “salah” karena kode melakukan persis apa yang seharusnya dilakukan.
Rekt.news mempertahankan papan peringkat peretasan DeFi besar sejak 2020. Referensi silang eksploitasi teratas mereka dengan laporan audit yang diterbitkan menunjukkan bahwa sebagian besar besar memiliki setidaknya satu audit sebelum diluncurkan. Pola dalam post-mortem mengelompok ke beberapa kategori: kesalahan logika ekonomi (serangan flash loan, manipulasi oracle, eksploitasi mekanik likuidasi), kegagalan kontrol akses, dan kerentanan jembatan. Dua kategori terakhir adalah yang dapat ditangkap audit secara andal. Kegagalan logika ekonomi terus muncul terlepas dari cakupan audit.
Argumen Tandingan
Kesimpulan frustrasi “audit tidak berfungsi” dari Twitter DeFi terlalu menyederhanakan gambaran yang sebenarnya. Dibandingkan dengan kontrak yang tidak diaudit, protokol yang diaudit memiliki catatan yang secara berarti lebih baik dalam keamanan level kode — tidak sempurna, tetapi jauh lebih baik. Papan peringkat Rekt juga mencakup protokol yang tidak diaudit atau minimal diaudit yang dieksploitasi untuk kesalahan implementasi dasar yang mungkin dapat dicegah dengan beberapa jam tinjauan profesional.
Industri auditing juga berpendapat, dengan pembenaran, bahwa satu audit mewakili tinjauan pada suatu titik waktu. Protokol sering mengupgrade kontrak atau memodifikasi parameter setelah audit awal mereka — dan Euler menjalankan kode yang telah berubah dari bentuk yang awalnya diaudit. Beberapa audit dari waktu ke waktu, dikombinasikan dengan program bug bounty yang berkelanjutan, mengurangi risiko lebih dari satu tinjauan pra-peluncuran.
Implikasi Praktis
Model yang paling akurat untuk keamanan smart contract adalah proses pengurangan risiko berlapis, bukan penunjukan biner aman-bersertifikat/tidak aman. Audit secara substansial mengurangi probabilitas eksploitasi level implementasi. Ini mengurangi probabilitas eksploitasi logika ekonomi secara marjinal. Keduanya tidak menghilangkan risiko.
Bagi pengguna, ini mengubah apa yang seharusnya berarti “diaudit oleh [firma]” dalam praktiknya. Ini adalah bukti kontrol kualitas — bukan jaminan keselamatan. Pertanyaan relevan lebih spesifik: Apakah kode berubah sejak audit? Apakah logika ekonomi (bukan hanya kebenaran kode) ditinjau? Apakah ada bug bounty aktif dengan pembayaran yang berarti?
Untuk perancang protokol, implikasinya adalah pemodelan ekonomi dan spesifikasi formal invariant protokol sebelum kode ditulis — bukan hanya mengaudit apa yang sudah dibangun — adalah satu-satunya jalur realistis menuju penangkapan kerentanan logika sebelum penerapan.
Ekosistem audit saat ini lebih baik dari tidak ada dengan margin yang substansial. Yang bukan adalah cukup — dan memperlakukannya sebagai cukup adalah keyakinan yang membuat pengguna terus kehilangan uang dalam protokol yang mereka anggap aman.
Terakhir diperbarui: April 2026