Baru-baru ini, Cork Protocol di Ether on-chain diserang, dan penyerang memperoleh keuntungan sebesar 12 juta dolar melalui celah logika pada kontrak proyek (parameter kunci yang tidak diverifikasi). Artikel ini memberikan analisis mendetail tentang kejadian serangan ini dan pelacakan dana.
Penulis: Beosin
Baru-baru ini, Cork Protocol di rantai Ether diserang, penyerang memperoleh keuntungan sebesar 12 juta dolar AS melalui celah logika dalam kontrak proyek (parameter kunci tidak diverifikasi). Tim keamanan Beosin telah melakukan analisis mendetail dan pelacakan dana terhadap kejadian serangan ini, dan hasilnya dibagikan sebagai berikut:
Langkah Serangan Detail
Sebelum menganalisis serangan, kita perlu memahami logika bisnis khusus dari Cork Protocol. Ini memperkenalkan mekanisme swap default kredit yang mirip dengan keuangan tradisional (disebut Depeg Swap), yang memtokenisasi risiko depeg dari aset yang terikat (seperti stETH), memungkinkan pengguna untuk melakukan hedging atau perdagangan terhadap risiko depeg dari aset yang terikat. Jenis token yang ada adalah:
Aset Penebusan (Redemption Asset, RA): Aset dasar (seperti Ether)
Aset yang Dipatok (Pegged Asset, PA): Aset yang dipatok pada aset dasar (seperti stETH)
Depeg Swaps (DS): mirip dengan opsi put, untuk melindungi dari penurunan harga
Token Penutup (Cover Token, CT) — Mirip dengan opsi panggilan, jika tidak terjadi penyimpangan, dapat menghasilkan keuntungan; jika terjadi penyimpangan, maka harus menanggung kerugian.
Ketika pengguna menyetor RA, Protokol Cork akan mencetak token DS dan CT, pengguna dapat melakukan perdagangan atau menebus untuk mempertaruhkan atau menghindari risiko.
Serangan ini melibatkan pasar token nyata dan pasar palsu yang dibangun oleh penyerang:
(1) penyerang pertama kali membuat pasar palsu di mana RA adalah token weETH8DS-2 dan PA adalah wstETH. Dapat dicatat bahwa weETH8DS-2 dapat digunakan sebagai RA di pasar palsu sebagai DS di pasar nyata, yang seharusnya dilarang oleh pemeriksaan token lintas pasar.
(2) Penyerang membeli weETH8CT-2 dari pasar nyata.
(3) Penyerang memanfaatkan kurangnya kontrol akses yang tepat dalam fungsi beforeSwap dari fungsi CorkHook, mengirimkan data Hook kustom ke fungsi CorkCall, memaksa fungsinya untuk membagi weETH8DS-2 menjadi fake_DS dan fake_CT. Hal ini dapat dilakukan karena weETH8DS-2 adalah RA dari pasar palsu, yang menganggap fake_DS dan fake_CT milik penyerang.
Setelah (4) token palsu_DS dan _CT palsu ditransfer ke penyerang, menurut aturan Protokol Cork: token DS dan CT dapat ditukar dengan token RA. Penyerang menukar token palsu dan _DS_CT palsu yang diterima dengan weETH8DS-2 melalui pasar virtual.
(5) Saat ini penyerang memiliki weETH8CT-2 yang dibeli dari langkah 2, weETH8DS-2 yang dirakit ulang, yang dapat ditukarkan dengan RA (yaitu wstETH) di pasar nyata.
Dengan demikian, penyerang dapat mentransfer likuiditas DS pasar nyata ke pasar lain (pasar palsu yang dibangun) sebagai RA untuk ditebus, sehingga mengekstrak likuiditas RA di pasar nyata. Penyerang mencuri 3761 wstETH dalam peristiwa ini dan menukarnya dengan ETH senilai sekitar 12 juta dolar.
Analisis Kerentanan
Melalui proses serangan di atas, kita dapat melihat bahwa ada tiga alasan utama mengenai eksploitasi kerentanan dalam seluruh kejadian ini:
Kurang verifikasi: Tidak ada pemeriksaan apakah DS yang digunakan sebagai RA telah digunakan di pasar lain.
CorkCall data callback yang disediakan oleh pengguna tepercaya yang belum diverifikasi dengan baik.
Protokol ini memungkinkan pembuatan pasar yang tidak memerlukan izin dan tanpa batasan.
Meskipun Cork Protocol telah mengalami beberapa audit keamanan dan kompetisi audit, celah di tingkat logika ini masih terabaikan. Jika pemeriksaan terhadap keterpakaiannya token dilakukan dengan lebih ketat, memverifikasi data callback dengan ketat, dan melakukan kontrol yang lebih ketat terhadap penciptaan pasar, serangan semacam ini dapat dihindari.
Pelacakan Dana yang Dicuri
Beosin Trace melakukan pelacakan terhadap dana yang dicuri dan menemukan: alamat penyerang 0xea6f30e360192bae715599e15e2f765b49e4da98 memperoleh sekitar 3761 wstETH, kemudian menukarkan wstETH menjadi ETH melalui protokol DeFi seperti Uniswap, 1inch, dengan total jumlah 4530.6.
Saat ini, dana yang dicuri belum dipindahkan. Beosin Trace telah menambahkan alamat terkait hacker ke dalam daftar alamat hitam, dan akan terus melacak ke depannya.
Menurut analisis Beosin Trace, semua dana yang dicuri masih disimpan di alamat penyerang.
Ringkasan
Inti dari serangan itu adalah kerentanan logika bisnis inti di Cork Protocol, yang menyebabkan penyerang mencuri sejumlah besar wstETH melalui token palsu. Protokol DeFi yang kompleks seperti Protokol Cork memerlukan pengujian terperinci dan tinjauan logika bisnis kontrak melalui audit keamanan multi-segi dan berlapis-lapis. Sebelumnya, tim keamanan Beosin telah menyelesaikan audit keamanan beberapa protokol DeFi (misalnya, Surf Protocol, SyncSwap, LeverFi, Owlto Finance), dengan fokus pada menemukan kelemahan logika kontrak dan kasus tepi yang mungkin diabaikan, memastikan bahwa protokol telah diuji sepenuhnya.
Lihat Asli
Konten ini hanya untuk referensi, bukan ajakan atau tawaran. Tidak ada nasihat investasi, pajak, atau hukum yang diberikan. Lihat Penafian untuk pengungkapan risiko lebih lanjut.
Penjelasan Kerentanan|Analisis dan Pelacakan Dana Kasus Pencurian 12 Juta Dolar Protokol Cork
Penulis: Beosin
Baru-baru ini, Cork Protocol di rantai Ether diserang, penyerang memperoleh keuntungan sebesar 12 juta dolar AS melalui celah logika dalam kontrak proyek (parameter kunci tidak diverifikasi). Tim keamanan Beosin telah melakukan analisis mendetail dan pelacakan dana terhadap kejadian serangan ini, dan hasilnya dibagikan sebagai berikut:
Langkah Serangan Detail
Sebelum menganalisis serangan, kita perlu memahami logika bisnis khusus dari Cork Protocol. Ini memperkenalkan mekanisme swap default kredit yang mirip dengan keuangan tradisional (disebut Depeg Swap), yang memtokenisasi risiko depeg dari aset yang terikat (seperti stETH), memungkinkan pengguna untuk melakukan hedging atau perdagangan terhadap risiko depeg dari aset yang terikat. Jenis token yang ada adalah:
Aset Penebusan (Redemption Asset, RA): Aset dasar (seperti Ether)
Aset yang Dipatok (Pegged Asset, PA): Aset yang dipatok pada aset dasar (seperti stETH)
Depeg Swaps (DS): mirip dengan opsi put, untuk melindungi dari penurunan harga
Token Penutup (Cover Token, CT) — Mirip dengan opsi panggilan, jika tidak terjadi penyimpangan, dapat menghasilkan keuntungan; jika terjadi penyimpangan, maka harus menanggung kerugian.
Ketika pengguna menyetor RA, Protokol Cork akan mencetak token DS dan CT, pengguna dapat melakukan perdagangan atau menebus untuk mempertaruhkan atau menghindari risiko.
Serangan ini melibatkan pasar token nyata dan pasar palsu yang dibangun oleh penyerang:
(1) penyerang pertama kali membuat pasar palsu di mana RA adalah token weETH8DS-2 dan PA adalah wstETH. Dapat dicatat bahwa weETH8DS-2 dapat digunakan sebagai RA di pasar palsu sebagai DS di pasar nyata, yang seharusnya dilarang oleh pemeriksaan token lintas pasar.
(2) Penyerang membeli weETH8CT-2 dari pasar nyata.
(3) Penyerang memanfaatkan kurangnya kontrol akses yang tepat dalam fungsi beforeSwap dari fungsi CorkHook, mengirimkan data Hook kustom ke fungsi CorkCall, memaksa fungsinya untuk membagi weETH8DS-2 menjadi fake_DS dan fake_CT. Hal ini dapat dilakukan karena weETH8DS-2 adalah RA dari pasar palsu, yang menganggap fake_DS dan fake_CT milik penyerang.
Setelah (4) token palsu_DS dan _CT palsu ditransfer ke penyerang, menurut aturan Protokol Cork: token DS dan CT dapat ditukar dengan token RA. Penyerang menukar token palsu dan _DS_CT palsu yang diterima dengan weETH8DS-2 melalui pasar virtual.
(5) Saat ini penyerang memiliki weETH8CT-2 yang dibeli dari langkah 2, weETH8DS-2 yang dirakit ulang, yang dapat ditukarkan dengan RA (yaitu wstETH) di pasar nyata.
Dengan demikian, penyerang dapat mentransfer likuiditas DS pasar nyata ke pasar lain (pasar palsu yang dibangun) sebagai RA untuk ditebus, sehingga mengekstrak likuiditas RA di pasar nyata. Penyerang mencuri 3761 wstETH dalam peristiwa ini dan menukarnya dengan ETH senilai sekitar 12 juta dolar.
Analisis Kerentanan
Melalui proses serangan di atas, kita dapat melihat bahwa ada tiga alasan utama mengenai eksploitasi kerentanan dalam seluruh kejadian ini:
Kurang verifikasi: Tidak ada pemeriksaan apakah DS yang digunakan sebagai RA telah digunakan di pasar lain.
CorkCall data callback yang disediakan oleh pengguna tepercaya yang belum diverifikasi dengan baik.
Protokol ini memungkinkan pembuatan pasar yang tidak memerlukan izin dan tanpa batasan.
Meskipun Cork Protocol telah mengalami beberapa audit keamanan dan kompetisi audit, celah di tingkat logika ini masih terabaikan. Jika pemeriksaan terhadap keterpakaiannya token dilakukan dengan lebih ketat, memverifikasi data callback dengan ketat, dan melakukan kontrol yang lebih ketat terhadap penciptaan pasar, serangan semacam ini dapat dihindari.
Pelacakan Dana yang Dicuri
Beosin Trace melakukan pelacakan terhadap dana yang dicuri dan menemukan: alamat penyerang 0xea6f30e360192bae715599e15e2f765b49e4da98 memperoleh sekitar 3761 wstETH, kemudian menukarkan wstETH menjadi ETH melalui protokol DeFi seperti Uniswap, 1inch, dengan total jumlah 4530.6.
Saat ini, dana yang dicuri belum dipindahkan. Beosin Trace telah menambahkan alamat terkait hacker ke dalam daftar alamat hitam, dan akan terus melacak ke depannya.
Menurut analisis Beosin Trace, semua dana yang dicuri masih disimpan di alamat penyerang.
Ringkasan
Inti dari serangan itu adalah kerentanan logika bisnis inti di Cork Protocol, yang menyebabkan penyerang mencuri sejumlah besar wstETH melalui token palsu. Protokol DeFi yang kompleks seperti Protokol Cork memerlukan pengujian terperinci dan tinjauan logika bisnis kontrak melalui audit keamanan multi-segi dan berlapis-lapis. Sebelumnya, tim keamanan Beosin telah menyelesaikan audit keamanan beberapa protokol DeFi (misalnya, Surf Protocol, SyncSwap, LeverFi, Owlto Finance), dengan fokus pada menemukan kelemahan logika kontrak dan kasus tepi yang mungkin diabaikan, memastikan bahwa protokol telah diuji sepenuhnya.