İlk işlemde, başlatıcı cüzdan bir flaş kredi geri ödendikten sonra yaklaşık 4.75M USDT aldı; oylama için kullanılan mevduatlar ise kilitli kaldı. 24 Ekim 2026 tarihinde, ödünç alınan USDT, X100 senatosundaki üç koltuktan ikisini almaya yetecek kadar X token satın almak için kullanıldı. Elde edilen çoğunluk, yürütücü sözleşme tarafından kontrol edilen likidite aracılığıyla hazine işlemlerini hemen onayladı. Alınan X token'ların satılması, kredinin geri ödenmesini ve kalan fonların ödenmesini mümkün kıldı. Üç ana işlem boyunca, alıcılara yaklaşık 4.848M USDT ödendi. İki ek işlem dahil edildiğinde, meşru havuzdan net USDT çıkışı yaklaşık 4.849M USDT'ye ulaştı.
Temel mekanizma, geçmiş işlem kayıtlarıyla doğrulanmaktadır. İzleme, belirtilen kesim noktasına kadar alınan fonların bireysel rotalarını kapsamaktadır; nihai servis adresi, blokzincir gezgini içindeki bir etiketle tespit edilmiştir.

Adresler ve rolleri
Aşağıdaki tüm adresler Ethereum ağındadır. Roller, hesapları kontrol eden kişilerin kimliklerini değil, hesapların gözlemlenen davranışlarını tanımlamaktadır.
| Adres | Belirlenen rol |
|---|---|
| 0x100a2c7f45fd48e217fdce72e658dc78fd43a100 | X token'ı; altı ondalık basamak |
| 0x79f35a33fe2813414851c4ae8daeacd14d822a46 | Freezer: mevduatları, senato yetkilerini ve hazine varlıklarını tutar |
| 0xcd5762ac6013fa762782ac1797ab09152c1028e8 | Hazine DEX modülü |
| 0x0d85edd90c94053fc5997551b1baa8a77aa02fa0 | Meşru X/USDT havuzu |
| 0x7ec2afdf3ec5964899894f8d58afa95cbb8ffd63 | İlk işlemin göndericisi ve USDT alıcısı |
| 0x37541fc4a6f1ec86889ba506f51dc39f2bedd10a | İlk işlemin yürütücü sözleşmesi; X token'ları elinde tuttu |
Arka plan
X100 kullanıcıları, X token'larını Freezer sözleşmesinde kilitler. Senato, kayıtlı hesapları mevcut kilitli token miktarlarına göre sıralar. Hazine likiditesini ve takasları içeren işlemleri onaylamak için üçte iki oy yeterlidir. Kayıt ücretleri, kilitli mevduatlardan ayrı olarak tahsil edilir.
Freezer, kullanıcı mevduatlarının yanı sıra hazine X token'larını da tutar. Bir işlem yürütüldükten sonra sözleşme, dondurulmuş fonlara ilişkin yükümlülüklerini karşılamak için yeterli X kalıp kalmadığını kontrol eder. Ayrı bir token limiti, piyasaya sürülebilecek varlık miktarını sınırlar. Likidite pozisyonlarının geri çekilmesi, bu limit altında yer açar. Ancak bu önlemlerin hiçbiri tek başına hazine işlemlerinin adil koşullarda gerçekleştirildiğini garanti etmez.
Saldırının nasıl gerçekleştiği
Saldırgan, akıllı sözleşmenin kaynak kodundaki bir güvenlik açığından yararlanmayı mümkün kılan karmaşık bir dizi eylem gerçekleştirdi.
1. Senato kontrolünün ele geçirilmesi
14:11:47 UTC'de, 26,263,022 numaralı bloğa dahil edilen ilk işlem, Aave'den 1,942,457.637245 USDT borç aldı ve yaklaşık 38,200 X token satın aldı. İki yardımcı hesap her biri 19,000.000001 X kilitledi ve aday gösterilmek için ayrı ayrı 100 X ödedi.
Bundan önce, sıralamada ikinci sırada 19,000 X'e sahip bir katılımcı bulunuyordu.
Oylama mevcut sıralamaya dayandığından ve bir kararın yürütülmesi belirli bir bekleme süresi gerektirmediğinden, yeni çoğunluk işlemi aynı işlem içinde gerçekleştirdi.
2. Yetkilerin hazine varlıklarına dönüştürülmesi
Elde edilen çoğunluk, işlemin kendisi tarafından oluşturulan ve kontrol edilen likidite aracılığıyla 400,000 X'in yaklaşık 35.68 USDT ile takasını onayladı. Yürütücü sözleşme yaklaşık 399,987 X aldı ve ardından meşru piyasada yaklaşık 131,703 X'i yaklaşık 6.693M USDT karşılığında sattı.
Aave, yaklaşık 971.23 USDT'lik bir finansman ücreti dahil olmak üzere yaklaşık 1.943M USDT aldı. Başlatıcı cüzdan yaklaşık 4.75M USDT aldı ve yürütücü sözleşme yaklaşık 268,284 X'i elinde tuttu. Oylama için kullanılan mevduatlar kilitli kaldı: alınan fonlar, token'ların kilidini açmadan kredinin geri ödenmesini mümkün kıldı. Ödeme kayıtları, aynı paranın hareketindeki ardışık aşamaları göstermektedir; bu tutarlar toplanamaz, çünkü bu durum kayıpların iki kez sayılmasına neden olur.
3. Yetkilerin yeniden kazanılması ve yeniden kullanılması
14:35:59'de, ikinci işlem, iki adet 19,000.000002 X yatırımı oluşturmak ve ilk katılımcı çiftini yerinden etmek için Morpho'dan 1.95M USDT'lik bir flaş kredi kullandı. Hazine likidite pozisyonlarından yapılan beş çekim, bir sonraki kendi kendine takastan önce limit altında yer açarak yaklaşık 50,000 X geri döndürdü. Kredi geri ödendikten sonra, alıcı yaklaşık 96,382 USDT ve 9,895 X aldı.
14:40:47'de, üçüncü işlem, yeni kilitli token edinmeden, ikinci operasyondan kalan yardımcı sözleşmelerin zaten sahip olduğu yetkileri kullandı. Bunu yapmak için 300 USDT'lik bir flaş kredi aldı ve büyük bir hazine likidite pozisyonunu çekti. Nihai ödeme yaklaşık 1,909 USDT ve 549,916 X tuttu. Geçmiş sözleşme çağrıları, operasyonun teklif sunmak ve zaten elde edilmiş senato koltuklarıyla oy kullanmak için yardımcı hesapları kullandığını gösteriyor. Bitquery'ye göre, bu yeniden kullanım, yönetişime erişim açan yardımcı sözleşme fonksiyonlarının hangi adreslerin bunları çağırabileceğini kısıtlamaması nedeniyle mümkün oldu. Ancak bu erişim kontrolü açıklaması bu analiz kapsamında bağımsız olarak doğrulanmadı. Farklı başlatıcı cüzdanlar, tek başına, arkalarında farklı kişilerin olduğunu kanıtlamaz.
14:40:59 ve 14:41:23'te iki işlem daha gerçekleşti. Bu işlemler, havuzdan net USDT çıkışını yaklaşık 168.61 USDT artırdı. Her iki işlem de aynı adresten gönderildi ve sıra numaraları (nonce'lar) birbirini takip ediyordu.
| Ana işlem | Alıcıya ödenen USDT | Meşru havuzdan net USDT çıkışı |
|---|---|---|
| Birinci | 4,749,726.096973 | 4,750,733.001112 |
| İkinci | 96,381.883491 | 96,381.884163 |
| Üçüncü | 1,909.358758 | 1,873.897121 |
| Üç ana işlem için toplam | 4,848,017.339222 | 4,848,988.782396 |
Üçüncü ödeme de daha önce hazineden alınan USDT'yi kullandı. Bu nedenle ödeme tutarı, bu işlemin doğrudan neden olduğu havuz fonlarındaki azalmayı aşıyor. Sonraki iki işlem de eklendiğinde, beş işlemin tümünde havuzdan toplam çıkış yaklaşık 4,849,157.396718 USDT'ye ulaşıyor. Ödünç alınan fonlar, ödemeler, takaslar ve adreslerde kalan varlıklar kısmen aynı para akışlarıyla ilgilidir. Satılmayan X tokenleri dolar tahminine dahil edilmemiştir.
4. Elde edilen fonların takası ve taşınması
İlk alıcı yaklaşık 4.75M USDT'yi 2,022.016 ETH ile takas etti. Ardından konsolide edici bir adres, zaten elinde bulunan fonlarla birlikte bu ETH'yi aldı ve dört parti halinde 400 ETH gönderdi. Veri kesim noktasında, 26 Ekim, 01:20:23 UTC itibarıyla, kontrol edilen beş tutma adresi, bu dönüşümden gelen fonlarla ilgisi olmayan küçük bakiyeler dahil, yaklaşık 2,022.857 ETH tutuyordu.
İkinci alıcı yaklaşık 96,382 USDT'yi 40.908 ETH ile takas etti. İki ara adres, Etherscan'in ChangeNOW Dep olarak etiketlediği bir adrese yaklaşık 40.900 ETH taşıdı. Fon takibi burada sona eriyor: müşterinin kimliği, sonraki ödemeler ve paranın nihayetinde nakde çevrilip çevrilmediği doğrulanmamıştır.

