Fiyatlar yükleniyor…

Kripto Köprüleri: Neden Sürekli Hackleniyor?

Köprüler milyarlarca kilitli token tutar, yaması zor kodlar üzerinde çalışır ve bunları bağladıkları zincirlerden daha küçük doğrulayıcı setleriyle korur — kusursuz bir hedef.

Kripto Köprüleri: Neden Sürekli Hackleniyor?

Bir kripto köprüsü gerçekte ne yapar ve neden paranızı tutmak zorundadır

Bir kripto köprüsü, bir tokeni bir blokzincirden diğerine taşımanıza olanak tanıyan bir altyapı parçasıdır. Ethereum ana ağında ETH'niz var, ancak bunu Solana'da, orada yaşayan bir tokenla işlem yapmak için kullanmak istiyorsanız, ETH'yi satıp bankaya çekip diğer tarafta yeniden almak zorunda değilsiniz. Bunun yerine, ETH'nizi bir köprüye gönderirsiniz ve karşı tarafta yeni zincirdeki depozitonuzu temsil eden "sarılı" bir versiyon alırsınız.

Bu işlemi güvenilir bir aracı olmadan gerçekleştirmek için köprüler neredeyse evrensel olarak bir tür kilitle-oluştur veya yak-oluştur modeli kullanır. Orijinal ETH'niz kaynak zincirdeki bir akıllı sözleşmede kilitlenir (ya da yakılır — bu işlevsel olarak aynı şeydir, arz yok edilir) ve eşdeğer miktarda "sarılı" ETH (genellikle WETH olarak adlandırılır; Wormhole gibi zincirler arası varyantlar için wormhole-sarılı ETH) hedef zincirde oluşturulur. Geri dönmek için sarılı tokenı yakarsınız ve sözleşme orijinali ana zincirde serbest bırakır (veya yeniden oluşturur).

Bu tasarım zariftir, ancak kriptodan olmayan insanların sıklıkla gözden kaçırdığı yapısal bir sonucu vardır: herhangi bir anda köprü, kullanıcıların bugüne kadar yatırdığı tüm tokenların üzerinde oturmaktadır. Bir milyar dolarlık işlem hacmi işlemiş bir köprünün zirvede 300 milyon dolarlık saklama altında varlığı olabilir. Bu saklanan varlıklar bir akıllı sözleşmede yaşar — ve o tek sözleşme tüm saldırı yüzeyidir. Anahtarları çalın, doğrulayıcıları ele geçirin ya da tek bir hata bulun, tümünü alıp gidersiniz. Bunu, likiditenin binlerce bağımsız havuza yayıldığı ve bir havuzu boşaltan saldırganın diğerlerini tehlikeye atmadığı Uniswap gibi normal bir DEX (merkeziyetsiz borsa) ile karşılaştırın. Köprüler, kripto dünyasında neredeyse başka hiçbir şeyin yapmadığı şekilde riski yoğunlaştırır.

Köprüler neden sürekli hackleniyor: üç yapısal zayıflık

Bir köprü istismarı hakkında okuduğunuzda — ve bunlardan birçoğu var — genellikle olay sonrası analizler belirli bir hatayı veya ele geçirilmiş belirli bir anahtarı tanımlar. Ancak her birinin altında aynı üç yapısal zayıflık yatar. Köprüleri benzersiz biçimde cazip hedefler haline getiren şey bunlardır.

Köprüler, tek bir sözleşmede muazzam değer saklar. Kilitle-oluştur modeli, kaynak zincirdeki köprü sözleşmesinin gerçek varlıkları tuttuğu ve hedef zincirdeki sarılı tokenların o havuza karşı talepler olduğu anlamına gelir. A zincirinde gerçek bir kilit olmadan B zincirinde token oluşturursanız, kullanıcılar bunları geri almaya çalışır çalışmaz fiyatı çökecek olan teminatsız sarılı tokenlar yaratmış olursunuz. Dolayısıyla köprünün tüm güvenlik modeli o tek sözleşmeye ve diğer taraftaki oluşturma yetkisine bağlıdır. Saldırgan gözünde bir milyar dolarlık DEX, bin tane milyon dolarlık bal küpüdür. Bir milyar dolarlık köprü ise tek bir milyar dolarlık bal küpüdür.

