Kripto Hatalarının Gizli Tarihi

Kripto Hatalarının Gizli Tarihi

İngilizceden çevrilmiştir

Kripto para dünyasında neredeyse kutsal bir formül vardır: "Güvenme, doğrula." Her kullanıcı kendi düğümünü çalıştırabilir, ağın kurallarını kendisi kontrol edebilir ve ne geliştirme ekibine ne de herhangi bir merkezi otoriteye bağlı kalır.

Ama bu formülün ciddi bir sınırlaması var. Kodu ne kadar dikkatli denetlersem denetleyeyim, gerçek bir bilgisayar korsanının bulacağı bir güvenlik açığını yakalayamayabilirim — basitçe o uzmanlığa sahip değilim. Bu yüzden yine de güvenmek zorunda kalıyorum: benim adıma her şeyi kontrol eden insanlara ve onların bulduklarını söylemelerine güvenmek.

5 Mayıs 2026'da Bitcoin Core geliştiricileri CVE-2024-52911 adlı güvenlik açığını açıkladı. 0.14.0 ve sonraki sürümleri etkiliyordu ve 29.0'da düzeltildi. Bu hata bir madencinin uzaktan diğer insanların düğümlerini çökertmesine izin veriyordu.

Ama burada en çarpıcı ayrıntı bu hatanın ne kadar uzun süredir biliniyor olduğudur. Cory Fields bunu geliştiricilere 2 Kasım 2024'te özel olarak bildirdi. 6 Kasım 2024'te Pieter Wuille gizli bir düzeltme gönderdi. 3 Aralık 2024'te yama resmi depoda hiçbir kamu duyurusu olmadan göründü ve sadece "küçük güncellemeler" olarak tanımlandı. 12 Nisan 2025'te Bitcoin Core 29.0 düzeltmeyi içererek yayımlandı. Kamuya açıklama ise ancak son savunmasız dal 28.x destek süresini tamamladıktan sonra, 5 Mayıs 2026'da yapıldı.

CVE-2024-52911 zaman çizelgesi

Bir buçuk yıl boyunca en çok güvenilen Bitcoin istemcisi geliştiricilerin bildiği bir güvenlik açığıyla çalıştı — oysa o yazılımı çalıştıran düğüm operatörleri bunu bilmiyordu. Ve bu izole bir olay değil; kripto para dünyasında yinelenen bir model. Farklı kripto projelerindeki geliştiriciler yıllardır bunu yapıyor.

Bu tür diğer örnekleri incelemek ve nihayetinde şu soruya yanıt vermek istiyorum: tasarruflarınızı kripto parada tutmak gerçekten ne kadar güvenli?

Bitcoin: Bir DoS hatasının enflasyon hatasına dönüşmesi

Eylül 2018'de Bitcoin Core hızlıca 0.16.3 sürümünü yayımladı. Kullanıcılara bunun bir hizmeti engelleme (DoS) açığını yamadığı söylendi.

İki gün sonra bunun hikâyenin sadece yarısı olduğu ortaya çıktı. 0.15.x ve 0.16.x sürümlerindeki aynı kusur bir madencinin bitcoin arzını şişirmesine izin verebiliyordu — pratikte aynı çıktıyı tek bir blok içinde iki kez harcayarak ekstra BTC ceplerine koymak. Geliştiriciler başlangıçta yalnızca daha az tehlikeli DoS bileşenini açıkladıklarını kabul etti; enflasyon tehdidinin tam tanımını madencilere, işletmelere ve diğer kritik katılımcılara güncelleme yapmaları için zaman tanımak üzere bilerek geri tuttular.

En kötü durumda, bu bireysel bir cüzdana değil, Bitcoin'in temel sözüne: sabit arza yönelik bir saldırı olurdu. 21 milyon kuralı istemcideki bir hatayla bozulabiliyorsa, Bitcoin'in tüm ekonomik mitolojisi çöker.

Bu güvenlik açığı hiç kötüye kullanılmadı. Ama CVE-2018-17144 etik ikilemi mükemmel biçimde gösteriyor. Bir yandan, derhal tam açıklama saldırganlara hazır bir oyun planı verebilirdi. Öte yandan kullanıcılar aslında güncellemenin ne kadar kritik olduğu konusunda gerçeği bilmeden kalmıştı.

