Fiyatlar yükleniyor…

2016 DAO Hack'i Açıklandı

2016'da bir saldırgan The DAO'dan 50 milyon dolar boşalttı ve Ethereum'u ikiye böldü. İşte ne olduğu, kimin ne seçtiği ve neden hâlâ önemli olduğu.

2016 DAO Hack'i Açıklandı

Kuruluş: 150 milyon dolarlı bir DAO ve bilinen-kırılgan bir kod tabanı

Bir DAO — merkeziyetsiz özerk kuruluş — fonları tutan ve akıllı sözleşme mantığı ile token sahibi oylarıyla hareket eden zincir üstü bir varlıktır. The DAO (büyük T, büyük D) en iddialı erken örnekti. slock.it tarafından inşa edildi ve Nisan 2016'da Ethereum'da açık bir token satışıyla lanse oldu; 11,5 milyon ETH'den fazla — o zaman yaklaşık 150 milyon dolar ve mevcut tüm ETH'in yaklaşık %14'ü — topladı. Token sahipleri hangi tekliflerin finanse edileceğine oy verebilirdi; getirilerin geri akacağı varsayımıyla.

The DAO'nun akıllı sözleşmesi karmaşıktı. Birkaç güvenlik araştırmacısı belirli örüntüler hakkında — özellikle token sahiplerinin DAO'daki paylarını bir alt DAO'ya ayırmasına izin veren işlev etrafında — kamuya endişelerini dile getirmişti. İlgili kod yolu dahili bakiyeyi güncellemeden önce harici bir çağrı yapıyordu; artık ders kitabı tehlikeli olarak bilinen bir örüntü: reentrancy. Düzeltmeler önerildi ama istismardan önce devreye alınmadı.

Bu eğitim amaçlıdır, yatırım tavsiyesi değildir. DAO hack'i önemli çünkü yanıtta verilen seçimler Ethereum'da "değişmez" kelimesinin anlamını sonsuza dek şekillendirdi.

Gerçekte ne oldu: boşalma ve fork

İstismar ve yanıt haftalar boyunca açıldı.

  • 17 Haziran 2016. Bir saldırgan reentrancy hatasından yararlanmaya başladı. Saldırı, sözleşme saldırganın dahili bakiyesini güncellemeden önce The DAO'nun split işlevini özyinelemeli olarak çağırarak aynı bakiyeye karşı tekrarlanan çekimlere izin verdi. Yaklaşık 3,6 milyon ETH, saldırganın kontrolündeki bir alt DAO'ya boşaltıldı.
  • 28 günlük tuhaflık. The DAO'nun yapısı boşaltılan fonların 28 gün boyunca alt DAO'da kalmasını gerektiriyordu. Bu, Ethereum topluluğuna saldırgan fonları harcamadan önce yanıt verme penceresi verdi.
  • Haziran 2016 sonu: tartışma. İki ana yanıt tartışıldı. İlki bir soft fork: boşaltılan fonları içeren işlemleri engelleyecek, saldırganı donduracak bir ağ kuralı değişikliği. İkincisi bir hard fork: boşaltılan fonları, DAO token sahiplerinin orijinal ETH'lerini geri çekebileceği bir geri ödeme sözleşmesine taşıyacak bir ağ kuralı değişikliği.
  • Soft fork denemesi ve geri çekme. Soft fork önerisinin Ethereum madencilerine hizmet reddi saldırısı sağlayabilecek bir güvenlik açığı olduğu bulundu. Geri çekildi.
  • 20 Temmuz 2016: hard fork yürütüldü. Ethereum topluluğu 1.920.000 numaralı blokta hard fork yürüttü. Fork, boşaltılan ETH'yi bir geri ödeme sözleşmesine taşıdı ve DAO token sahiplerinin sabit bir oranda orijinal ETH'lerini geri çekmesine izin verdi.
  • Ayrılma. Bir azınlık madenci ve kullanıcı, değişmezliğin bir blockchain'in merkezi sözü olduğunu ve bir istismarı tersine çevirmek için müdahale etmenin tehlikeli bir emsal oluşturduğunu savunarak fork'u reddetti. Madencilik yapmaya ve orijinal zinciri kullanmaya devam ettiler. O zincir Ethereum Classic (ETC) oldu. Forklanan zincir — geri ödeme yapan — Ethereum (ETH) adını ve Ethereum Foundation desteğini korudu.

Birden çok soruşturmacı iddiaya rağmen kimliği resmi olarak onaylanmamış saldırgan, geri ödeme yapmamış olan Ethereum Classic zincirinde boşaltılan ETH ile kaldı. Fork ETC'deki istismarı geri almadı; sadece etkilenen DAO token sahiplerini ETH'de tatmin etti.