Köprü sözleşmeleri, gerçek parayı tutmaya başladıktan sonra yükseltilmesi zordur. Belki şöyle düşünebilirsiniz: "Hatayı yamayıversenize." Teoride evet. Pratikte köprü sözleşmeleri kasıtlı olarak yükseltilemezdir, çünkü güvene en aza indirilmiş bir köprünün tüm amacı, siz yatırım yaptıktan sonra hiçbir tek tarafın kuralları değiştirememesidir. Dağıtıcı bir yükseltme anahtarına sahip olsaydı, yatırımcıları tek bir işlemle dolandırabilirdi. Dolayısıyla sözleşmeler değişmezdir — ve değişmez sözleşmeler, bir açık keşfedildiğinde yamanamaz. 2021'de piyasaya sürdüğünüz hata, 2024'te istismar edilen hatadır; çünkü kullanıcı güvenini kırmadan düzeltme yetkisine sahip merkezi bir taraf yoktur.

Köprüyü koruyan doğrulayıcı kümesi, bağlandığı zincirlerden daha küçük ve zayıftır. Bu, en az takdir edilen noktadır. Ethereum ana ağı yüz binlerce doğrulayıcı tarafından güvence altına alınır. Solana'da binlerce vardır. Tipik bir köprü, 5/9 çoklu imza (işlem onaylamak için önceden onaylanmış dokuz imzacıdan beşinin onayını gerektiren bir cüzdan) veya zincir üzerinde numaralandırılabilecek küçük bir doğrulayıcı kümesi tarafından korunabilir. Saldırganlar bu kümeleri banka soyguncularının nöbet çizelgelerini incelediği gibi inceler. Bu dokuz anahtarın beşi aynı ekipteyse, anahtarlar bir yerde çevrimiçi bir sunucuda saklanıyorsa ya da çoklu imza üyeleri birbirlerini tanımıyorsa, köprü güvenlik modelini birkaç insana etkin bir şekilde merkezileştirmiş demektir — ve Ronin'in de gösterdiği gibi insanlar, oltalama saldırılarına maruz kalabilir.

Kilitle-üret modeli pratikte nasıl saldırıya uğrar

Kilitle-üret modelini bir kez anladığınızda, saldırı kalıpları aynı temanın varyasyonları gibi görünmeye başlar. Saldırganın alttaki zinciri kırması gerekmez. Üç şeyden birini kırması yeterlidir: yatırılan varlıkları tutan kaynak zincir sözleşmesini, sarılı tokenleri üreten hedef zincir sözleşmesini ya da zincirler arası mesajları imzalayan zincir dışı altyapıyı.

Kilitleme veya üretme mantığındaki akıllı sözleşme hataları. Klasik örnek Şubat 2022'deki Wormhole vakasıdır. Wormhole, Ethereum ile Solana arasında popüler bir köprüydü ve kullanıcıların Ethereum'da ETH yatırıp Solana'da sarılı ETH almasına olanak tanıyordu. Saldırgan, Wormhole'un Solana tarafındaki kodunda bir hata buldu: köprünün Ethereum'da gerçekten bir yatırma işleminin yapıldığını doğrulamak için kullandığı bir fonksiyon, saldırganın sahte bir hesapla değiştirebildiği eski bir "imza kümesi" hesabı kullanıyordu. Sahte bir imzayla, saldırgan Solana sözleşmesini Ethereum'da gerçek bir ETH kilitlemeden 120.000 sarılı ETH üretmeye ikna etti — o dönemde yaklaşık 320 milyon dolar değerinde. Toz bulutları dağıldığında, Solana'da sarılı token tutan kullanıcılar ellerindeki "ETH"nin herhangi bir teminatı olmadığını keşfetti ve Wormhole ekibi, yatırımcıların zararını karşılamak için hazinesinden sermaye aktarmak zorunda kaldı. Hata koddaydı, anahtarlarda değildi, ama yapısal etki aynıydı.

