Geçen hafta (2026/07/06 - 2026/07/12) toplamda 3 önemli güvenlik olayı tespit edilmiş ve bu olaylar sonucunda yaklaşık 36,29 milyon dolar kayıp yaşanmıştır.
| Tarih | Olay | Tür | Tahmini Kayıp |
|---|---|---|---|
| 2026/07/06 | Summer.fi | Yanlış Yapılandırma | ~$6,04M |
| 2026/07/06 | BonkDAO | Hatalı Yönetişim | ~$21,2M |
| 2026/07/11 | Bonzo Lend | Hatalı İmza Doğrulaması | ~$9,05M |
- Summer.fi: Çok katmanlı vault protokollerinde, tam olarak kaldırılmamış bir alt bileşenin üst düzeydeki hisse fiyatlarını sessizce nasıl bozabileceğini gösterdiği için seçilmiştir; bu durum, bozulmuş konumlar istismar edilebilir hale gelmeden önce devre dışı bırakma işleminin tamamlanmasının kritik önemini vurgulamaktadır.
- Bonzo Lend: Oracle katmanındaki BLS doğrulamasında bulunan ince bir kusurun imza güvenliğini tamamen nasıl atlatabildiğini, sahte fiyat köklerine ve etkilenen doğrulayıcıya bağımlı protokoller için sistemik riske yol açtığını gösterdiği için seçilmiştir.
Web3 İçin En İyi Güvenlik Denetçisi
Lansmandan önce tasarımı, kodu ve iş mantığını doğrulayın
Haftanın Öne Çıkanı: Summer.fi
Bu olay; çok katmanlı vault protokollerinde, tam olarak kaldırılmamış bir alt bileşenin üst düzeydeki hisse fiyatlarını sessizce nasıl bozabileceğini gösterdiği için öne çıkarılmıştır. Bu örüntü, iç içe geçmiş veya harici kaynaklardan değerleri her katkıda bulunanın hâlâ sağlıklı olup olmadığını doğrulamadan toplayan herhangi bir sistem için geniş çapta geçerlidir.
6 Temmuz 2026'da Ethereum üzerindeki Summer.fi FleetCommander vault'u yaklaşık 6,04 milyon dolar için istismar edildi [1][2]. Temel neden, Summer.fi'nin FleetCommander'ının totalAssets() hesaplanırken devre dışı bırakma amacıyla sınırlandırılmış ancak henüz aktif kümeden çıkarılmamış bir strateji bileşenini (Ark olarak adlandırılan) saymaya devam etmesiydi. Saldırgan, Ark'ın hâlâ nominal değere yakın fiyatlandırdığı büyük miktarda bayat ve aşırı değerlenmiş vgUSDC tokeni biriktirdi; ardından bu tokenleri doğrudan Ark'a transfer ederek FleetCommander'ın hisse fiyatını şişirdi ve şişirilmiş fiyattan itfa işlemi gerçekleştirdi.
Arka Plan
Summer.fi, vault-içinde-vault mimarisi üzerine inşa edilmiş bir DeFi getiri toplayıcısıdır. Kullanıcılar varlıklarını FleetCommander adlı bir ERC-4626 ana vault'a yatırır; bu vault, fonları çeşitli temel borç verme ve getiri protokollerine Ark adı verilen strateji adaptörleri aracılığıyla yönlendirir. FleetCommander'ın toplam varlıkları her Ark'ın kendi bildirdiği değerden toplanır ve kullanıcılar bu toplu değerlemeye göre paylarını istedikleri zaman itfa edebilir.
Temel getiri kaynaklarından biri Morpho'dur. FleetCommander, bir Ark aracılığıyla fonları bir Morpho Vault'una yatırır ve o vault'ta tuttuğu paylar üzerinden kendisini değerlendirir. Kullanıcı FleetCommander paylarını itfa ettiğinde, ana vault'un nakit tamponu yetersizse fonları alt vault'lardan yukarı doğru çeker:
Kullanıcı FleetCommander paylarını itfa eder
| (1) Kullanıcının paylarını yak
v
FleetCommander
| (2) Önce tampondan öde; ardından Ark'lardan çek
v
Ark
| (3) Nakit sağlamak için temel vault'taki kendi paylarını itfa eder
v
Morpho Vault
(4) Ödeme yapmak için temel piyasalardan çekim yapar
Her Ark, totalAssets() hesaplamasını temel vault'taki kendi token bakiyesini sorgulayarak ve bu payları varlıklara dönüştürerek gerçekleştirir. Bu paylar standart ERC-20 tokenleri olduğundan, herhangi biri FleetCommander'ın yatırım akışından geçmeden ek payları doğrudan Ark'a transfer edebilir.
Güvenlik Açığı Analizi
Etkilenen FleetCommander'lar LowerRisk USDC vault'u (0x98C4...cF17) ve HigherRisk USDC vault'udur (0xE9cD...cB06). Manipüle edilen Silo Varlamore Ark'ı 0x61d7...76c2 adresindedir.
İstismarın zeminini hazırlayan iki koşul vardı:
-
Bayat ve aşırı değerlenmiş bir varlık. Stream Finance'in Kasım 2025'te çökmesinin [3] ardından getiri tokeni
xUSDdeğerinin %75'inden fazlasını yitirince,xUSDdestekli pozisyonlar tutan Silo "Varlamore USDC Growth" vault'u büyük ölçüde kurtarılamaz hale geldi. Ancak vault'un zincir üzeri muhasebesi bu kaybı hiçbir zaman yansıtmadı:vgUSDCtokenleri, temelUSDCmahsur kalmış olmasına karşınconvertToAssets()aracılığıyla nominal değere yakın değer bildirmeye devam etti. -
Kısmen kaldırılmış bir Ark. Bu bozulmuş pozisyonu tutan Ark, yatırım limiti 0'a ayarlanarak devre dışı bırakılma sürecindeydi. Ancak limiti sıfırlamak yalnızca FleetCommander üzerinden yapılan yeni yatırımları engeller. Ark'ı
totalAssets()hesaplamasından çıkarmaz.
Bir Ark, totalAssets() hesaplamasını vault.balanceOf(address(this)) çağırarak ardından vault.convertToAssets(shares) çağırarak gerçekleştirir. Bu paylar transfer edilebilir ERC-20 tokenleri olduğundan, herhangi biri bayat ve aşırı değerlenmiş vgUSDC'yi doğrudan Ark'a transfer edebilir; böylece yeni pay basılmadan ve gerçek çekilebilir likidite eklenmeden Ark'ın bildirilen totalAssets() değerini şişirebilir. Bu şişirme FleetCommander'ın hisse fiyatına yayılır.