Zcash: Görünmez sahte paralar

Zcash hikâyesi daha da tedirgin ediciydi, çünkü bu bir gizlilik parasıydı ve blok zincirinde her şey görülmüyordu. 2018'de ekip, sıfır bilgi ispatlarının dayandığı kriptografide bir güvenlik açığı keşfetti. Düzeltmeden önce bir saldırgan, hiç kimsenin tespit edemeyeceği biçimde sahte ZEC yaratabilirdi. Şeffaf bir zincirde enflasyon hatası en azından teorik olarak bakiye analizleriyle görülebilir; bir gizlilik sistemi bu tür doğrulamayı çok daha zorlaştırır.

Zcash Sorununu Sapling yükseltmesinde düzeltti, 28 Ekim 2018'de etkinleştirildi ve aylar sonra kamuoyuna açıklandı. Resmi açıklamada ekip açıkça yazdı: "on bir ay önce bir güvenlik açığı keşfettik" — ve düzeltmeden önce bir saldırganın tespitsiz sahte Zcash basabileceğini kabul ettiler.

Burada sessizliğin gerekçesini anlamak kolay. Bu kusuru yamadan önce açıklamak, Zcash'i yok etme reçetesini birine vermek olurdu. Ama diğer taraf da aynı derecede net: neredeyse bir yıl boyunca kullanıcılar, teorik olarak görünmez sahtecilik olasılığı olan bir varlığa sahip oldular — ve bundan haberleri yoktu.

Bu gerçek bir paradoksu işaret ediyor:

  • Güvenlik açığı ne kadar ciddi ise, gizlilik lehine argüman o kadar güçlüdür.
  • Ama gizlilik ne kadar fazla olursa, doğrulanabilirlik fikri o kadar çok zayıflar. (Ne baktığımı anlamak için becerim yoksa ve nitelikli denetçiler bulduklarını söylemiyorsa, "her şeyi doğrula"nın anlamı nedir?)

Monero: Var olmayan bir DoS arkasına gizlenen gerçek

2017'de Monero benzer bir tehditle karşılaştı. Ekip, Monero'yu ve birçok diğer gizlilik parasını çalıştıran temel protokol CryptoNote'da kritik bir hata keşfetti. Güvenlik açığı, tam olarak ne aranacağını bilmeyen hiçbir gözlemcinin fark edemeyeceği şekilde sınırsız sayıda coin yaratılmasına izin veriyordu.

Monero'daki yama gizli olarak tanıtıldı. Dahası, sürüm kamuoyuna RingCT'ye yönelik bir hizmeti engelleme (DoS) saldırısına karşı koruma olarak açıklandı — ekip daha sonra kabul ettiğine göre gerçekte hiç var olmayan bir saldırıydı. Bu, borsaların ve madencilik havuzlarının güncelleme yapmasını sağlamak için oluşturulmuş bir örtü hikâyeydi ve gerçek, enflasyonel riski ifşa etmemek içindi.

Monero için sonuç iyi oldu: ekip blok zincirini kontrol ettiklerini ve kötüye kullanım belirtisi bulmadıklarını rapor etti. Ama güvenlik açığı Monero'nun ötesine uzanıyordu. Monero güncellemeden sonra ekip diğer CryptoNote tabanlı projeleri bildirmeye başladı. Ancak bu projelerden biri olan Bytecoin yakında saldırıya uğradı ve 693 milyon ek coin üretildi.

Bu, güvenlik açıklarını gizlemenin başka bir boyutunu açıyor. Kod onlarca proje arasında paylaşıldığında, bir yerde keşfedilen bir tehdidin duyurulması diğerlerini hedef alan saldırganlara bir ipucu verebilir. Geliştiriciler sadece kendi kullanıcılarını ne zaman bilgilendireceklerine değil, hangi rakip projeleri hangi sırayla uyaracaklarına da karar vermek zorunda — bilgiyi önce alan bir rakibin, henüz almamış olana karşı bunu kullanabileceğini bilerek.

Monero Yine: Saldırganların başkalarının parasını yakmasına izin veren hata