Kim dahildi

  • The DAO katkıcıları ve slock.it. The DAO'yu inşa eden ve pazarlayan ekip. Zincir üstü saldırganlar değildiler, ama hata kodlarındaydı.
  • Vitalik Buterin ve Ethereum Foundation. En çok sayıda kullanıcıyı koruyan yanıt olarak hard fork'u savundu. Kamuya açık duruşları Ethereum zinciri için yönü fiilen belirledi.
  • Saldırgan. Kimliği resmi olarak onaylanmamış. Forbes'taki 2022 soruşturma makalesi belirli bir kişiyi şüpheli saldırgan olarak adlandırdı, ancak iddia tartışmalıdır ve cezai mahkumiyet olmamıştır.
  • Ethereum Classic olan azınlık. Tek bir geri kazanımdan daha önemli olan değişmezlik gerekçesiyle fork'u reddeden bir madenci, geliştirici ve kullanıcı grubu. Ethereum Classic'i ayrı bir zincir olarak inşa eden ve sürdüren geliştiricileri içerirler.
  • DAO token sahipleri. Yaklaşık 11.000 cüzdan DAO token tuttu. Hard fork'tan sonra orijinal ETH'lerini ETH'deki geri ödeme sözleşmesinden çekebildiler.

Sonrası: iki zincir, bir kelime hazinesi ve bir araştırma alanı

DAO hack'inin etkisi Haziran 2016'yı çok aştı.

  • İki zincir. Ethereum (ETH) ve Ethereum Classic (ETC) ikisi de 2016'dan beri çalışmaya devam etti. Değerlemeleri ve ekosistemleri dramatik şekilde ayrıştı — Ethereum 2026'da piyasa değeri açısından yüzlerce kat daha büyük — ama Ethereum Classic katı değişmezlikte devam eden bir deney olarak hâlâ var.
  • Bir akıllı sözleşme güvenlik alanı. Bir hata sınıfı olarak reentrancy, akıllı sözleşme güvenlik eğitiminde temel bir örnek haline geldi. OpenZeppelin'in sözleşme örüntüleri, Solidity dilinin reentrancy koruyucuları, resmi doğrulama araçları ve bug bounty uygulaması hepsi kavramsal olarak DAO olayına dayanır.
  • Değişmezlik tartışması. Hard fork, örtük olanı açıkça yaptı: yeterli ölçekte, Ethereum topluluğu zinciri zincir dışı düşüncelere yanıt olarak değiştirebilir ve değiştirirdi. Bu perspektife göre ya bir özelliktir (ağ felaketlerden kurtulabilir) ya da bir hatadır (ağ aslında değişmez değildir).
  • SEC DAO Raporu (Temmuz 2017). ABD Menkul Kıymetler ve Borsa Komisyonu, DAO token'ların Howey Testi kapsamında menkul kıymet olduğu sonucuna varan Section 21(a) Raporu yayımladı. Bu rapor 2017 ICO balonu için düzenleyici çerçeveyi fiilen tanımladı.
  • Sonraki zincir üstü yönetişim deneyleri. Sonraki her zincir üstü organizasyon girişimi — MakerDAO, Compound yönetişimi, OlympusDAO, Gitcoin, modern Optimism Collective — DAO olayının ilk yüzeye çıkardığı değişmez kod, insan yargısı ve paydaş koruması arasındaki aynı gerilimde gezinmek zorunda kaldı.

Dersler

DAO hack'i kriptodaki en çok çalışılmış olaylardan biridir. Dürüst dersler:

  • Akıllı sözleşmeler programlardır ve programların hataları vardır. The DAO çoğu üretim finansal yazılımından daha fazla değer tuttu; küçük bir ekip tarafından zaman baskısı altında yazıldı, denetlendi ama resmi olarak doğrulanmadı. Belirli hata (reentrancy) güvenlik literatüründe tanımlanmıştı; ölçekte bilinen-tehlikeli örüntüler kullanmak kaybı mümkün kılan şeydi.
  • Değişmezlik altyapının bir özelliği değil, topluluğun yaptığı bir seçimdir. Ethereum'un hard fork'u yeterli sonuçta ağın müdahale edeceğini gösterdi. Sonraki zincirler bunu ne kadar katı ele aldıkları konusunda değişti. Ethereum Classic kısmen değişmezliğin müzakere edilemez olduğu pozisyonunu sürdürmek için var.
  • Kurtarma kararları emsaller yaratır. DAO fork'u sonraki krizlerde — hack kurtarmaları, köprü istismarları, stablecoin sabitleme kayıpları — topluluk müdahalesi için bir emsal olarak gösterildi. Bazı zincirler bu emsali reddetti; diğerleri benimsedi; neredeyse hepsi bunun hakkında düşünmek zorunda kaldı.
  • Denetimler gereklidir ama yeterli değildir. The DAO denetlenmişti. Denetçiler bazı endişeleri dile getirmişti. İstismar yine de oldu. Gerçek dünya güvenliği birden çok savunmaya — resmi doğrulama, bug bounty'ler, muhafazakar yükseltme süreçleri, zaman kilitli kontroller — dayanır, tek bir denetime değil.
  • Yönetişim tasarım gerektiren bir katmandır. The DAO'nun token sahibi yönetişimi yeni ve yetersiz şekilde belirtilmişti. Sonraki her ciddi DAO yönetişimi çok daha fazla özenle tasarlamak zorunda kaldı: yeterli sayı, oy ağırlıkları, gecikme süreleri, acil durum prosedürleri. The DAO bu endişeleri somut kılan vaka çalışmasıdır.