Saldırı Analizi
Aşağıdaki analiz, 0x0db528...43da12 işlemine dayanmaktadır.
-
Adım 1: Saldırgan, önceki üç ay boyunca birden fazla cüzdan aracılığıyla yaklaşık 19,08 milyar
vgUSDCbiriktirdi ve ardından istismardan kısa süre önce bunları saldırı sözleşmesinde topladı. -
Adım 2: Saldırgan, Morpho Blue'dan 1.000.000
USDTflaş kredi aldı ve ardından saldırıyı finanse etmek için iç içe geçmiş ikinci bir 65.419.171USDCflaş kredi kullandı. -
Adım 3: Saldırgan, birden fazla Morpho V2 vault'unda
forceDeallocate()çağırarak 4.318.535USDC'yi Morpho Blue piyasalarından geri vault'ların boşta duran bakiyelerine çekti. Bu, sonraki adımda şişirilmiş itfayı ödemek için yeterli likit sermayenin mevcut olmasını sağladı.

-
Adım 4: Saldırgan, Uniswap V4'te 20.000
USDT'yi yaklaşık 68.421xUSDile takas etti; ardından buxUSD'yi Balancer V3'te yaklaşık 476,27 milyonvgUSDCile takas etti. Böylece minimum gerçek maliyetle ek bayat token biriktirdi. -
Adım 5: Saldırgan, FleetCommander LVUSDC'ye 64.828.534
USDCyatırdı ve karşılığında 60.787.156 pay aldı. -
Adım 6: Saldırgan, yaklaşık 19,55 milyar
vgUSDCpayını doğrudanvgUSDCArk'ına transfer etti. Ark'ıntotalAssets()hesaplaması, bu payların nasıl geldiğinden bağımsız olarak tuttuğu tüm payları saydığından, bu işlem Ark'ın bildirilen değerini şişirdi ve buna bağlı olarak FleetCommander'ıntotalAssets()değerini de şişirdi.

- Adım 7: Saldırgan, 60.766.209 FleetCommander payını 70.959.584
USDCkarşılığında itfa etti ve şişirilmiş hisse fiyatı ile orijinal yatırım arasındaki farktan kâr elde etti.

