SwapNet, sebuah aggregator DEX, mengalami kerugian lebih dari $13,4 juta di berbagai jaringan seperti Ethereum, Arbitrum, Base, dan Binance Smart Chain, sementara Aperture Finance, yang mengelola posisi likuiditas terkonsentrasi, kehilangan sekitar $3,67 juta dalam insiden yang terjadi secara bersamaan namun tidak terkait.
“Kontrak korban mengekspos kemampuan arbitrary-call akibat validasi input yang tidak memadai, sehingga penyerang dapat menyalahgunakan persetujuan token yang ada dan memanggil transferFrom untuk menguras aset,” ujar BlockSec dalam ringkasan analisisnya di X.
Perusahaan keamanan tersebut menyatakan, “Insiden-insiden ini menjadi pengingat bahwa fleksibilitas dalam desain kontrak harus diimbangi secara hati-hati dengan batasan panggilan yang ketat, terutama dalam sistem closed-source di mana tinjauan eksternal terbatas.”
Apa yang menyebabkan kerentanan pada SwapNet?
Pada kasus SwapNet, kerentanan berasal dari fungsi 0x87395540(), yang tidak memiliki validasi yang memadai pada input penting.
Dengan mengganti alamat router atau pool yang diharapkan dengan alamat token seperti USDC, penyerang menipu kontrak korban untuk memperlakukan token sebagai target eksekusi yang valid.
Hal ini menyebabkan panggilan tingkat rendah dieksekusi dengan calldata yang dikendalikan penyerang, memungkinkan kontrak korban melakukan panggilan yang memungkinkan penyerang menguras semua aset yang telah disetujui.
Kerentanan ini berdampak pada pengguna Matcha Meta, sebuah meta-aggregator exchange DeFi, yang telah menonaktifkan pengaturan “One-Time Approval” dan memberikan persetujuan tak terbatas secara langsung ke kontrak SwapNet.
Kerugian tunggal terbesar dialami oleh satu pengguna yang kehilangan sekitar $13,34 juta. Secara total, 20 pengguna terdampak. Serangan dimulai di Base pada blok 41289829, yang mendorong SwapNet untuk menghentikan kontrak di Base 45 menit setelah eksploitasi awal terdeteksi. Mereka juga menghentikan kontrak di jaringan lain tak lama setelahnya; namun, selama jangka waktu tersebut, tambahan 13 pengguna terdampak di tiga jaringan.
Kelemahan serupa juga menimpa Aperture Finance
Aperture Finance, yang mengelola posisi likuiditas Uniswap V3 atas nama pengguna, menjadi korban jenis kerentanan yang sama pada fungsi 0x67b34120().
Ketika fungsi ini dipanggil, fungsi internal 0x1d33() mengeksekusi panggilan tingkat rendah menggunakan calldata yang disuplai oleh pengguna tanpa menetapkan batasan ketat pada target panggilan atau pemilih fungsi.
Hal ini memungkinkan penyerang menyusun calldata berbahaya yang menguras token ERC-20 dan juga menyetujui NFT posisi Uniswap V3.
Pengguna yang telah mengotorisasi persetujuan untuk fitur “Instant Liquidity Management” adalah pihak yang berisiko terkena serangan ini.
Dalam satu serangan representatif di Ethereum, penyerang membuat kontrak yang memanggil fungsi rentan tersebut hanya dengan 100 wei ETH. Setelah membungkus token native ke WETH, panggilan berbahaya ke WBTC.transferFrom() dieksekusi, memungkinkan penyerang menguras token yang telah disetujui sambil melewati pemeriksaan saldo dengan menentukan nilai output swap mereka sendiri.
Perubahan apa yang dilakukan oleh platform yang terdampak?
Insiden-insiden ini mendorong kedua protokol untuk mengevaluasi kembali pendekatan mereka terhadap keamanan. Pertama, kedua protokol meminta penggunanya untuk mencabut persetujuan menggunakan alat seperti Revoke.cash.
Matcha Meta menyatakan telah menonaktifkan tombol pengaturan yang memungkinkan pengguna mematikan One-Time Approval. Mereka juga telah menghapus SwapNet dari platform mereka hingga pemberitahuan lebih lanjut, sambil menyatakan bahwa “Mengutamakan kustomisasi daripada keamanan bukanlah pendekatan yang akan kami izinkan ke depannya.”
Aperture Finance menyatakan telah menonaktifkan semua fungsi aplikasi web yang terdampak. Dalam upaya pemulihan, mereka mengatakan, “Kami bekerja sama dengan firma keamanan forensik papan atas dan berkoordinasi dengan penegak hukum untuk melacak dana,” sambil menambahkan bahwa mereka juga sedang membangun saluran untuk bernegosiasi terkait pengembalian dana.
Jika Anda membaca ini, Anda sudah selangkah lebih maju. Tetaplah di sana dengan berlangganan newsletter kami.

