Penulis: Beosin
Pada pagi hari tanggal 9 Januari, kontrak non-terbuka yang dideploy Truebit Protocol 5 tahun lalu mengalami serangan, mengakibatkan kerugian sebesar 8.535,36 ETH (sekitar 26,4 juta dolar AS). Tim keamanan Beosin telah melakukan analisis kerentanan dan pelacakan dana terhadap insiden keamanan kali ini, dan berikut adalah hasilnya:

Analisis Metode Serangan
Dalam kejadian kali ini, kita menggunakan transaksi serangan utama sebagai analisis, hash transaksi adalah: 0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014
1. Pelaku menyerang memanggil getPurchasePrice() untuk mendapatkan harga

2. Setelah itu, fungsi yang bermasalah 0xa0296215() dipanggil, dan nilai msg.value diatur sangat kecil.

Karena kontrak tidak open source, fungsi ini diduga memiliki kerentanan logika aritmatika berdasarkan kode yang diperoleh melalui dekompilasi, seperti masalah pemotongan bilangan bulat, yang menyebabkan penyerang berhasil memintal sejumlah besar token TRU.
3. Penyerang menggunakan fungsi burn untuk "menjual kembali" token yang dicetak ke kontrak, sehingga menarik banyak ETH dari cadangan kontrak.

Proses ini diulang sebanyak 4 kali, setiap kali nilai msg.value bertambah, hingga hampir seluruh ETH dalam kontrak diambil.
Pemantauan dana yang dicuri
Berdasarkan data transaksi rantai blok, Beosin melakukan pelacakan dana secara mendetail melalui platform penyelidikan dan pelacakan rantai blok BeosinTrace, dan berbagi hasilnya sebagai berikut:
Saat ini, 8.535,36 ETH yang dicuri telah dipindahkan, sebagian besar disimpan secara terpisah di alamat 0xd12f6e0fa7fbf4e3a1c7996e3f0dd26ab9031a60 dan 0x273589ca3713e7becf42069f9fb3f0c164ce850a.
Di mana alamat 0xd12f memiliki 4.267,09 ETH, dan alamat 0x2735 memiliki 4.001 ETH. Alamat penyerang (0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50) juga menyimpan 267,71 ETH, dan ketiga alamat tersebut belum mengalami perpindahan dana lebih lanjut.

Analisis Aliran Dana yang Dicuri oleh Beosin Trace
Alamat di atas semuanya telah ditandai oleh Beosin KYT sebagai alamat berisiko tinggi, sebagai contoh alamat pelaku serangan:

Beosin KYT
Kesimpulan
Dana yang dicuri kali ini berasal dari kontrak pintar yang tidak diunggah ke publik 5 tahun lalu. Untuk jenis kontrak seperti ini, pihak proyek harus melakukan pembaruan kontrak, memperkenalkan fitur penangguhan darurat, batasan parameter, serta fitur keamanan Solidity versi terbaru. Selain itu, audit keamanan tetap menjadi bagian yang tidak terpisahkan dari kontrak pintar. Melalui audit keamanan, perusahaan Web3 dapat memeriksa kode kontrak pintar secara menyeluruh sebisa mungkin, menemukan dan memperbaiki celah potensial, serta meningkatkan keamanan kontrak.
*Beosin akan menyediakan laporan analisis lengkap tentang aliran dana dan risiko alamat kali ini, silakan kirimkan ke email resmi support@beosin.com untuk mendapatkannya.