- Adım 8: Saldırgan, aynı atomik işlem içinde HigherRisk USDC FleetCommander'a da benzer bir şişirme uyguladı. HigherRisk ayağında
vgUSDCyerine HigherRisk Term Ark'ına bağışlanan Term payları kullanıldı; ancak temel mekanizma aynıydı: bağış yoluylatotalAssets()değerini şişirip şişirilmiş fiyattan itfa işlemi gerçekleştirmek. Her iki vault'tan elde edilen toplam kâr yaklaşık 6,04 milyon dolardı.
Sonuç
Bu, bir kod hatası değil, operasyonel bir başarısızlıktan kaynaklanan hisse fiyatı şişirme saldırısıydı. Stream Finance'in çöküşüyle bozulmuş bir Silo Ark, devre dışı bırakılma sürecindeyken FleetCommander'ın totalAssets() hesaplamasına dahil edilmeye devam etti [2]. Saldırgan, ucuza biriktirdiği ancak bayat ve aşırı değerlenmiş vgUSDC'yi bu Ark'a bağışlayarak hisse fiyatını şişirdi ve diğer yatırımcıların zararına yatırdığından fazlasını itfa etti.
Yatırım limitini sıfırlamak bir Ark'ı devre dışı bırakmaz. Çok katmanlı vault sistemlerinde totalAssets(), devre dışı bırakılan pozisyonları dışlamalıdır; varlıklar bayat zincir üzeri fiyatlar yerine gerçekleştirilebilir değer üzerinden fiyatlandırılmalıdır. Devre dışı bırakılan herhangi bir bileşen, şişirme vektörü olarak kullanılabilir hale gelmeden önce toplam değerlemenin tamamen dışında bırakılmalıdır.
Referanslar
- [1] X'te Phalcon Uyarısı
- [2] Summer.fi Topluluk Çağrısı Özeti
- [3] Stream Finance 93 Milyon Dolar Kayıpla Karşı Karşıya (CoinDesk)
Bu Haftaki Diğer Olaylar
Bonzo Lend
11 Temmuz 2026'da Hedera üzerindeki bir borç verme protokolü olan Bonzo Lend, bir saldırganın SAUCE fiyat beslemesi için protokolün üçüncü taraf fiyat akışı sağlayıcısı Supra'ya sahte bir oracle güncellemesi göndermesinin ardından yaklaşık 9,05 milyon dolar kayıp yaşadı [1]. Oracle doğrulayıcısı sıfır imzalı bir kanıtı kabul etti ve zincir üzerine şişirilmiş bir SAUCE/WHBAR fiyatı yazdı. Bonzo Lend ardından manipüle edilmiş beslemeleri okudu ve saldırganın yatırılan SAUCE teminatının gerçek değerinin çok ötesinde varlık ödünç almasına izin verdi.
Arka Plan
Bonzo Lend, Hedera üzerinde bir borç verme protokolüdür. Piyasa muhasebesi, SAUCE gibi ekosistem varlıkları için üçüncü taraf bir oracle ağı olan Supra dahil harici fiyat beslemelerine bağlıdır. Bonzo Lend, her oracle komitesi imzasını kendisi doğrulamaz; oracle'ın zincir üzeri beslemesinde halihazırda depolanan son değeri okur ve teminat değerini ile ödünç alma kapasitesini hesaplarken bu değeri kullanır.
Supra'nın çekme-oracle güncelleme yolu, besleme verilerini depoya yazmadan önce gönderilen bir kökü doğrular. İlgili kod yolunda verifyOracleProofV2(), gönderilen oracle verilerini yineleyerek merkleSet'te önceden önbelleğe alınmayan kökler için requireRootVerified() çağırır, Merkle yapraklarını doğrular ve ardından packData() aracılığıyla daha yeni besleme turlarını yazar.
if (merkleSet.contains(oracle.data[i].root)) {
continue;
}
requireRootVerified(oracle.data[i].root, oracle.data[i].sigs, oracle.data[i].committee_id);
if (!merkleSet.set(oracle.data[i].root)) {
revert RootIsZero();
}
Besleme güncellemesinin güvenliği, requireRootVerified() işlevinin yapılandırılmış oracle komitesi tarafından gerçek anlamda imzalanmamış kökleri reddetmesine bağlıdır.
Güvenlik Açığı Analizi
Hatalı sözleşme, Supra oracle doğrulayıcısıdır (0.0.4323006).
Temel neden, yukarı akış Supra oracle doğrulayıcısındaki geçersiz BLS doğrulama yoluydu. İstismar işlemi, komite ID 2 ve sıfırlanmış imza değeri [0, 0] ile 425. çift (SAUCE/WHBAR) için bir fiyat güncellemesi gönderdi.
Normal bir BLS kontrolünde doğrulayıcı, eşleştirme ön derlemesini çağırmadan önce imzanın ve ortak anahtarın sıfır olmadığını, eğri üzerinde olduğunu ve doğru alt grupta bulunduğunu doğrulamalıdır. Güvenlik açığı olan doğrulayıcı, sıfır imza noktası ve sıfır komite ortak anahtar noktasından bir eşleştirme kontrolü oluşturdu. Hedera eşleştirme ön derlemesi, gerçek bir komite imzası var olduğu için değil, kimlik noktaları için eşleştirme çarpımı matematiksel olarak geçerli olduğu için true döndürdü.
Doğrulayıcı girdi geçerliliğini kontrol etmelidir; ön derleme yalnızca eşleştirme denklemini kontrol eder. Eşleştirmeden önce sıfır nokta reddini gerçekleştirmeyerek oracle, sahte bir kökü kabul etti ve manipüle edilmiş fiyat verilerinin depoya geçmesine izin verdi.
function requireHashVerified_V2(
bytes32 _message,
uint256[2] calldata _signature,
uint256 committee_id
) public view {
bool callSuccess;
bool checkSuccess;
(checkSuccess, callSuccess) = BLS.verifySingle(
_signature,
committee_public_key[committee_id],
BLS.hashToPoint(domain, abi.encode(_message)),
blsPrecompileGasCost
);
if (!callSuccess) {
revert BLSInvalidPublicKeyorSignaturePoints();
}
if (!checkSuccess) {
revert BLSIncorrectInputMessaage();
}
}
Saldırı Analizi
Aşağıdaki analiz, 0.0.995584-1783731093-686041919 işlemine dayanmaktadır.
-
Adım 1: Saldırgan, teminat olarak Bonzo Lend'e 250
SAUCEyatırdı. -
Adım 2: Saldırgan, Supra'nın çekme-oracle sözleşmesine kötü amaçlı oracle güncellemesini gönderdi. Güncelleme, yukarıda açıklanan sıfırlanmış BLS imza kanıtını kullanarak
SAUCEfiyatını aşırı şişirilmiş bir değere ayarladı.