2018'de Monero, yakma hatası olarak bilinen farklı, daha az temel ama öğretici bir olayla karşılaştı. Bu hata kimsenin sudan para basmasına veya arz programını bozmasına izin vermiyordu. Ancak bir saldırganın borsalara, satıcılara ve diğer hizmetlere gerçek finansal zarar vermesine yol açabiliyordu. Hata, alınan bazı çıktıların harcanamaz hale gelmesine neden olacak şekilde fon gönderimini mümkün kılıyordu.

Bir takas servisi olan rabbit.io böyle bir saldırıya karşı savunmasız olabilirdi.

İşte rabbit.io üzerinde kripto para takaslarının nasıl çalıştığı:

  • bir kullanıcı, örneğin XMR, sipariş formunda gösterilen depozito adresine kripto gönderir;
  • otomatik sistemimiz gelen ödemeyi tespit eder ve kullanıcının belirttiği ödeme adresine istenen kriptoyu gönderir.

Hizmetimiz o zamanlar mevcut değildi, ama mevcut olsaydı saldırı şöyle görünebilirdi:

  • bir saldırgan XMR'yi BTC ile takas etme siparişi oluşturur;
  • saldırgan XMR gönderir ve BTC alır;
  • aldığımız XMR çıktıları kullanılamaz olduğu için hem BTC'den hem XMR'den mahrum kalırız;
  • saldırgan doğrudan bir kazanç elde etmez, ama XMR kabul eden işletmeleri yok eder.

Monero ekibi sessiz bir yama hazırladı ve ulaşabildikleri borsalar ile bilinen XMR satıcılarını doğrudan bilgilendirdi. Post-mortem raporda geliştiriciler bu yaklaşımın kaçınılmaz olarak mevcut irtibatları olmayan organizasyonları dışarıda bıraktığını ve ayrıcalıklı bilgi erişimi izlenimi yarattığını dürüstçe kabul ettiler.

Bu, seçici açıklamanın pratik gerçeği: bazı piyasa katılımcıları her zaman diğerlerinden önce bir risk hakkında bilgi sahibi olacaktır. Bu asimetri kendi başına bir güvenlik sorunudur.

Stellar: Zaten sömürülmüş gizli bir hata

Stellar hikâyesi diğerlerinden farklı çünkü hata sadece geliştiricilerin bildiği bir şekilde gizli değildi. Zaten kullanılmıştı.

2017'de bir saldırgan Stellar protokolündeki bir eşzamanlılık (concurrency) kusurunu kötüye kullandı ve 2.25 milyar XLM yarattı — o zamanki değeriyle yaklaşık 10 milyon dolar ve dolaşımdaki tüm tokenların yaklaşık dörtte biri. Messari'ye göre yeni basılan XLM borsalara transfer edildi ve muhtemelen satıldı.

Stellar Development Foundation daha sonra rezervlerinden eşdeğer miktarda XLM yaktı (burn) ve arz sulanmasını önledi. Ama kamuoyu duyurusu yapmadı — ta ki Messari olayı 2019'da, iki yıl sonra ortaya çıkarana kadar. Buna cevap olarak Stellar temsilcileri hatayı protokol güncelleme sürüm notlarında belirttiklerini söylediler. Teknik sürüm notlarında sessiz bir girdi teknik olarak tamamen sessizlik sayılmaz. Ancak piyasanın iki yıl sonra bir Messari soruşturmasıyla haberdar olduğu, pratikte sessiz klik bir nottur.

Bu vaka sektör için özellikle rahatsız edicidir. "Güvenlik açığını gizledik ki kimse bunu sömürmesin" diyemezsiniz. Zaten birisi sömürmüş. Sessizlik kullanıcıları bir saldırıdan korumadı — geliştiricileri incelemeden korudu.

Ethereum Geth: Sessiz bir yama ağın bölünmesine nasıl yol açtı

En çok kullanılan Ethereum istemcisi Geth'te sessiz yama uygulaması esasen resmileştirildi. Ekip belgelerinde ana ağın sağlığını tehdit eden güvenlik açıkları için yeni sürümlere sessizce düzeltmeler göndermekte hakları olduğunu açıkça belirtiyor. Mantık basit: düğüm operatörleri haftalarca veya aylarca güncelleme yapmayabilir ve bir sürümün hangi hatayı düzelttiğini açıkça yazarsanız, birileri çoğu düğüm yükseltilmeden daha hızlı şekilde bunu sömürmeye çalışabilir.