Doğrulayıcı setinin ele geçirilmesi. Bir saldırgan, zincirler arası mesajları onaylayan anahtarlardan veya imzalayanlardan yeterince toplayabilirse, hiçbir hata bulmasına bile gerek kalmaz. Sadece kendileri sahte bir mesaj imzalar ve köprü düzenli bir şekilde fonları serbest bırakır. Mart 2022'deki Ronin köprü hack'i kanonik örnektir. Ronin, play-to-earn oyunu Axie Infinity için kurulmuş bir Ethereum yan zinciriydi ve köprüsü 5-of-9 çoklu imza ile güvence altına alınmıştı. Bu dokuz imzalayanın beşi aynı ekip tarafından (Axie Infinity'nin geliştiricisi Sky Mavis) işletiliyordu. Saldırganlar dört Sky Mavis imzalayanını ve beşinci bir ortağı ele geçirip yaklaşık 625 milyon dolar değerinde USDC ve ETH ile ortadan kayboldular. Herhangi bir kriptografik ilkeli kırmadılar — sadece yeterli sayıda meşru imzalayana erişimleri vardı.

Yakma-üretme yarış koşulları ve tekrar saldırısı hataları. Yakma-üretme modelinde, tokenler bir zincirde yok edilip diğerinde yeniden üretildiğinde, saldırgan bazen köprüyü aynı yakma işlemini iki kez işlemiş ya da zincirler arası onayı gerçekten beklemeden bir yakma işlemini işlemiş gibi kandırabilir. Ağustos 2022'deki Nomad köprü hack'i bunun bir versiyonuydu: rutin bir sözleşme yükseltmesi yanlışlıkla her mesajı geçerli olarak işaretledi, böylece herkes köprüyü çağırıp sanki yatırma yapmış gibi fon çekebildi. Köprü kapatılmadan önce fırsatçı taklitçiler tarafından yaklaşık 190 milyon dolar boşaltıldı.

Ünlü köprü hackleri ve her birinin öğrettiği dersler

Ünlü köprü hacklerinin olay sonrası analizlerini okumak, tehdit modelini içselleştirmenin en hızlı yollarından biridir. Her biri aynı genel tasarımdaki farklı bir zayıflığı gözler önüne serer.

Wormhole, Şubat 2022 — ~320 milyon dolar. Sebep: Solana tarafında, saldırganın teminatsız sarılı ETH üretmesine olanak tanıyan bir imza doğrulama hatası. Ders: iyi denetlenmiş kodda bile zincirler arası mesajların nasıl yorumlandığına dair mantık hataları olabilir. Köprünün yıllar boyunca kusursuz çalışmış olması, güvenli olduğu anlamına gelmiyordu.

Ronin, Mart 2022 — ~625 milyon dolar. Sebep: sosyal mühendislik ve ele geçirilmiş ortak altyapısı yoluyla dokuz çoklu imza anahtarından beşinin ele geçirilmesi. Ders: kağıt üzerindeki doğrulayıcı merkezsizleştirmesi, pratikteki doğrulayıcı merkezsizleştirmesiyle aynı şey değildir. Sky Mavis imzalayanların çoğunu "sadece kolaylık olsun diye" kontrol ediyordu ve istismar edilen de bu yoğunlaşmaydı.

Harmony Horizon, Haziran 2022 — ~100 milyon dolar. Sebep: ele geçirilmiş sıcak cüzdan anahtarları yoluyla köprüyü koruyan 2-of-5 çoklu imzanın ele geçirilmesi. Ders: çok düşük eşiklere ve sıcak cüzdan anahtar depolamasına sahip çoklu imzalar, tek bir imzalayanın kullanılmasından çok az daha iyidir.

Nomad, Ağustos 2022 — ~190 milyon dolar. Sebep: yanlışlıkla keyfi çekimlere izin veren bir sözleşme yükseltmesi. Ders: yükseltilebilir şekilde tasarlanmış köprü sözleşmeleri, savunmasız bir duruma da yükseltilebilir. Değişmezlik iki taraflı keskin bir kılıçtır.

Sadece bu dört olayı topladığınızda, tek bir yılda, tek bir protokol kategorisinden 1,2 milyar doların üzerinde kayıp edildiğini görürsünüz. Karşılaştırma olarak, diğer tüm kripto hack kategorileri — DEX'ler, borç verme protokolleri, cüzdanlar, bireyler — TVL'ye (toplam kilitli değer, bir protokole yatırılan varlıkların değeri) oranla sermayeyi bu hızda yok etmez.

Doğrulayıcı setinin ele geçirilmesi mi yoksa akıllı sözleşme hatası mı daha yaygın?

Akıllı sözleşme hataları bulmaca gibi okunduğu için daha fazla haber olur. Atlanan bir sıfır kontrolü, eski bir Merkle kökü, tetiklenmeyen bir yeniden giriş koruması — denetçilerin öne çıkardığı ve geliştiricilerin düzeltmeye çalıştığı şeyler bunlardır. Doğrulayıcı ele geçirilmesi daha dağınıktır. İnsanları, iç süreçleri, zincir dışı altyapıyı ve bazen devlet destekli saldırganları içerir. Ama dolar kayıplarını topladığınızda, doğrulayıcı ele geçirilmesi tarihsel olarak geniş bir farkla daha büyük kategori olmuştur.

Ronin, Harmony ve daha küçük çaplı birkaç soygun özünde "imzalayanları kim kontrol ediyorsa köprüyü de o kontrol eder" istismarıydı. Saldırganların zekice bir kod yolu bulmaları gerekmiyordu; bir anahtara ihtiyaçları vardı. Bu, onlara karşı savunma yapmanın akıllı sözleşme hatalarına karşı savunma yapmaktan farklı bir araç seti gerektirdiği anlamına gelir: sıcak cüzdanlar yerine donanım güvenlik modülleri (özel anahtarları çevrimdışı ve kurcalamaya karşı dirençli tutmak için tasarlanmış özel donanım cihazları), coğrafi olarak dağıtılmış imzalayanlar, statik çoklu imzalar yerine eşik kriptografisi (özel anahtarın, hiçbir tek cihazın veya kişinin tam anahtarı tutmadığı şekilde birçok parçaya bölünmesi) ve imzalayan etkinliğinin sürekli izlenmesi. Bu önlemlerin hiçbiri tamamen zincir üstünde değildir, bu yüzden güvenlik odaklı birçok köprü güveni daha geniş yaymak için merkezsiz oracle ağlarına (Chainlink'in LINK destekli ağı gibi birçok bağımsız düğüm kullanarak gerçek dünya veya zincirler arası verileri zincir üstüne getiren hizmetler) ve özel doğrulayıcı havuzlarına yönelmiştir.

LayerZero ve Chainlink'in CCIP'si (Zincirler Arası Birlikte Çalışabilirlik Protokolü) gibi zincirler arası mesajlaşma protokolleri bunu daha az acı verici hale getirme girişimidir. Her köprünün kendi doğrulayıcı setini kurması yerine, mesaj doğrulamasını daha büyük ve savaşta test edilmiş bir ağa — CCIP söz konusu olduğunda, sahte bir mesaj üretmek için birçok bağımsız düğüm operatörünün ele geçirilmesini gerektirecek şekilde tasarlanmış Chainlink oracle ağına — dış kaynak olarak verirler. Takas, küçük ve köprüye özgü bir güven varsayımını daha büyük ve ağ genelinde bir güven varsayımıyla değiştirmenizdir ve ona güvenmeden önce o ağın başarısızlık modlarının ne olduğunu anlamalısınız.

Paylaşılan güvenlik ve alternatif bir yön olarak CCIP

Köprü sorunu konusunda dürüst okuma, hiçbir tasarımın güven varsayımını ortadan kaldırmadığıdır — onu yalnızca etrafta hareket ettirir. Küçük bir doğrulayıcı seti kullanan bir köprü o doğrulayıcılara güvenir. Bir oracle ağı kullanan bir köprü oracle ağına güvenir. Hafif istemciler (bir zincirin blok başlıklarını diğer zincir üzerinde bağımsız olarak doğrulayan, harici aktarıcılara olan ihtiyacı ortadan kaldıran programlar) kullanan bir köprü, kriptografinin ve uygulamanın sağlam olduğuna güvenir. Hash tabanlı bir kilitleme kullanan bir köprü (kullanıcının fonları bir zincirde bir hashlock'a kilitler ve diğerinde talep etmek için bir sırrı açığa çıkarır, atomik takas protokollerinin temeli) alıcı tarafta likidite olduğuna güvenir.

Paylaşılan güvenlik, bu iğneyi geçirmeye yönelik en son girişimdir. Fikir, her köprünün kendi özel doğrulayıcı setini sürdürmek yerine, büyük ve merkezsiz bir ağdan — veya alttaki zincirlerin kendilerinden — gelen doğrulayıcıların zincirler arası doğrulama için yeniden kullanılmasıdır. Chainlink'in CCIP'si bugün üretimdeki en önemli örnektir: paralel bir imzalayan seti çalıştırmak yerine, köprü ikinci bir savunma katmanı olarak Chainlink'in mevcut oracle altyapısına ve ayrı bir Risk Yönetimi Ağına yaslanır. Ekonomik argüman, CCIP'ye saldırmak için hem oracle ağını hem de risk ağını ele geçirmenin, tek bir köprünün çoklu imzasına saldırmaktan daha maliyetli olmasıdır.

Bu gerçek bir iyileştirmedir, ancak her derde deva değildir. CCIP, Chainlink'in oracle ağının güven varsayımlarını miras alır. O ağ ele geçirilirse, CCIP de ele geçirilir. Yeni bir paylaşılan güvenlik modeli ortaya çıkıp köprülerin %80'i onu benimserse, o model tüm zincirler arası ekosistem için tek bir başarısızlık noktası haline gelir. Deneyimli DeFi kullanıcılarının büyük transferleri hâlâ birden fazla rotaya yaymasının ve hayatlarını değiştirecek miktarları tek bir köprüye emanet etmemesinin bir nedeni var.

Bir köprüyü kullanmadan önce nasıl değerlendirilir

“Güvenli köprü” diye bir şey yoktur. Bunun tersini söyleyen biri size bir şey satmaya çalışıyordur. Ama daha riskli ya da daha az riskli köprüler vardır ve riski gerçek anlamda değiştiren birkaç soru bulunur. Bunu garanti değil, bir kontrol listesi olarak düşünün.

custodia nasıl dağıtılıyor? Zincir üstü yönetici ve imza sahibi grubuna bakın. 2/5 multisig yapısı, 12/20 kurulumuna kıyasla çok daha risklidir. İmza sahiplerinin birbirinden bağımsız kuruluşlar mı yoksa aynı ekibin farklı kolları mı olduğuna bakın. Anahtarların nasıl saklandığını inceleyin — bulut sunucudaki sıcak cüzdanlar ciddi bir kırmızı bayraktır; farklı coğrafyalara dağıtılmış donanım cüzdanları daha iyidir.

Sözleşmeler yükseltilebilir mi ve kim tarafından? Değişmezlik iki ucu keskin bir kılıçtır. Değişmez (immutable) bir sözleşme yamanamaz, yani bir hata sonsuza dek hata olarak kalır. Yükseltilebilir bir sözleşme ise yamanabilir; bu da kötü niyetli veya ele geçirilmiş bir anahtar sahibinin kuralları değiştirebileceği anlamına gelir. Hangi yükseltme yetkilerinin var olduğunu ve bunları kimin elinde tuttuğunu anlamak için belgeleri okuyun.

Denetlendi mi ve kim tarafından? Bir denetim garanti değildir. Orta düzey bir firmadan alınan tek bir denetim, üst düzey firmalardan birden fazla denetim ve bunun üstüne açık bir hata ödül programı ile aynı şey değildir. Denetim raporlarını bulun, nelerin tespit edildiğine bakın ve ekibin bulgulara nasıl yanıt verdiğini inceleyin.

Ne kadar süredir üretimde ve ne kadar hacim işledi? Üç yıl boyunca 20 milyar doların üzerinde işlem yapmış ve hiç istismar edilmemiş bir köprünün ampirik bir sicili vardır. Geçen hafta lansmanı yapılmış bir köprünün ise ne kadar iyi pazarlanırsa pazarlansın hiçbir sicili yoktur.

En kötü senaryo başarısızlık modu nedir? Geçmiş olayların post-mortem raporlarını okuyun ve şunu düşünün: köprü yarın hacklenirse kullanıcılar nasıl zararları telafi edilecek şekilde korunur? Bir sigorta fonu var mı? Protokolün kayıpları karşılayacak kadar büyük bir hazinesi var mı? Cevap “hiçbiri” ise, yatırdığınız tutarı köprüye indiği anda %100 risk altında olarak görmelisiniz.

Köprü istismarlarını akıllıca takip etmenin yolu

Köprü istismarları hızlı gelişir — bir bloga post-mortem raporu düştüğü anda, bir sonraki olay çoktan pişiyor olur. Hangi köprülerin denetlendiğini, hangilerinin lansman yaptığını, hangilerinin yakın zamanda güvenlik olayları yaşadığını ve çapraz zincir alanının nasıl evrildiğini takip etmek, bunu elle yaparsanız tam zamanlı bir iştir. Zippfeed, duygu puanlaması (boğa, nötr veya ayı) ve önem derecelendirmesi ile köprü ve birlikte çalışabilirlik manşetlerini öne çıkarır; böylece her bir başlığı kendiniz okumadan anlamlı sinyalleri yakalayabilirsiniz. Bu sayede yeni bir “denetlenmiş” köprü lansman yaptığında ya da tanıdık bir isim bir güvenlik bildiriminde geçtiğinde, onu hack sonrası tweet fırtınasının paniği içinde değil, bağlamında görürsünüz.

Sıkça sorulan sorular

Kripto köprüsü kullanmak güvenli mi?
Hiçbir kripto köprüsü tamamen güvenli değildir. Köprüler, neredeyse başka hiçbir DeFi (merkeziyetsiz finans) protokolünde bulunmayan üç risk faktörünü bir araya getirir: yoğunlaşmış saklama, yükseltilmesi zor kod ve küçük doğrulayıcı setleri. Köprünün üzerindeki bakiyeyi riske açılmış bir mevduat olarak değerlendirin ve köprü üzerinden tamamen kaybetmeyi göze alabileceğinizden fazlasını asla taşımayın. Bu bir eğitim içeriğidir, finansal tavsiye değildir — karşılaşacağınız belirli risk, köprüye, miktara ve kendi tehdit modelinize bağlıdır.
Kilitle-oluştur köprü modeli gerçekte nasıl çalışır?
Tokeninizi kaynak zincirdeki bir kontrata gönderirsiniz ve bu kontrat onu kilitler ya da yakar. Köprü daha sonra eşdeğer bir "sarılı" tokeni hedef zincirde oluşturur. Geri dönmek için ise sarılı tokeni yakarsınız ve kontrat orijinali serbest bırakır. Saldırı yüzeyi, gerçek varlıkları tutan kaynak-zincir kontratı, hedef-zincir token oluşturma mantığı ve zincirler arası mesajları imzalayan zincir dışı altyapıdır. Bu üç bileşenden herhangi birinin ele geçirilmesi, bir saldırganın köprüyü tamamen boşaltmasına olanak tanır.
Köprülenmiş bir zincirde büyük miktarda para tutmalı mıyım?
Deneyimli DeFi kullanıcılarının çoğu bunu yapmaz. Yalnızca belirli bir işlem için ihtiyaç duydukları miktarı köprüler, işlemi tamamlar ve geri köprüler. Uzun vadeli bakiyeleri yabancı bir zincirde sarılı token olarak tutmak, tüm tutma süresi boyunca hem alttaki köprüye hem de sarılı tokenin itfa sürecine güvenmeniz anlamına gelir. Bu kişisel bir risk kararıdır, finansal tavsiye değildir; ancak tarihsel olarak varsayılan yaklaşım, uzun vadeli varlıkları kendi yerel zincirlerinde tutmak olmuştur.
CCIP nedir ve normal bir köprüden gerçekten daha mı güvenlidir?
CCIP, Chainlink'in Cross-Chain Interoperability Protocol'üdür; her köprünün kendi küçük doğrulayıcı setini çalıştırması yerine, Chainlink'in mevcut merkeziyetsiz oracle ağını ve ayrı bir Risk Yönetimi Ağı'nı kullanarak zincirler arası mesajları doğrulamak için tasarlanmıştır. Tipik bir köprü çoklu imzasına kıyasla bir saldırının maliyetini kayda değer biçimde artırır, ancak riski sıfır değildir. Bir güven varsayımını (köprünün imzalayıcı seti) başka biriyle (Chainlink ağının bütünlüğü) değiştiriyorsunuz ve pozisyonunuzu buna göre boyutlandırmalısınız.
İlgili tokenler
$ETH $WORMHOLE $LAYERZERO $CC $LINK