-
Adım 3:
verifyOracleProofV2(),requireRootVerified()başarıyla döndükten sonra gönderilen kökü kabul etti. İşlev, Merkle yaprak verilerini doğruladı ve daha yeni besleme turu içinpackData()çağırarak manipüle edilmişSAUCE/WHBARdeğerinin en son depolanan oracle değeri haline gelmesine neden oldu. -
Adım 4: Bonzo Lend, oracle'dan en son
SAUCEfiyatını okudu. Depolanan besleme değeri zaten şişirilmiş olduğundan protokol, saldırganın 250SAUCEteminatını piyasa değerinin çok ötesinde değerli olarak hesapladı. -
Adım 5: Saldırgan, şişirilmiş teminat değerine karşılık yaklaşık 6,6 milyon
USDCve 34,5 milyonWHBARödünç aldı. Anormal fiyat, sonraki meşru bir oracle güncellemesiSAUCE'u normal aralığına geri döndürene kadar aktif kaldı.
Sonuç
Bu olay, bir borç havuzu muhasebesi hatası değil, oracle doğrulama başarısızlığıydı. Saldırganın SAUCE piyasasını manipüle etmesine veya Bonzo Lend'in dahili teminat kontrollerini atlatmasına gerek yoktu. Sahte fiyat, yukarı akış Supra oracle doğrulayıcısı tarafından kabul edildi, beslemesine yazıldı ve Bonzo Lend tarafından normal fiyat okuma yolu aracılığıyla tüketildi.
Harici beslemeleri kullanan protokoller, tüm oracle doğrulama yolunun güvenlik varsayımlarını devralır. BLS tabanlı oracle güncellemeleri için eşleştirme ön derlemesi çağrılmadan önce sıfır noktalar reddedilmelidir. Kriptografik katmandaki girdi doğrulaması isteğe bağlı değildir; bir eşleştirme denkleminin matematiksel geçerliliği, temel imzanın özgünlüğünü ima etmez.
Referanslar
- [1] Bonzo Finance Olay Raporu
BlockSec Hakkında
BlockSec, tam kapsamlı bir blok zinciri güvenliği ve kripto uyumluluk sağlayıcısıdır. Müşterilerin protokoller ve platformların tüm yaşam döngüsü boyunca kod denetimi (akıllı sözleşmeler, blok zinciri ve cüzdanlar dahil) gerçekleştirmesine, saldırıları gerçek zamanlı olarak engellemesine, olayları analiz etmesine, yasadışı fonları takip etmesine ve AML/CFT yükümlülüklerini karşılamasına yardımcı olan ürün ve hizmetler geliştirmekteyiz.
BlockSec, saygın konferanslarda birden fazla blok zinciri güvenliği makalesi yayımlamış, çeşitli DeFi uygulamalarına yönelik sıfır gün saldırılarını raporlamış, 20 milyonun üzerinde doları kurtarmak için birden fazla saldırıyı engellemiş ve milyarlarca dolar değerinde kripto para birimini güvence altına almıştır.
-
Resmi web sitesi: https://blocksec.com/
-
Resmi Twitter hesabı: https://twitter.com/BlockSecTeam