DAO hack'inin kanıtlamadığı şey hakkında net olmakta fayda var. Tüm akıllı sözleşmelerin güvensiz olduğunu veya zincir üstü organizasyonların çalışamayacağını kanıtlamaz. Büyük değer tutan akıllı sözleşmelerin üretim finansal yazılım ciddiyetiyle tasarlanması ve denetlenmesi gerektiğini — ve daha geniş topluluğun, işler ters gittiğinde ne yapacağını önceden düşünmüş olması gerektiğini — kanıtlar.

Akıllı sözleşme olaylarının bir sonraki nerede başlayacağını izleyin

Akıllı sözleşme olayları her döngüde devam ediyor — köprü istismarları, borç verme protokolü boşaltmaları, yönetişim saldırıları. Örüntüler — bilinen-tehlikeli kod yolları, zaman baskılı dağıtımlar, tartışmalı yanıt — tekrar ediyor. Zippfeed, DeFi ve akıllı sözleşme güvenlik manşetlerini birçok kaynaktan sentiment ve önem skorlarıyla takip eder; böylece olayları ve yanıtları açıldıkça izleyebilir ve maruziyet kayba dönüşmeden önce onlardan öğrenebilirsiniz. Bu eğitim amaçlıdır, yatırım tavsiyesi değildir.

Sıkça sorulan sorular

The DAO neydi?
The DAO, Nisan 2016'da lanse edilen yüksek profilli bir Ethereum tabanlı merkeziyetsiz özerk kuruluştu. Açık bir token satışı aracılığıyla yaklaşık 11,5 milyon ETH — o zaman yaklaşık 150 milyon dolar — topladı. Token sahiplerinin hangi projelerin finanse edileceğine oy vermesi amaçlanmıştı. Akıllı sözleşmedeki bir reentrancy hatası, bir saldırganın Haziran 2016'da yaklaşık 3,6 milyon ETH'yi boşaltmasına izin verdi.
DAO hack'i nasıl çalıştı?
Saldırgan, The DAO'nun split işlevindeki bir reentrancy güvenlik açığından yararlandı. İşlev, saldırganın dahili bakiyesini güncellemeden önce saldırgana ETH göndermek için harici bir çağrı yapıyordu. Saldırganın sözleşmesi, harici çağrıyı split işlevini özyinelemeli olarak yeniden çağırmak için kullandı ve aynı bakiyeye karşı tekrarlanan çekimler yaptı. Topluluk yanıtından önce yaklaşık 3,6 milyon ETH saldırganın kontrolündeki alt DAO'ya boşaltıldı.
Ethereum DAO hack'inden sonra neden hard fork etti?
Ethereum topluluğu, vakıf ve madencilerin çoğunluğu önderliğinde, boşaltılan ETH'yi bir geri ödeme sözleşmesine taşımak için 20 Temmuz 2016'da zinciri hard fork etmeye oy verdi; DAO token sahiplerinin orijinal ETH'lerini geri kazanmasına izin verildi. Argüman, saldırganın 50M dolarlık kullanıcı fonu tutmasına izin vermenin kabul edilemez olduğuydu. Bir azınlık, değişmezliğin bir blockchain'in merkezi sözü olduğunu ve müdahale etmenin tehlikeli bir emsal oluşturacağını savunarak karşı çıktı.
Ethereum Classic nedir?
Ethereum Classic (ETC), Temmuz 2016 hard fork'undan sonra orijinal Ethereum zincirinin devamıdır. Değişmezliğin tek bir kurtarımdan daha önemli olduğunu savunarak hard fork'u prensip olarak reddeden madenciler, geliştiriciler ve kullanıcılar tarafından sürdürüldü. ETC'de DAO hack'i geri çevrilmedi — saldırgan boşaltılan ETH'yi o zincirde tuttu. ETC hâlâ ayrı, çok daha küçük bir ağ olarak çalışıyor.
İlgili tokenler
$ETH