Güvenlik açığı
Yönetişim kontrolünü ele geçirmenin maliyeti, ne varlıkların piyasa değeriyle ne de oy kullanmak için gereken yatırım miktarıyla neredeyse hiç ilişkili değildi. Oy yatırımları kilitli kalmasına rağmen, elde edilen çoğunluk, kontrolü satın almak için kullandığı krediyi geri ödemeye yetecek kadar likit fon çekebildi.
Bu durumu mümkün kılan üç tasarım özelliği:
- Yetkiler, yeni bir yatırım yapıldıktan hemen sonra ortaya çıkıyordu. Freezer._stakeOf ve Senate._tally fonksiyonları, mevcut kilitli token miktarını ve katılımcıların sıralamasını kullanıyordu. Bir teklifin geçerlilik süresi, yürütülebileceği zaman dilimini sınırlıyordu, ancak incelenen yürütme yolunda yürütmeden önce minimum bir bekleme süresi yoktu. İki yeni hesap çoğunluğu elde etti ve bunu hemen kullandı.
- Geçerli bir teklif için verilen oylar, kendi kendine işlemlere izin veriyordu. DEX modülü, ilgili tokenlerin izinli olup olmadığını ve havuzun var olup olmadığını kontrol ediyor, ardından teklifte belirtilen minimum getiriyi kabul ediyordu. İşlem koşullarının adil olup olmadığına dair bağımsız bir kontrol sağlamıyor ve yürütücü tarafından kontrol edilen likiditenin kullanılmasını dışlamıyordu. Böylece resmi olarak onaylanmış bir operasyon, hazine varlıklarının operasyonun kendisi tarafından belirlenen koşullarda çekilmesini mümkün kıldı.
- Miktar kontrolleri yalnızca daha dar bir koşulu korudu. Dondurulmuş fonların toplam tutarının karşılandığına dair kontrol, kayıtlı X token yükümlülüklerinin uyumlu kalmasını sağladı. Aynı zamanda, likidite pozisyonlarının geri çekilmesi, piyasada varlık dağıtımı üzerindeki limit altında alan açtı. Bu kontrollerden hiçbiri hazine değerindeki kabul edilebilir kayıpları sınırlamadı. Buna ek olarak, yardımcı sözleşmeler, önceki bir operasyonda zaten elde edilmiş yetkilerin yeniden kullanılmasına izin verdi.
Müdahale ve geri kazanım
Toplanan materyaller, fonların iade edildiğine veya güvenlik açığının etkin şekilde giderildiğine dair bağımsız bir doğrulama içermiyor. Kayıtlı kesim noktasında meşru havuzda yaklaşık 1.97 USDT kalmıştı ve kontrol edilen üç yürütme ve ödeme adresinde yaklaşık 826,902 X bulunuyordu. Bu likit olmayan X bakiyeleri, kurumuş bir piyasanın durumuna dayanarak güvenilir biçimde dolar cinsinden değerlendirilemez.
Freezer, dondurulmuş mevduatlar üzerindeki kayıtlı yükümlülükleri hâlâ karşılıyordu ve senato, ikinci operasyon sırasında elde edilen ve sözleşmelerce kontrol edilen iki koltuğa hâlâ sahipti. Gözlemlenen dağıtım limitinden önce yalnızca 0.000002 X kalmıştı. Ancak bu anlık görüntü, yönetişim kontrolünün geri kazanıldığını veya mekanizmasının düzeltildiğini kanıtlamıyor.
Geriye dönüp bakınca: kontrolün bedeli
Yönetişim mekanizmalarına yönelik diğer saldırılar, kontrolü ele geçirmek için ne kadar paraya ihtiyaç duyulduğunu, bu kontrolün hangi yetkileri sağladığını ve varlıkların değerinin ne kadarının fiilen gerçekleştirildiğini karşılaştırmayı mümkün kılıyor.
| Olay | Tarih | Bildirilen zarar |
|---|---|---|
| BonkDAO | 2026 6 Temmuz | 4.426 trilyon BONK taşındı, yaklaşık $19.3M değerinde |
| Term Finance | 2026 23 Ağustos | ETH ve USDC cinsinden yaklaşık $8.46M |
| Astroport / Neutron | 2026 22 Eylül | Toplam varlık değerinde yaklaşık $9.4M; likit varlıklarda $1.96M |
| Arkadiko | 2026 22 Ekim | Arkadiko'nun boşaltılmasının bir parçası olarak yaklaşık $1.09M |
Bu vakalar ve tahminler yayımlanmış raporlara dayanmaktadır; her saldırıdaki eylemlerin tam sırası bağımsız olarak yeniden oluşturulmamıştır. Hesaplamalarda farklı değerleme yaklaşımları kullanılmıştır ve belirtilen token değeri, tek başına, bunların karşılık gelen tutar için satılabileceğini kanıtlamaz.
Finansal maruziyet. BonkDAO vakasında oylama tokenleri iade edilmiş, Arkadiko vakasında ise DIKO tokenleri yeniden satılmıştır. Bu durum, mevduatların kilitli kaldığı X100 durumundan farklıdır. Kontrolü ele geçirmek için gereken sermaye ile sonrasında risk altında kalan fonlar farklı göstergelerdir. Bu vakalarda kontrolü ele geçirmenin tam net maliyeti bağımsız olarak yeniden oluşturulmamıştır. Raporlara göre, Term Finance'te kontrol, yönetişim tokeni etrafındaki bir sarmalayıcı (wrapper) aracılığıyla, yalnızca az sayıda bu tür token ihraç edilmiş şekilde ele geçirilmiş; yürütme ise oylama döneminin ardından gerçekleşmiştir.
Yetkiler. Yayımlanan verilere göre, Astroport / Neutron'daki olaylar dizisi, sözleşme yöneticilerinin on bir kez yeniden atanmasını ve ardından on kötü amaçlı taşıma işlemi ile varlık çekimlerini içeriyordu. Arkadiko'da, çağıranın izinlerini kontrol etmeyen genel para çekme ve basım (minting) fonksiyonlarına sahip ayrıcalıklı bir sözleşme onaylanmıştı. X100'de ise çoğunluk, bunun yerine hazinenin kendi kendine ticaretini onayladı. Bu vakaların tümünde, oy hakları varlıkları kontrol etmenin farklı yollarına erişim sağladı.
Gerçekleştirilebilir değer. Çalınan BONK'un yalnızca bir kısmı bir borsaya taşındı; tokenlerin bir borsa adresine yatırılması, tek başına, satıldıklarını kanıtlamaz. X100, olası geliri güvenilir biçimde belirlenemeyen satılmamış X tokenlerini elinde tuttu. Arkadiko'da USDA tokenlerinin yakılması, teminatsız arzı azalttı ancak teminatı geri getirmedi. Hazine tokenlerinin tahmini değeri, ihraç edilen token miktarı ve bir satıştan fiilen elde edilen fonlar farklı göstergelerdir.

