Truebit Protocol Dirempuh Kerana Kerosakan 8,535.36 ETH Disebabkan Kekurangan Integer Overflow

iconBlockbeats
Kongsi
Share IconShare IconShare IconShare IconShare IconShare IconCopy
AI summary iconRingkasan

expand icon
Berita ETH: Protokol Truebit telah dihacker pada 8 Januari 2026, dengan 8,535.36 ETH (kira-kira $26.44 juta) dicuri. Serangan ini memanipulasikan integer overflow dalam Solidity ^0.6.10, khususnya dalam fungsi getPurchasePrice. ExVul Security mengesahkan penyerang menggunakan looop transaksi empat putaran untuk mencetak dan membakar token TRU, menyebabkan ETH dikeluarkan dari protokol. Kejadian ini menunjukkan risiko kontrak pintar yang usang. Kemas kini ETH: Alat AI semakin digunakan untuk mencari kelemahan dalam projek DeFi yang lebih lama.
Tajuk asal: "Analisis Kelemahan Kontrak Kecurian $26.44 Juta Truebit Protocol"
Sumber asal: ExVul Security


Pada 8 Januari 2026, protokol Truebit Protocol telah diceroboh, menyebabkan kehilangan sebanyak 8,535.36 ETH (kira-kira 26.44 juta dolar AS). Pihak rasmi Truebit Protocol mengesahkannya dalam satu kenyataan yang dikeluarkan pada pagi harinya. Kumpulan keselamatan ExVul telah membuat analisis terperinci mengenai kelemahan yang menyebabkan serangan ini, dan keputusan analisisnya adalah seperti berikut:


Proses serangan


Alamat penyerang:


0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50


Hash perdagangan serangan:


0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014


Pengganas menyelesaikan serangan dengan memanggil transaksi getPurchasePrice→0xa0296215→0xc471b10b dalam 4 putaran. Kita akan menganalisis contoh putaran pertama.


1. Pengganas memanggil fungsi getPurchasePrice(240442509453545333947284131) terlebih dahulu, dan mengembalikan 0.


2. Penggodam memanggil fungsi 0xa0296215(c6e3ae8e2cbab1298abaa3) dengan msg.value sifar. Akhirnya berjaya mencetak sebanyak 240442509453545333947284131 TRU.



3. Penyerang memanggil fungsi 0xc471b10b(c6e3ae8e2cbab1298abaa3). Akhirnya memusnahkan 240442509453545333947284131 TRU, dan mendapat 5105.06 ETH.


Analisis Logik Serangan


Dengan memahami alur serangan di atas, kita boleh jelas mengesan bahawa terdapat masalah logik dalam fungsi getPurchasePrice dan fungsi 0xa0296215. Kita akan mula menganalisis lebih lanjut (kerana kontrak ini tidak dibuka sumber, kod di bawah adalah kod yang diterjemah balik).



Dengan membandingkan kesamaan antara dua fungsi, kita boleh menemui bahawa fungsi 0x1446 digunakan untuk mendapatkan jumlah ETH yang diperlukan untuk membeli kuantiti TRU yang ditentukan. Jelasnya, terdapat masalah logik dalam fungsi 0x1446 yang menyebabkan kesilapan pengiraan ETH. Analisis logik dalam fungsi 0x1446 akan diterangkan secara terperinci di bawah.



Perhatikan logik dalam fungsi 0x1446, kerana keputusan pengiraan akhir v13 == 0, jadi pasti terdapat masalah dalam logik pengiraan sebelumnya. Perlu diperhatikan bahawa fungsi 0x18ef mempunyai fungsi yang sama dengan _SafeMul, jadi masalahnya berlaku disebabkan penggunaan penambahan asal v12 + v9 (versi kontrak ialah ^0.6.10, jadi tiada pemeriksaan kebocoran).


v12 dan v9 masing-masing merujuk kepada:



Melalui analisis di atas, pendekatan serangan penyerang adalah dengan memasukkan _amountIn yang sangat besar, menyebabkan v12 + v9 melimpah menjadi nilai yang sangat kecil, akhirnya menyebabkan (v12 + v9) / v6 == 0.


Ringkasan


Penyebab utama serangan ke atas Truebit Protocol ialah kelemahan integer overflow yang serius dalam logik pengiraan harga jualan token. Disebabkan kontrak menggunakan versi Solidity ^0.6.10 dan tidak mempunyai mekanisme pemeriksaan keselamatan untuk operasi aritmetik penting, akhirnya menyebabkan kehilangan besar sebanyak 8,535.36 ETH. Pada masa kini, versi Solidity terkini sendiri telah mengatasi kelemahan integer overflow. Serangan ini mungkin dilakukan oleh penjenayah siber yang menggunakan AI secara automatik untuk memeriksa kelemahan dalam beberapa protokol DeFi lama yang sedia ada (termasuk serangan Balancer dan yETH sebelum ini). Kami percaya kes serangan seperti ini yang menggunakan AI untuk menyerang protokol DeFi lama akan semakin meningkat dalam tempoh terdekat, jadi kami mencadangkan pihak projek menjalankan audit keselamatan semula terhadap kod kontrak mereka. Jika kelemahan dikesan, mereka perlu segera mengemaskini kontrak atau memindahkan aset, serta memantau transaksi di blockchain dengan teliti untuk memastikan kejadian tidak normal dapat dikesan secepat mungkin dan mengurangkan kehilangan kepada tahap minimum.


Artikel ini adalah sumbangan daripada pembaca, dan tidak mewakili pendapat BlockBeats.


Klik untuk mengetahui BlockBeats dan jawatan kosong yang ditawarkan


Sertai komuniti rasmi Ludi BlockBeats:

Telegram Kumpulan Langganan:https://t.me/theblockbeats

Kumpulan Telegram:https://t.me/BlockBeats_App

Akaun rasmi Twitter:https://twitter.com/BlockBeatsAsia

Penafian: Maklumat yang terdapat pada halaman ini mungkin telah diperoleh daripada pihak ketiga dan tidak semestinya menggambarkan pandangan atau pendapat KuCoin. Kandungan ini adalah disediakan bagi tujuan maklumat umum sahaja, tanpa sebarang perwakilan atau waranti dalam apa jua bentuk, dan juga tidak boleh ditafsirkan sebagai nasihat kewangan atau pelaburan. KuCoin tidak akan bertanggungjawab untuk sebarang kesilapan atau pengabaian, atau untuk sebarang akibat yang terhasil daripada penggunaan maklumat ini. Pelaburan dalam aset digital boleh membawa risiko. Sila menilai risiko produk dan toleransi risiko anda dengan teliti berdasarkan keadaan kewangan anda sendiri. Untuk maklumat lanjut, sila rujuk kepada Terma Penggunaan dan Pendedahan Risiko kami.