Tamsayı Taşma Zafiyeti Nedeniyle Truebit Protokolü 8.535,36 ETH Kaybetti

iconBlockbeats
Paylaş
Share IconShare IconShare IconShare IconShare IconShare IconCopy
AI summary iconÖzet

expand icon
ETH haberleri: 8 Ocak 2026'da Truebit Protokolüne saldırı gerçekleşmiş ve yaklaşık 26,44 milyon dolar eden 8.535,36 ETH çalınmıştır. Saldırı, özellikle getPurchasePrice fonksiyonunda bulunan Solidity ^0,6.10 sürümündeki tamsayı taşması (integer overflow) yoluyla gerçekleştirilmiştir. ExVul Güvenliği, saldırganın TRU token'larını basıp yakarak dört tur işlem döngüsü gerçekleştirdiğini ve bu yolla protokolden ETH çaldığını doğrulamıştır. Bu olay, eski akıllı sözleşmelerin risklerini göstermektedir. ETH güncellemesi: Eski DeFi projelerindeki açıkları bulmak için yapay zeka araçlarının kullanımı giderek artmaktadır.
Başlık: "Truebit Protokolü'nde 26,44 Milyon Dolarlık Sözleşme Açığı Analizi"
Kaynak: ExVul Güvenliği


8 Ocak 2026 tarihinde Truebit Protocol protokolü hedef alınarak 8.535,36 ETH (yaklaşık 26,44 milyon ABD Doları) kaybedilmiştir. Olayın ardından Truebit Protocol resmi olarak bir sonraki gün sabahı açıklamayla bu saldırıyı doğrulamıştır. ExVul Güvenlik ekibi bu saldırı olayını ayrıntılı olarak açıklamış ve analiz sonuçları şu şekildedir:


Saldırı Akışı


Saldırgan adresi:


0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50


Saldırı işlemi hash:


0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014


Saldırgan, saldırı 4 turda getPurchasePrice→0xa0296215→0xc471b10b fonksiyonlarını çağırarak tamamlanmış. İlk tur üzerinden analiz yapalım.


1. Saldırgan önce getPurchasePrice(240442509453545333947284131) fonksiyonunu çağırır ve 0 döner.


2. Saldırgan, msg.value 0 olacak şekilde 0xa0296215(c6e3ae8e2cbab1298abaa3) fonksiyonunu çağırır. Sonuç olarak 240442509453545333947284131 adet TRU başarıyla basılır.



3. Saldırgan 0xc471b10b(c6e3ae8e2cbab1298abaa3) fonksiyonunu çağırır. Sonunda 240442509453545333947284131 TRU yok edilir ve 5105.06 ETH kazanılır.


Saldırı mantığı analizi


Yukarıdaki saldırı akışını anladıktan sonra, getPurchasePrice fonksiyonunun ve 0xa0296215 fonksiyonunun mantığında bir sorununun açıkça görülebileceğini fark edebilirsiniz. Şimdi daha derinlemesine analiz başlayacak (kontrat açık kaynaklı olmadığından, aşağıdaki kodlar tersine mühendislik yapılmış koddur).



İki fonksiyonun ortak yönlerini karşılaştırarak, 0x1446 fonksiyonunun belirli sayıda TRU satın almak için gerekli olan ETH miktarını hesaplamak için kullanıldığını görebiliriz. 0x1446 fonksiyonunun mantığında bir hata olduğu ve bu nedenle ETH hesaplamasının yanlış yapıldığı açıktır. Aşağıda 0x1446 fonksiyonundaki mantığı detaylı olarak analiz edeceğiz.



0x1446 fonksiyonundaki mantığı inceleyin. Son hesaplama sonucu v13 == 0 olduğu için, sorun kesinlikle yukarıdaki hesaplama mantığında olmalıdır. 0x18ef fonksiyonunun _SafeMul ile aynı işlevi görmediğini bilmek gerekir. Bu yüzden problem, v12 + v9 (native toplama) kullanımında olur (sözleşme sürümü ^0.6.10 olduğu için taşma kontrolü yoktur).


v12 ve v9, sırasıyla:



Yukarıdaki analizden, saldırganın saldırı mantığı _amountIn'e çok büyük bir değer girmek, v12 + v9'ı çok küçük bir değere taşımak ve sonunda (v12 + v9) / v6 == 0 olacak şekilde ayarlamaktır.


Özetleme


Truebit Protocol saldırısının temel nedeni, token satın alma fiyatının hesaplanmasında ciddi bir tamsayı taşma (integer overflow) açıklığı olmasıdır. Sözleşmelerin Solidity ^0.6.10 sürümü kullanması ve kritik aritmetik işlemlerde güvenlik kontrolleri yapılmaması, 8.535,36 ETH kaybına neden olmuştur. Şu anda yeni Solidity sürümleri, taşma açıklarını kendileri çözümlüyor. Bu saldırı büyük ihtimalle, AI ile daha önce yayınlanan eski DeFi protokollerini otomatik olarak taramak suretiyle keşfedilen bir açığı kullanarak gerçekleştirildi (son zamanlarda Balancer ve yETH saldırıları da dahil olmak üzere). Bu tür saldırıların son zamanlarda artacağını düşünüyoruz. Bu yüzden projelerin sözleşmelerinin yeni güvenlik denetimlerinden geçmesi, açıklar bulunursa sözleşmelerin hızlıca güncellenmesi veya varlıkların aktarılması ve zincir üzerindeki işlemleri izleyerek anormalliklerin zamanında tespit edilmesi ve zararların en aza indirilmesi önerilmektedir.


Bu makale, katkıda bulunan yazar tarafından yazılmış olup BlockBeats'in görüşlerini yansıtmaz.


İş ilanlarını öğrenmek için BlockBeats'te bir pozisyona tıklayın


律动 BlockBeats resmi topluluğuna hoş geldiniz:

Telegram abonelik grubu:https://t.me/theblockbeats

Telegram sohbet grubu:https://t.me/BlockBeats_App

Resmi Twitter hesabı:https://twitter.com/BlockBeatsAsia

Yasal Uyarı: Bu sayfadaki bilgiler üçüncü şahıslardan alınmış olabilir ve KuCoin'in görüşlerini veya fikirlerini yansıtmayabilir. Bu içerik, herhangi bir beyan veya garanti olmaksızın yalnızca genel bilgilendirme amacıyla sağlanmıştır ve finansal veya yatırım tavsiyesi olarak yorumlanamaz. KuCoin, herhangi bir hata veya eksiklikten veya bu bilgilerin kullanımından kaynaklanan sonuçtan sorumlu değildir. Dijital varlıklara yapılan yatırımlar riskli olabilir. Lütfen bir ürünün risklerini ve risk toleransınızı kendi finansal koşullarınıza göre dikkatlice değerlendirin. Daha fazla bilgi için lütfen Kullanım Koşullarımıza ve Risk Açıklamamıza bakınız.