Ama Ağustos 2021'de bu mantık ters tepki verdi. Geth CVE-2021-39137'yi yamaladı, düzeltmeyi 24 Ağustos'ta yayımladı ama ayrıntıları açıklamadı. Ancak birisi neyin düzeltildiğini çözdü — ve 27 Ağustos'ta bu güvenlik açığı sömürülerek, daha eski Geth düğümlerinin bir kısmının ana zincirden fork yapmasına neden oldu.

Bu, gizliliğin diğer keskin kenarı. Çok fazla söylerseniz saldırıyı hızlandırabilirsiniz. Çok az söylerseniz bazı operatörler güncellemenin acil olduğunu anlamaz. Ağ, tam olarak kaçınmaya çalıştığı şeyle sonuçlanabilir: güvenlik açığının aktif olarak sömürüldüğü bir durum.

Polygon: 24 milyar dolar risk altında, gerçek kayıplar oluştu

Aralık 2021'de Polygon aynı ikilemle karşılaştı. Güvenlik araştırmacıları Polygon PoS genesis sözleşmesinde yaklaşık 24 milyar dolar değerinde MATIC token'ını boşaltmaya izin verebilecek kritik bir güvenlik açığını bildirdi. Ekip sessizce ilerlemeye karar verdi: daha sonra belirttikleri gibi, "bu yükseltmenin doğası göz önüne alındığında, çok fazla dikkat çekmeden yürütülmesi gerekiyordu." Doğrulayıcılar ve tam düğüm operatörleri bilgilendirildi ve ağ hızla yükseltildi.

Ama hızlı bir yanıt bile pencereyi tamamen kapatmaya yetmedi. Yükseltme etkili olmadan önce bir saldırgan 801,601 MATIC çalmayı başardı — yaklaşık 2 milyon doların biraz altı. Geliştiriciler Polygon Foundation'ın zararı karşılayacağını doğruladılar. Güvenlik açığını bildiren araştırmacılara yaklaşık 3.46 milyon dolar ödül ödendi.

Ekip sorunu gömmeye çalışmadı, ama kullanıcılar neredeyse olanların tam ölçeğini ancak iş bittikten sonra öğrendiler. Bu yaklaşımın iki nedeni vardı: birincisi öncelik tartışmak değil, harekete geçmekti; ikincisi sorun çözülmeden önce onu bilen her ek kişi bilgiyi kötüye kullanabilecek biri olabilirdi.

Belki makul bir uzlaşma böyle görünür: saldırı yamalanmadan önce açıklamayın, ama düzeltmeyi aylar veya yıllar sürecek bir sır haline de getirmeyin.

Geliştiriciler kullanıcıları koruyor mu, yoksa onları mı aldatıyor?

Sessiz yamaların nasıl çalıştığı

Bazen gizlilik gerçekten ağı kurtarır. Sessiz bir düzeltme olmasaydı Zcash görünmez enflasyonla karşılaşabilirdi. Gizli bir yama olmasaydı Monero tespit edilemez sahteciliğe uğrayabilirdi. Polygon'un hızlı, kapalı kapılar ardındaki hareketi olmasaydı, o ağdaki potansiyel zarar çok daha kötü olurdu.

Ama gizlilik bedelsiz değildir. İçeridekiler ve dışarıdakiler arasında katmanlar oluşturur. Takımın özel olarak uyardığı kişiye avantaj sağlar. Bir sürüm rutin bakım gibi görünüyorsa düğüm operatörlerinin güncelleme yapma aciliyetini azaltır. Ve kripto kullanmanın en önemli psikolojik temellerinden birini baltalar — oyunun kurallarının herkes tarafından aynı anda bilindiği hissi.

Bu his, ortaya çıktığı gibi, bir illüzyondur. Bu hikâyelerin her biri aynı yayı izler: sessiz bir yama, uzun bir sessizlik ve ardından ağın güvenliğinin başından beri herkesden daha fazla bilgi sahibi küçük bir grup insana güvenmeye dayandığının itirafı.