2025 adalah tahun eksploitasi kontrak pintar. Protokol yang lolos beberapa audit, protokol yang telah teruji selama bertahun-tahun, protokol yang dibangun oleh tim dengan keahlian keamanan mendalam. Semuanya menjadi korban serangan yang mengungkapkan sesuatu yang tidak nyaman: kita semakin baik dalam menemukan bug tradisional, tetapi kita masih melewatkan cacat fundamental dalam cara protokol berpikir tentang ekonomi, matematika, dan desain sistem.
Retrospektif ini memeriksa insiden paling menarik secara teknis tahun ini, diurutkan berdasarkan apa yang mereka ajarkan kepada kita tentang keamanan kontrak pintar. Kami akan mengeksplorasi bagaimana pelanggaran invarian ekonomi memungkinkan penyerang mencetak token tak terbatas, bagaimana kesalahan presisi dalam matematika AMM mengubah kesalahan pembulatan kecil menjadi eksploitasi jutaan dolar, dan bagaimana kegagalan batas sistem mengekspos kerentanan yang tidak dapat ditangkap oleh audit komponen tunggal.
Peretasan ini mengungkapkan masalah fundamental dalam desain protokol, kegagalan yang melampaui kesalahan sederhana dan menyentuh asumsi inti tentang bagaimana sistem DeFi seharusnya bekerja.
Desember 2025
Yearn Finance mengalami dua eksploitasi terkait pada Desember 2025, keduanya menargetkan infrastruktur lama yang tetap berada di rantai setelah peningkatan protokol.
Eksploitasi pertama: Pelanggaran Invarian Ekonomi ($9 juta) — 1 Desember
Pool stableswap yETH lama Yearn Finance dikuras dalam satu transaksi. Penyerang menemukan kelemahan dalam logika perhitungan share yang memungkinkan pencetakan jumlah token yETH yang hampir tak terbatas. Sekitar 1.000 ETH (bernilai sekitar $3 juta) dikirim ke Tornado Cash.
Penyerang menemukan kasus edge dalam formula stableswap di mana perhitungan share dapat dimanipulasi. Kerentanan ada dalam logika akuntansi itu sendiri. Ketika protokol menghitung share untuk deposit atau penarikan, matematika dapat dimanipulasi untuk menciptakan share dari ketiadaan.
Eksploitasi kedua: Risiko Kontrak Lama ($300 ribu) — 17 Desember
Setelah eksploitasi pertama, kontrak V1 Yearn menjadi target. Ketika protokol diupgrade, kontrak lama tidak hilang. Mereka tetap berada di rantai, berpotensi menyimpan nilai. Dalam kasus Yearn, kontrak V1 masih memiliki dana yang terkunci di dalamnya, dan dana tersebut menjadi target setelah eksploitasi pertama menarik perhatian pada infrastruktur lama Yearn.
Mengapa ini penting (perspektif auditor dan organisasi):
Eksploitasi pertama menunjukkan kesenjangan penting dalam metodologi audit. Alat analisis statis tidak memverifikasi invarian ekonomi. Fuzzer menguji jalur kode, bukan model ekonomi. Proses audit perlu dengan jelas memverifikasi bahwa logika akuntansi mempertahankan invarian yang dimaksudkan di semua urutan operasi.
Eksploitasi kedua menyoroti bahwa kontrak lama merepresentasikan risiko berkelanjutan. Eksploitasi pertama mungkin telah menarik perhatian pada infrastruktur lama Yearn, yang mengarah pada yang kedua. Protokol memerlukan rencana yang jelas untuk menghentikan kontrak lama, memigrasikan nilai yang tersisa, dan memantau interaksi yang tidak terduga.
Mitigasi: Implementasikan tes invarian yang menegaskan hubungan share-ke-nilai berlaku di semua operasi. Gunakan fuzzing diferensial untuk membandingkan perhitungan akuntansi dengan implementasi referensi. Miliki strategi penghentian yang jelas untuk kontrak lama dengan pemantauan berkelanjutan.
Kelas kerentanan: Pelanggaran invarian ekonomi dan risiko kontrak lama.
Pembahasan mendalam: Yearn Finance DeFi Project Hacked for $9M | PeckShield Alert | Yearn Finance V1 Exploit
3 November 2025
Kesalahan pembulatan kecil dalam perhitungan pool stabil Balancer diamplifikasi melalui swap batch frekuensi tinggi, menghasilkan pengurasan $70–128 juta di beberapa rantai. Penyerang mengeksekusi ratusan atau ribuan swap, dengan setiap swap memperkuat kesalahan pembulatan sebelumnya hingga kesalahan kecil tersebut terakumulasi menjadi ekstraksi nilai yang masif.
Cara kerjanya:
Pool stabil Balancer menggunakan formula rumit untuk mempertahankan stabilitas harga. Formula ini melibatkan pembulatan pada beberapa langkah. Dalam operasi normal, kesalahan pembulatan kecil. Tetapi penyerang menemukan cara untuk menyusun swap batch yang secara konsisten diuntungkan dari arah pembulatan, mengekstrak nilai melalui operasi berulang.
Mengapa ini penting (perspektif desainer protokol):
Matematika AMM perlu benar dalam kondisi adversarial. Setiap keputusan pembulatan menjadi vektor serangan potensial ketika berhadapan dengan modal besar dan kemampuan untuk mengeksekusi banyak transaksi dengan cepat. Desainer perlu berpikir secara adversarial: apa yang terjadi jika penyerang mengeksekusi operasi ini seribu kali?
Apa yang terlewat oleh audit: Proses audit standar menguji swap individual, bukan urutan ratusan atau ribuan. Kesalahan pembulatan diukur kurang dari 1 wei per swap dan diperlakukan sebagai dapat diabaikan. Tidak ada invarian yang ditegaskan selama N operasi berulang. Fuzzer tanpa pemodelan urutan stateful tidak dapat menemukan ini.
Mitigasi: Tegaskan invarian yang berlaku di operasi berulang. Uji dengan ukuran batch adversarial. Gunakan verifikasi formal untuk membuktikan batas kesalahan pembulatan tetap dapat diterima dalam urutan operasi apa pun.
Kelas kerentanan: Kesalahan presisi matematika dalam formula AMM.
Pembahasan mendalam: Balancer DeFi Protocol Suffers Massive Exploit | Balancer Hack Explained with Multi-Chain Details
9 Juli 2025
GMX, protokol trading perpetual yang menangani miliaran volume trading, dieksploitasi senilai $42 juta. Eksploitasi tidak berasal dari bug dalam logika trading inti. Ini muncul di batas antara komponen: di mana oracle bertemu perhitungan margin, di mana logika likuidasi berinteraksi dengan infrastruktur bridge.
Cara kerjanya:
Kerentanan ada dalam cara komponen-komponen ini berinteraksi, bukan dalam satu komponen. Ketika oracle memperbarui harga, persyaratan margin berubah, dan logika likuidasi merespons. Penyerang kemungkinan menemukan cara untuk memanipulasi interaksi ini, mungkin dengan mengatur waktu pembaruan oracle dengan perhitungan margin. Sekitar $9,6 juta di-bridge ke Ethereum segera setelah eksploitasi, menunjukkan perencanaan yang cermat.
Mengapa ini penting (perspektif arsitektur sistem):
Komponen individual yang diaudit dengan baik masih dapat gagal ketika diintegrasikan. Kerentanan tidak ada dalam kontrak tunggal. Ini ada di ruang antara komponen, dalam cara mereka berkomunikasi dan berinteraksi. Seiring protokol menjadi lebih rumit dan dapat disusun, permukaan serangan tumbuh di batas komponen.
Apa yang terlewat oleh audit: Proses audit tradisional biasanya sangat fokus pada komponen secara isolasi. Pengujian integrasi ada, tetapi mungkin tidak mencakup skenario adversarial di mana penyerang dapat mengatur waktu operasi di batas komponen.
Mitigasi: Implementasikan tes integrasi yang mensimulasikan perilaku sistem penuh. Gunakan kerangka simulasi adversarial yang dapat memodelkan interaksi antara komponen. Uji serangan timing di mana operasi diurutkan untuk mengeksploitasi interaksi komponen.
Kelas kerentanan: Kegagalan integrasi sistem.
Pembahasan mendalam: GMX Exploit Coverage
28 Mei 2025
Cork Protocol kehilangan sekitar 3.761 wstETH (bernilai sekitar $12 juta) karena kerentanan dalam cara menangani liquid staking derivatives. Liquid staking derivatives seperti stETH, wstETH, dan osETH memperkenalkan perubahan state tersembunyi. Nilai tukar antara wstETH dan ETH berubah seiring waktu seiring akumulasi reward staking.
Cara kerjanya:
Eksploitasi melibatkan ketidaksesuaian antara cara Cork Protocol memodelkan akrual nilai wstETH dan cara kerjanya yang sebenarnya. Protokol kemungkinan mengasumsikan hubungan statis 1:1 yang tidak berlaku. Penyerang dapat mendepositkan wstETH ketika nilai tukar menguntungkan, menunggu untuk mengakumulasi nilai, kemudian menarik lebih dari yang seharusnya bisa.
Mengapa ini penting (perspektif organisasi):
Ini menyoroti kesenjangan pengetahuan organisasi. Banyak tim pengembangan memperlakukan semua token ERC-20 dengan cara yang sama, tetapi liquid staking derivatives bekerja berbeda. Ini bukan hanya masalah kode. Ini masalah manajemen pengetahuan. Tim memerlukan proses untuk mengidentifikasi dan mendokumentasikan perilaku spesifik token sebelum integrasi.
Mitigasi: Selalu gunakan fungsi nilai tukar token (misalnya, wstETH.getStETHByWstETH()). Jangan pernah mengasumsikan hubungan 1:1. Perhitungkan akrual nilai dari waktu ke waktu dalam perhitungan apa pun yang melibatkan LSD.
Kelas kerentanan: Kesalahpahaman mekanika token.
Pembahasan mendalam: Cork Protocol Hacked for $12M, Smart Contracts Paused
Peretasan ini mengungkapkan pelajaran yang lebih sempit tetapi masih instruktif tentang kelas kerentanan spesifik.
2 September 2025
Bunni, protokol likuiditas terkonsentrasi, dieksploitasi melalui bug presisi/pembulatan dalam sistem akuntansi LP-nya. Kerugian pasti bervariasi menurut sumber ($2,4 juta dilaporkan awalnya, analisis kemudian menyarankan hingga $8,3 juta).
Cara kerjanya:
Penyerang menemukan cara untuk melakukan deposit dan penarikan berulang yang mengeksploitasi pembulatan yang menguntungkan mereka. Setiap operasi mengekstrak jumlah kecil, tetapi selama banyak operasi, jumlah kecil tersebut bertambah menjadi jutaan.
Mengapa ini penting (perspektif metodologi pengujian):
Sebagian besar test suite memodelkan operasi tunggal, bukan urutan operasi. Tes mungkin memverifikasi bahwa deposit tunggal menghitung share dengan benar, tetapi tidak akan menangkap kesalahan presisi yang hanya muncul setelah puluhan operasi. Fuzzer yang tidak memodelkan urutan stateful melewatkan masalah ini.
Mitigasi: Gunakan library matematika yang mapan (misalnya, PRBMath, ABDKMath). Uji urutan operasi, bukan hanya operasi tunggal. Pertimbangkan menggunakan presisi lebih tinggi secara internal meskipun antarmuka eksternal menggunakan presisi standar.
Kelas kerentanan: Kesalahan presisi/pembulatan dalam akuntansi LP.
Pembahasan mendalam: Bunni V2 Exploit: $8.3M Drained
30 Oktober 2025
Garden Finance dieksploitasi senilai $5,5 juta plus di beberapa rantai. Penyerang mengeksploitasi pada satu rantai, kemudian menggunakan bridge lintas rantai untuk memindahkan aset curian ke rantai lain, menukarnya melalui DEX berbeda untuk mengaburkan jejak.
Mengapa ini penting (perspektif pemodelan ancaman):
Deployment multi-chain menciptakan permukaan serangan baru. Model ancaman perlu memperhitungkan vektor serangan lintas rantai. Penyerang mungkin mengeksploitasi protokol Anda pada satu rantai, kemudian menggunakan infrastruktur lintas rantai untuk melarikan diri atau mengaburkan jejak mereka.
Mitigasi: Rancang model ancaman yang mencakup vektor serangan lintas rantai. Pahami cara kerja bridge dan asumsi keamanan mereka. Pertimbangkan untuk mengimplementasikan pemantauan dan peringatan lintas rantai.
Kelas kerentanan: Pola serangan multi-chain.
Pembahasan mendalam: Garden Finance Breach Coverage
8 September 2025
Nemo Protocol di Sui dieksploitasi senilai $2,4 juta. Penyerang mem-bridge USDC curian melalui Circle dari Arbitrum ke Ethereum. Eksploitasi terjadi meskipun fitur keamanan Move.
Mengapa ini penting (perspektif tooling):
Sistem tipe Move mencegah bug tertentu, tetapi tidak menangani seluruh kelas kerentanan tingkat protokol. Jika logika ekonomi protokol Anda cacat, jika kontrol akses Anda lemah, jika integrasi oracle Anda rentan, sistem tipe Move tidak membantu.
Kelas kerentanan: Kesalahan logika ekonomi dalam ekosistem non-EVM.
Pembahasan mendalam: Nemo Protocol Exploit Details
Beberapa peretasan lain di 2025 merepresentasikan kegagalan operasional langsung daripada kerentanan teknis baru:
Insiden ini mengikuti pola yang sudah dikenal: kunci admin yang dikompromikan, persetujuan token berlebihan, dan kegagalan kontrol akses. Solusinya sudah diketahui: gunakan multisig untuk fungsi admin, implementasikan kontrol akses yang tepat, pantau persetujuan berlebihan.
Melihat peretasan 2025, beberapa pola muncul. Kebenaran ekonomi sama pentingnya dengan keamanan kode. Pencetakan tak terbatas Yearn dan kesalahan pembulatan Balancer menunjukkan bahwa protokol memerlukan verifikasi formal model ekonomi mereka, bukan hanya audit kode. Batas sistem menyembunyikan kompleksitas. Eksploitasi GMX menunjukkan bahwa komponen yang diaudit dengan baik masih dapat gagal ketika diintegrasikan. Pengujian integrasi dan simulasi adversarial sangat penting.
Presisi dan pembulatan tetap berbahaya. Eksploitasi Bunni adalah pengingat bahwa kerentanan aritmatika fixed-point tetap ada. Uji urutan operasi, bukan hanya operasi tunggal. Cross-chain menciptakan permukaan serangan baru. Garden Finance dan Nemo Protocol menunjukkan bahwa deployment multi-chain memerlukan model keamanan yang memperhitungkan vektor serangan lintas rantai. Keamanan bahasa tidak menghilangkan bug ekonomi. Nemo Protocol menunjukkan bahwa bahasa type-safe mencegah bug tertentu tetapi tidak menangani kesalahan logika ekonomi. Kontrak lama adalah risiko berkelanjutan. Eksploitasi Desember Yearn menunjukkan bahwa kontrak yang sudah tidak digunakan tetap rentan, dan satu eksploitasi dapat menarik perhatian pada infrastruktur lama. Miliki strategi penghentian yang jelas dan pemantauan berkelanjutan.
Audited, Tested, and Still Broken: Smart Contract Hacks of 2025 awalnya dipublikasikan di Coinmonks di Medium, di mana orang-orang melanjutkan percakapan dengan menyoroti dan merespons cerita ini.


