Eksploitasi ini menyasar batas antara logika verifikasi zero-knowledge proof dan pemrosesan penyelesaian (settlement) di Layer 1 Ethereum. Menurut CertiK, salah satu fungsi verifikasi kontrak hanya memeriksa bagian awal dari proof yang dikirimkan, artinya parameter yang digunakan untuk mengotorisasi transfer token tidak pernah divalidasi sepenuhnya . Ini memungkinkan peretas mengirimkan proof yang lolos pemeriksaan awal namun berisi instruksi penarikan berbahaya di bagian data yang lebih dalam.
Analisis selanjutnya oleh SlowMist mengidentifikasi akar masalah pada batas traversal dari loop settlement L1 di dalam RollupV3. Peretas mengeksploitasi ketidaksesuaian antara numRealTxs dan decoded_slots, yang memungkinkan pengiriman 31 slot kosong ke state root L2 melalui ZK proof sambil menghindari verifikasi penuh di lapisan kontrak L1 . Peretas pada akhirnya membuat 14 ZK-rollup proof; tujuh proof terakhir masing-masing menguras aset yang berbeda dari kontrak dalam transaksi terpisah
.
Yang membuat insiden ini unik adalah serangan ini secara struktural tidak dapat dihentikan—dan memang begitu desainnya. Aztec Connect dimatikan pada Maret 2023, dan pengguna diberi waktu lebih dari setahun untuk menarik dana mereka . Pada 2024, Aztec Labs melangkah lebih jauh dengan sengaja melepaskan semua kunci admin dan kendali atas sistem. Kontraknya menjadi sepenuhnya tak dapat diubah (immutable): tidak ada mekanisme upgrade, tidak ada pemilik, dan yang paling krusial, tidak ada fungsi untuk menjeda (pause)
.
“Aztec Connect telah dimatikan 3 tahun lalu. Aztec Labs tidak memegang kunci admin atau kendali apa pun atas sistem; sistem ini tidak dapat dijeda atau di-upgrade,” tegas tim tersebut di platform X beberapa jam setelah eksploitasi, mengonfirmasi sekitar $2,1 juta telah berpindah dari kontrak abadi itu . Mereka menekankan bahwa Jaringan Aztec saat ini dan token AZTEC ERC-20 tidak terpengaruh, namun mengakui tidak ada mekanisme untuk memulihkan dana yang hilang
.
Meskipun ada jendela penarikan yang panjang dan komunikasi seputar penutupan, sekitar $2,1 juta aset pengguna yang tersisa tetap terkunci di dalam kontrak lama pada saat serangan terjadi . Dana tersebut berada dalam semacam ketidakpastian (limbo): tidak ada yang bisa mengambilnya secara sah tanpa berinteraksi dengan rollup yang sudah usang, dan tidak ada yang bisa turun tangan ketika celah keamanan dipicu.
Eksploitasi Aztec Connect adalah ilustrasi sempurna dari masalah "kontrak zombie" di keuangan terdesentralisasi. Kontrak pintar yang tak dapat diubah tidak begitu saja lenyap ketika sebuah proyek dimatikan. Mereka tetap ada di on-chain dengan logika—dan nilai—apa pun yang dikandungnya, seringkali menahan aset pengguna tanpa batas waktu. Ketika kunci admin dilepaskan demi mengejar desentralisasi penuh, kontrak tersebut menjadi honeypot (umpan madu) permanen yang tidak dapat ditambal. Setiap kerentanan yang belum ditemukan menjadi bom waktu yang bisa meledak bertahun-tahun kemudian tanpa ada jalan keluar .
Risiko ini bersifat asimetris. Proyek yang melepaskan kendali memang mendapatkan kredibilitas karena tidak memiliki 'pintu belakang' (backdoor), tetapi pengguna yang gagal menarik dana selama masa transisi menanggung seluruh kerugiannya. Kasus Aztec menunjukkan bahwa bahkan setelah tiga tahun, jutaan dolar bisa tetap terperangkap dalam kontrak yang dikira semua orang sudah 'mati'.
Bagi tim DeFi yang berencana menghentikan suatu protokol, pelajarannya sangat jelas. Sebelum melepaskan kunci admin, proyek harus memaksa penyelesaian semua penarikan dana atau menerapkan mekanisme darurat berbasis timelock yang tidak memerlukan kendali admin jangka panjang. Tanpa perlindungan tersebut, infrastruktur yang ditinggalkan namun abadi pasti akan menarik peretas yang bersedia mencari celah yang tidak akan pernah bisa diperbaiki .
Comments
0 comments